AOS-CX CLI 명령어 (2)

지난 포스팅에 이어서 이번에는 좀 더 심화된 내용을 다뤄볼까 합니다.
실제로 필드에서 네트워크를 운영함에 있어 필요한 기능을 구성하기 위한 명령어들을 알아보겠습니다.


VLAN 구성

AOS-CX에서 VLAN과 VLAN 인터페이스를 생성하고 구성하는 방법은 아래와 같습니다.
단일 VLAN을 구성할 수도 있지만, Range 명령어를 사용하면 여러 개의 VLAN을 간단하게 생성하고 할당할 수 있습니다.

단일 VLAN 생성
switch(config)# vlan 10
switch(config-vlan-10)#

VLAN은 생성되었지만 인터페이스에 할당되지는 않은 것을 확인할 수 있습니다.

switch(config)# show vlan 10
------------------------------------------------------------------
VLAN  Name              Status  Reason       Type      Interfaces
------------------------------------------------------------------
10    VLAN10              up      ok        static 
switch(config)#
여러 VLAN 생성
switch(config)# vlan 70-75
switch(config-vlan-<70-75>)#

역시 VLAN 70부터 VLAN 75까지 생성된 것을 확인할 수 있지만, 인터페이스는 할당되지 않았습니다.

switch(config)# show vlan 
---------------------------------------------------------
VLAN  Name          Status  Reason       Type     Interfaces
---------------------------------------------------------
 70   VLAN70          up      ok        static 
 71   VLAN71          up      ok        static
 72   VLAN72          up      ok        static
 73   VLAN73          up      ok        static
 74   VLAN74          up      ok        static
 75   VLAN75          up      ok        static 
switch(config)#
특정 인터페이스에 VLAN 할당
switch(config)# int 1/1/1
switch(config-if)# vlan access 10
switch# show vlan 10
-------------------------------------------------------------------------------------
VLAN  Name      Status  Reason        Type        Interfaces
-------------------------------------------------------------------------------------
10     vlan     up      ok            default     1/1/1

인터페이스 구성

AOS-CX는 Layer 2 인터페이스에 대한 다양한 구성 옵션을 지원합니다.
모든 옵션을 보려면 ? 명령을 사용하여 확인할 수 있습니다.

switch(config-if)# int 1/1/1 ?
  aaa                       Configure Authentication, Authorization and Accounting feature
  app-recognition   	      Configure application recognition parameters
  apply                     Apply a configuration record
  arp                       Configure ARP commands
 energy-efficient-ethernet  Enable Energy-Efficient Ethernet
 port-access                Configure Port Based Network Access.
 portfilter                 Block traffic received on this interface from forwarding to some ports
 power-over-ethernet        Configure Power over Ethernet (PoE)
…
 routing                    Configure interface as L3
 sflow                      Enable sFlow
 show                       Show running system information
 shutdown                   Disable the interface
 spanning-tree              Show Spanning-tree configuration
 speed                      Configure interface speed, duplex, and

 …
 vlan                       VLAN configuration
 vrf                        VRF Configuration
 vrrp                       VRRP information
L3 인터페이스 구성

인터페이스에 L3 라우팅 서비스를 지원하는 ROP(Routed Only Ports)를 설정할 수 있습니다.
아래 예제는 1/1/1 인터페이스를 L3 인터페이스로 설정하고, 10.10.20.209/24 IP주소OSPF를 구성하는 방법입니다.

switch# config
switch(config)# interface 1/1/1
switch(config-if)# routing
switch(config-if)# ip address 10.10.20.209/24
switch(config-if)# ip mtu 9198
switch(config-if)# ip ospf 1 area 0.0.0.0
switch(config-if)# ip ospf network point-to-point
소스 인터페이스 구성

Source IP주소는 일반적으로 라우팅 테이블에서 송신 인터페이스의 IP주소로 시스템에 의해 결정됩니다.
하지만, 라우팅 스위치에는 여러 라우팅 인터페이스가 있을 수 있고, 발신 패킷은 서로 다른 시간에 서로 다른 경로로 전송될 수 있습니다.
이 때 Source IP주소는 달라지게 됩니다.

AOS-CX는 서비스 유형에 따라 특정 소스 인터페이스를 정의할 수 있는 기능을 지원합니다.

switch(config)# ip source-interface ?
  all         All protocols
  central     Aruba Central protocol
  dhcp_relay  DHCP_RELAY protocol
  dns         DNS protocol
  http        HTTP protocol
  ntp         NTP protocol
  ptp         PTP protocol
  radius      RADIUS protocol
  sflow       sFlow protocol
  sftp-scp    SFTP and SCP protocols
  ssh-client  SSH Client protocol
  syslog      syslog protocol
  tacacs      TACACS protocol
  tftp        TFTP protocol
  ubt         UBT

아래는 TFTP 프로토콜을 사용하기 위해서 특정 인터페이스 또는 특정 VRF(green)의 소스 인터페이스를 설정하는 예제입니다.

switch(config)# ip source-interface tftp interface 1/1/1
switch(config)# ip source-interface tftp interface 1/1/2 vrf green

기본 네트워크 서비스 구성

NTP(Network Time Protocol) 구성

AOS-CX는 모든 CX 제품군에서 NTP를 지원합니다.
NTP 서버는 IP 주소 또는 DNS 이름으로 정의할 수 있습니다. 또한 NTP는 인증, 버스트/버스트 및 VRF별 구성을 지원합니다.

switch(config)# ntp server pool.ntp.org 4 minpoll 4 iburst

Enable NTP server
switch(config)# ntp enable

만약, 모든 NTP 트래픽에 대해서 mgmt VRF를 통해서 흐르도록 구성하려면 다음과 같습니다.

switch(config)# ntp vrf mgmt

NTP 구성 정보와 상태를 확인하기 위해서는 아래와 같이 show 명령어를 사용합니다.

switch(config)# show ntp associations
--------------------------------------------------------
 ID     NAME         REMOTE          REF-ID ST LAST POLL REACH
---------------------------------------------------------
* 1 lithium.consta 108.61.56.35 192.5.41.40  2   17   16     3
--------------------------------------------------------------
switch(config)# show ntp servers
------------------------------------------------
  NTP SERVER KEYID MINPOLL MAXPOLL OPTION VER
------------------------------------------------
  pool.ntp.org --     4     4      iburst 4
switch(config)# show ntp status
NTP Status Information
NTP                        : Enabled
NTP DHCP                   : Enabled
NTP Authentication         : Disabled
NTP Server Connections     : Using the default VRF
System time                : Wed Aug  7 23:20:10 UTC 2024
NTP uptime                 : 6 minutes, 2 seconds
NTP Synchronization Information
NTP Server                 : lithium.constan at stratum 2
Poll interval              : 16 seconds
DNS 구성

AOS-CX는 VRF별 DNS 구성을 지원하며 각 VRF당 설정 가능한 수는 다음과 같습니다.

  • 최대 3개의 네임 서버
  • VRF당 최대 6개의 도메인 이름
  • 최대 6개의 호스트 이름
switch(config)# ip dns domain-name switch.com
switch(config)# ip dns server-address 1.1.1.1

AOS-CX는 고정 IP 주소를 호스트 네임과 연결하는 기능도 지원합니다.
DNS 클라이언트는 DNS 서버를 쿼리하는 대신 이 IP 주소를 반환합니다. VRF당 최대 6개의 호스트를 정의할 수 있습니다.

switch(config)# ip dns host myhost1 3.3.3.3

구성한 정보는 show 명령어로 확인 가능합니다.

switch# show ip dns
VRF Name : vrf_mgmt
Host Name Address
--------------------------------------------------------------------------
VRF Name : vrf_default
Domain Name : switch.com
DNS Domain list :
Name Server(s) : 1.1.1.1

Host Name				Address
--------------------------------------------------------------------------
Myhost1				3.3.3.3
RADIUS 구성

AOS-CX에는 인증 서비스를 지원하는 네 가지 기본 그룹이 있습니다.

  • tacacs: 원격 AAA의 경우, 항상 구성된 모든 TACACS+ 서버를 포함합니다.
  • radius: 원격 AAA의 경우, 항상 구성된 모든 RADIUS 서버를 포함합니다.
  • local: 로컬 인증용.
  • none: 로컬(RBAC) 인증용.
switch(config)# radius-server ?
  auth-type      Set authentication type. (Default: pap)
  host           Specify a RADIUS server
  key            Set shared secret
  retries        Set the number of retries
  service-type   Service-Type attribute
  status-server  Configure status server parameters
  timeout        Set the transmission timeout interval
  tls            Configure TLS for the RADIUS server
  tracking       Configure RADIUS service tracking parameters
switch(config)# radius-server host 1.1.1.1 vrf mgmt

RADIUS 서버가 여러 개일 경우에는 서버 그룹을 만들어서 호스트를 추가할 수 있습니다.

switch(config)# aaa group server radius sg3
switch(config-sg)# server 1.1.1.4 vrf mgmt
배너 구성

사용자가 CLI를 통해 연결할 때 표시되는 배너에는 두 가지 수준이 있습니다.

  • 스위치에 연결하고 비밀번호를 입력하라는 메시지가 표시될 때
  • 사용자가 인증된 후

사용 예시: “IT 부서에서 적절한 사용 규칙을 안내”

switch(config)# banner
  exec  Set the exec (post-login) banner
  motd  Set the message of the day banner

패스워드를 입력하는 화면이 나타나기 전에 접속하는 모든 유저에게 보여주는 배너를 설정하기 위해서 motd 명령어를 사용합니다.
배너 문구의 시작과 끝에 ^ (shift+6) 특수문자를 사용하여 전체 배너 문구를 작성할 수 있습니다.

switch(config)# banner ^
>> This is an example of a banner text which a connecting user
>> will see before they are prompted for their password
>>
>> As you can see it may span multiple lines and the input
>> will be terminated when the delimiter character is
>> encountered. ^
Banner updated successfully!

사용자가 패스워드를 입력하여 인증이 되었을 때 표시되는 문구를 설정하고 싶다면, exec 명령어를 사용합니다.
이 때는 ^ 특수문자 대신 & (shift+7) 특수문자를 사용합니다.

switch(config)# banner exec &
>> this is an example of a different banner text. This
>> time the banner entered will be displayed after a 
>> user has authenticated.
>>
>> &This text will not be included because it comes
>> after the &
Banner updated successfully
DHCP 클라이언트 구성

AOS-CX 액세스 스위치는 VLAN 1과 관리 인터페이스(mgmt)에서 DHCP 클라이언트로 기본 작동하여 연결된 네트워크의 DHCP 서버에서 자동으로 IP 주소를 얻습니다. DHCP 클라이언트는 한 번에 하나의 VLAN 인터페이스에만 구성할 수 있습니다.

인터페이스에 고정 IP 주소가 있고 DHCP 클라이언트가 활성화된 경우 고정 IP주소가 우선됩니다.
SVI에 고정 IP주소가 구성되면 dhcp 구성은 무시됩니다.

switch1(config-if-vlan)# int vlan 1
switch1(config-if-vlan)# show run cur
interface vlan 1
    ip address 10.10.1.100/24
    ip dhcp
        ! ip dhcp is ignored when static ip is configured

만약 VLAN 1이 아닌 다른 VLAN 인터페이스가 DHCP 클라이언트로 동작하고 싶다면, VLAN 1의 dhcp 설정을 비활성화해야 합니다.

switch(config-if-vlan)# int vlan 1
switch(config-if-vlan)# no ip dhcp
switch(config-if-vlan)# int vlan 70
switch(config-if-vlan)# ip dhcp
switch(config-if-vlan)# sho run current
interface vlan 70
    ip dhcp
DHCP Relay Agent 설정

DHCP Relay Agent는 DHCP 서버가 없는 서브넷에 있는 DHCP 클라이언트의 DHCP 메시지를 다른 서브넷으로 전송합니다.
또한 DHCP 서버의 응답을 DHCP 클라이언트로 중계합니다.

DHCP Relay Agent는 Layer 3 인터페이스, Layer 3 VLAN 인터페이스 및 LAG 인터페이스에서 지원됩니다.
관리 인터페이스에서는 DHCP 릴레이가 지원되지 않습니다. DHCP 릴레이 옵션 82가 지원됩니다.

L3 SVI상에서 DHCP 릴레이 구성 방법은 아래와 같습니다.

switch(config)# int vlan 2
switch(config-if-vlan)# ip helper-address 10.10.1.102
switch(config-if-vlan)# sho run cur
interface vlan 2
    ip address 10.10.2.100/24
    ip helper-address 10.10.1.102

LAG(Link Aggregation Group)에서는 아래와 같이 구성합니다.

switch(config)# int lag 20
switch(config-lag-if)# ip helper-address 10.10.1.102
switch(config-lag-if)# sho run cur
interface lag 20
    no shutdown
    routing
    ip helper-address 10.10.1.102
    lacp mode active
DHCP 서버 구성

스위치의 DHCP 서버는 IPv4와 IPv6를 모두 지원하며 각 VRF에서 독립적으로 구성할 수 있습니다.
복수의 주소 풀과 고정 주소 바인딩 역시 지원합니다.

※ 동일한 VRF에 속하는 인터페이스에서 DHCP 서버와 DHCP 릴레이를 모두 활성화할 수 없습니다.

아래 예제는 default VRF에 vlan2라는 이름의 dhcp pool을 만드는 방법입니다.

  • DHCP IP주소 범위: 10.10.2.50 ~ 10.10.2.90 (24비트)
  • 기본 게이트웨이: 10.10.2.250
  • DNS 서버: 208.67.220.220, 208.67.222.222
  • 임대 기간: 영구적
switch(config)# dhcp-server vrf default
switch(config-dhcp-server)# pool vlan2
switch(config-dhcp-server)# range 10.10.2.50 10.10.2.90 prefix-len 24
switch(config-dhcp-server)# default-router 10.10.2.250
switch(config-dhcp-server)# dns-server 208.67.220.220 208.67.222.222
switch(config-dhcp-server)# lease infinite
switch(config-dhcp-server)# exit
switch(config-dhcp)# enable

red라는 특정 VRF에 DHCP 서버를 구성할 수도 있습니다.

switch(config)# dhcp-server vrf red
switch(config-dhcp-server)# pool 60
switch(config-dhcp-server)# range 10.10.60.10 10.10.60.15 prefix-len 24
switch(config-dhcp-server)# default-router 10.10.60.250
switch(config-dhcp-server)# lease infinite
switch(config-dhcp-server)# exit
switch(config-dhcp)# enable

default VRF에 구성된 DHCP 서버 정보는 show 명령어로 확인할 수 있습니다.

switch# sho dhcp-server vrf default

VRF Name           : default
DHCP Server        : enabled
Operational State  : operational
Authoritative Mode : true
Pool Name          : vlan2
Lease Duration     : infinite

DHCP dynamic IP allocation
----------------------------
Start-IP-Address     End-IP-Address        Prefix-Length
-----------------    ---------------      -------------
10.10.2.50            10.10.2.90                 24

DHCP Server options
***************************************************
Option-Number   Option-Type    Option-Value
--------------  ------------    -------------
 3               ip              10.10.2.250
 6               ip              208.67.220.220 208.67.222.222

STP (Spanning Tree Protocol) 구성

AOS-CX는 기본적으로 MSTP를 지원하고, RPVST+ 역시 지원합니다.

MSTP의 성능과 안정성을 향상시키기 위해 AOS-CX는 다음을 지원합니다:

  • admin-edge
  • root-guard
  • tcn-guard
  • bpdu-guard

AOS-CX는 구성된 각 MSTI(인스턴스)에 원하는 우선순위를 적용하여 결정론적 루트 브리지 배치를 지원합니다.

switch(config)# spanning-tree ?
 bpdu-guard        Disable he specific port if the port receives
                    STP BPDUs
 config-name       Set the MST region configuration name
 config-revision   Set the MST region configuration revision number
 extend-system-id  Enables the extended system-id functionality.
 forward-delay     Set the forward delay for the Multiple spanning
                    tree
 hello-time        Set the hello interval for the Multiple
                   spanning tree

다음 예제 그림을 살펴보면서 MSTP 구성을 한 번 해보도록 합시다.

Switch A에는 다음과 같은 구성이 필요합니다.

  • VLAN 10-11, VLAN 20-21 생성
  • VLAN 10-11은 인스턴스 1에 대해 루트(Root)
  • VLAN 20-21은 인스턴스 2에 대해 루트(Root)
  • CIST(Common Internal Spanning Tree)를 위한 루트(Root)
  • 모든 VLAN 트래픽이 1/1/1-1/1/3 인터페이스에서 활성화됨
SwitchA(config)# vlan 10-11,20-21
SwitchA(config-vlan-<10-11,20-21>)# exit
SwitchA(config)# spanning-tree
SwitchA(config)# spanning-tree config-name sp1
SwitchA(config)# spanning-tree config-revision 1
SwitchA(config)# spanning-tree instance 1 vlan 10-11
SwitchA(config)# spanning-tree instance 2 vlan 20-21
SwitchA(config)# spanning-tree priority 0
SwitchA(config)# spanning-tree instance 1 priority 0
SwitchA(config)# spanning-tree instance 2 priority 1
SwitchA(config)# int 1/1/1-1/1/3
SwitchA(config-if-<1/1/1-1/1/3>)# vlan trunk allowed all
SwitchA(config-if-<1/1/1-1/1/3>)# vlan trunk native 1
SwitchA(config-if-<1/1/1-1/1/3>)# exit

MSTP 구성이 잘 되었는지 show 명령어로 확인합니다.

SwitchA(config)# show spanning-tree mst-config
MST configuration information
   MST config ID        : sp1
   MST config revision  : 1
   MST config digest    : 098798F08…39604C10
   Number of instances  : 2

Instance ID     Member VLANs
--------------- ----------------------------------
0               1-9,12-19,22-4094
1               10,11
2               20,21
SwitchA(config)# show spanning-tree summary root
STP status                   : Enabled
Protocol                     : MSTP
System ID                    : 08:00:09:8a:14:fa
Root bridge for STP Instance : 0,1

                               Root Hello Max Fwd
Inst ID  Pri     Root ID       cost  Time Age Dly   Root Port
-------- ----  --------        ---    --- -------  ----- ---
0          0  08:00:09:8a:14:fa   0     2  20  15        0
1          0  08:00:09:8a:14:fa   0     2  20  15        0
2          0  08:00:09:12:8e:9e   20000 2  20  15        1/1/1

AOS-CX는 연결된 스테이션/장치 포트가 학습 및 수신 단계를 거치지 않고 데이터를 전달할 수 있도록 admin-edge를 지원합니다.

SwitchC(config-if)# spanning-tree port-type admin-edge

show 명령어로 결과를 확인합니다.

SwitchC(config-if)# sho spanning-tree mst 1

#### MST1
Vlans mapped:  10,11
Bridge         Address:08:00:09:16:7b:7e    Priority:32768
Root           Address:08:00:09:8a:14:fa    Priority:0
               Port:1/1/2, Cost:20000, Rem Hops:19

Port    Role      State     Cost    Pri   Type
-------------- -------------- ---------- ---------- ---------- 1/1/2   Root      Forwarding 20000   128  P2P   5  2228 4    7
1/1/3   Alternate Blocking   20000      128        P2P    12         1/1/9   Designated     Forwarding 20000      128        P2P Edge         2228       0          0          0

AOS-CX는 스푸핑된 BPDU 및 rouge 디바이스로부터 스패닝 트리를 보호하기 위해 BPDU 가드 및 루트 가드를 지원합니다.

아래 예제는 BPDU를 전송하는 스위치가 연결된 Switch D의 1/1/8 인터페이스에 BPDU 가드를 설정하는 방법입니다.

SwitchD(config)# int 1/1/8
SwitchD(config-if)# no shut
SwitchD(config-if)# vlan access 10
SwitchD(config-if)# spanning-tree bpdu-guard

인터페이스 1/1/8은 수신된 BPDU 때문에 비활성화 됩니다.

SwitchD(config)# show spanning-tree mst 1

Port           Role         State      Cost 
---------- -------------- ---------- ----------
1/1/8         Disabled    Bpdu-Error  20000 

OSPF 구성

AOS-CX는 OSPFv2(기본값) 및 OSPFv3를 지원합니다.

Open Shortest Path First version 2(OSPFv2)는 RFC2328에 설명된 라우팅 프로토콜입니다.
각 라우팅 스위치의 라우팅 구성에 의해 식별된 OSPF 영역으로 그룹화된 라우터에 적용되는 Link State 기반 IGP(내부 게이트웨이 프로토콜) 라우팅 프로토콜입니다. 중대형 엔터프라이즈 네트워크에서 널리 사용됩니다.

각 CX 스위치는 모델에 따라 서로 다른 OSPF 테이블 크기를 갖습니다.

6300-switch(config)# show capacities ospfv2
System Capacities: Filter OSPFv2
Capacities Name                                                                                               Value
--------------------------------------------------------------------------------------------
Maximum number of OSPFv2 areas configurable in the system                128
Maximum number of OSPFv2 interfaces configurable in the system        128
Maximum number of OSPFv2 interfaces per area in the system                128
Maximum number of OSPFv2 neighbors allowed across all VRFs              128
Maximum number of OSPFv2 processes supported across each VRF            8
Maximum number of routes in OSPFv2 supported across all VRFs       64000

OSPF 프로세스 ID를 구성하게 되면, 여러 추가 옵션을 확인할 수 있습니다.

6300-switch(config)# router ospf 1
6300-switch(config-ospf-1)# ?
  active-backbone        Configure active backbone
  area                   Configure OSPF area parameters
  bfd                    BFD configuration commands
  default-information    Generate a default external route into an ospf routing
                         domain
  default-metric         Configure metric of redistributed routes.
  disable                Disable OSPF process
  distance               Configure OSPF administrative distance
  distribute-list        Filter networks in routing updates
  enable                 Enable OSPF process
  end                    End current mode and change to enable mode
  exit                   Exit current mode and change to previous mode
  graceful-restart       Configure graceful-restart for OSPF
  list                   Print command list
  max-metric             Configure to advertise maximum metric
  maximum-paths          Configure maximum number of ECMP routes that OSPF can
                         support
--Abbreviate view

SVI상에 OSPFv2와 loopback 인터페이스를 구성하기 위해서는 아래와 같이 진행해야 합니다.

  1. OSPF 구성: router ospf <PROCESS-ID> [vrf <VRF-NAME>]
  2. 라우터 ID 할당
  3. OSPF 영역 할당
  4. 루프백 주소에 OSPF 프로세스를 할당 (reachability를 위해)
  5. 로컬 및 연결된 경로 재분배

global 컨텍스트에 OSPF 인스턴스를 정의합니다.

switch# config
switch(config)# router ospf 1
switch(config-ospf-1)# router-id 1.1.1.1
switch(config-ospf-1)# area 0.0.0.0
switch(config-ospf-1)# redistribute connected
switch(config-ospf-1)# redistribute local

루프백 인터페이스 생성 및 OSPF 1에 할당합니다.

switch(config)# interface loopback 0
switch(config-loopback-if)# ip address 1.1.1.1/32
switch(config-loopback-if)# ip ospf 1 area 0.0.0.0

SVI에 OSPF를 추가합니다.

switch# config
switch(config)# interface vlan 2
switch(config)# ip address 10.10.2.1/24
switch(config-if)# ip ospf 1 area 0.0.0.0

지금까지 구성한 내용을 확인합니다.

switch(config-if)# show run current-context
Interface vlan 2    
    no shutdown
    no routing
    ip address 10.10.2.1/24
    ip ospf 1 area 0.0.0.0
    exit
P2P 모드에서 ROP에 OSPFv2 구성

기본 모드는 브로드캐스트 모드입니다만, Point-to-Point 모드에서 ROP에 OSPFv2를 구성하는 법은 아래와 같습니다.

우선, L2 포트를 L3 ROP로 변경합니다.

switch# config
switch(config)# interface 1/1/22
switch(config-if)# show run current-context
interface 1/1/22
    no shutdown
    no routing
    vlan access 1
switch(config-if)# routing
switch(config-if)# show run current-context
interface 1/1/22
    no shutdown
    routing

변경된 ROP에 OSPF 설정합니다.

switch# config
switch(config)# interface 1/1/22
switch(config-if)# ip address 10.15.0.1/24
switch(config-if)# ip ospf 1 area 0.0.0.0
switch(config-if)# ip ospf network point-to-point

구성된 정보를 확인합니다.

switch(config-if)# show run current-context
interface 1/1/22
    no shutdown
    routing
    ip address 10.15.0.1/24
    ip ospf 1 area 0.0.0.0
    exit
OSPF show 명령어

활성된 OSPF neighbor 확인

switch(config)# sho ip ospf neighbors
VRF : default                          Process : 2
===================================================
Total Number of Neighbors : 1

Neighbor ID    Priority  State   Nbr Address       Interface
---------------------------------------------------------
2.2.2.2        n/a       FULL     192.168.1.1        lag20

OSPF 상태 확인

switch(config)# sho ip ospf
VRF : default                          Process  : 1
----------------------------------------------------
RouterID: 1.1.1.1            OSPFv2: Enabled
BFD: Disabled                SPF Start Interval: 200   ms
SPF Hold Interval: 1000  ms  SPF Max Wait Interval: 5000  ms
LSA Start Time: 5000  ms     LSA Hold Time: 0     ms
….
Area  : 0.0.0.0
----------------
Area Type: Normal         Status  : Active
Total Interfaces: 1       Active Interfaces: 1

OSPF 인터페이스 요약 보기

switch(config)# sho ip ospf interface brief
OSPF Process ID 1 VRF default
==============================
Total Number of Interfaces: 3
Flags: P - Passive  A - Active
Interface  Area   IP Addr/Mask      Cost State Status  Flags
---------------------------------------------------------------
lag20     1.1.1.1 192.168.1.2/30    50  Pt-Pt     Up      A
loopback5 1.1.1.1  3.3.3.3/32        0  Loopback  Up      A
vlan70    1.1.1.1  10.10.70.1/24    100    DR     Up      A

IP 라우팅 테이블에서 OSPF 라우팅 확인

switch(config)# sho ip route ospf

Displaying ipv4 routes selected for forwarding
VRF: default
Prefix      Nexthop  Interface VRF(egress) Origin/ Distance/   Age                                                                                                                                                    T                                            Type  Metric
-------------------------------------------------------------------
0.0.0.0/0     10.10.1.250 vlan1    -        O/E2    [110/10]   02d:23h:51m
1.1.1.1/32    10.10.1.250 vlan1    -        O/E2    [110/10]   02d:23h:51m
10.10.56.0/24 10.10.1.250 vlan1    -        O/E2    [110/10]   02d:23h:51m
10.10.98.0/24 10.10.1.250 vlan1    -        O/E2    [110/10]   02d:23h:51m
10.10.222.0/24      10.10.1.250                              vlan1         -
Total Route Count : 5

LAG (Link Aggregation Group)

AOS-CX는 L2/L3 LAG를 모두 지원하고, 기본적으로 LAG는 Static입니다.
CX 운영체제는 LAG가 미스매치로 error 또는 down 상태이더라도 하나의 멤버 포트로 데이터가 전달될 수 있도록 하는 LACP Active/Passive mode와 LACP fallback-static mode 모두를 지원합니다.

Static L2 LAG 생성

기본(Native) VLAN 1로 두 개의 멤버를 가진 Static L2 LAG를 만들어보겠습니다.
LAG을 만들 때는 Interface 명령어와 함께 LAG 숫자로 생성할 수 있습니다. (# int lag <1-256>)

switch(config)# int lag 20
switch(config-lag-if)#

생성한 LAG에 VLAN 60과 VLAN 70을 포워딩할 수 있도록 허용하겠습니다.

switch(config-lag-if)# no routing
switch(config-lag-if)# vlan trunk allowed 60,70
switch(config-lag-if)# 

적용한 설정이 제대로 들어갔는지는 show running-config current-context 명령어로 확인 가능합니다.

switch(config-lag-if)# show run current
interface lag 20
    no routing
    vlan trunk native 1
    vlan trunk allowed 1,60,70

생성한 LAG에 물리 인터페이스를 추가합니다. 인터페이스를 추가할 때는 range 명령어를 사용하면 편리합니다.

switch(config)# int 1/1/2,1/1/3
switch(config-if-<1/1/2,1/1/3>)# lag 20

각각의 인터페이스에 들어간 설정을 확인해보면, LAG 설정이 들어간 것을 확인할 수 있습니다.

switch(config-if-<1/1/2,1/1/3>)# sho run cur
interface 1/1/2
    lag 20
    exit
interface 1/1/3
    lag 20
    exit
switch(config-if-<1/1/2,1/1/3>)# exit
Switch(config)# 

생성한 LAG의 멤버 포트(인터페이스)에 아무것도 연결되어 있지 않다면, LAG의 상태는 Down으로 보여집니다.

switch(config)# show interface lag 20
 Aggregate lag20 is down
 Admin state is down
 State information : Admin state is down
 Description :
 MAC Address                 : 08:00:09:3f:27:18
 Aggregated-interfaces       : 1/1/2 1/1/3
 Aggregation-key             : 20
 Speed                       : 0 Mb/s
 L3 Counters: Rx Disabled, Tx Disabled
 qos trust none
 VLAN Mode: native-untagged
 Native VLAN: 1
 Allowed VLAN List: 1,60,70

 Statistic     RX                   TX                Total
 ---------------- ------------- -------------       --------
 Packets       0                    0                    0
 Unicast       0                    0                    0
 Multicast     0                    0                    0
 Broadcast     0                    0                    0
 Bytes         0                    0                    0
 Jumbos        0                    0                    0
 Dropped       0                    0                    0
 Pause Frames  0                    0                    0
 Errors        0                    0                    0
   CRC/FCS     0                  n/a                    0
   Collision n/a                    0                    0
   Runts       0                  n/a                    0
   Giants      0                  n/a                    0

LAG 20에 다른 스위치가 연결된다면 아래와 같이 상태가 up으로 표시됩니다.

switch(config-lag-if)# show interface lag 20
 Aggregate lag20 is up
 Admin state is up
 Description :
 MAC Address                 : 08:00:09:21:6c:3b
 Aggregated-interfaces       : 1/1/2 1/1/3
 Aggregation-key             : 20
 Speed                       : 2000 Mb/s
 L3 Counters: Rx Disabled, Tx Disabled
 qos trust none
 VLAN Mode: native-untagged
 Native VLAN: 1
 Allowed VLAN List: 1,60,70

 Statistic     RX                   TX                Total
---------- ------------   ---------------       -----------------
Packets        2                    2                    0
Unicast        0                    0                    0
Multicast      0                    0                    0
Broadcast      0                    0                    0
Bytes        272                  180                    0
Jumbos         0                    0                    0
Dropped        0                    0                    0
Pause Frames   0                    0                    0
Errors         0                    0                    0
CRC/FCS        0                  n/a                    0
  Collision  n/a                    0                    0
  Runts        0                  n/a                    0
  Giants       0                  n/a                    0
LACP Dynamic LAG

AOS-CX는 LACP Active/Passive mode 모두를 지원합니다. 연결된 스위치 중 하나 또는 둘 다 LACP active mode 상태로 있어야 합니다.
Dynamic aggregation은 802.3ad LACP(Link Aggregation Control Protocol)을 통해 구현됩니다.

LACP는 LACPDU(LACP Data Unit)을 사용하여 LACP가 활성화된 장치 간에 aggregation 정보를 교환합니다.
Dynamic aggregation 그룹의 각 멤버 포트는 피어와 정보를 교환할 수 있습니다. 멤버 포트가 LACPDU를 수신하면, 수신한 정보를 다른 멤버 포트에서 수신한 정보와 비교하여 어떤 포트가 어떤 상태에 놓일지 합의하게 됩니다.

다음 명령어 예제를 통해 LACP를 활성화 해보도록 하겠습니다.
먼저 LACP가 비활성화 되어 있는지를 확인해봅니다.

switch(config-lag-if)# sho lacp aggregates
Aggregate name   : lag20
Interfaces       : 1/1/1 1/1/2
Heartbeat rate   : N/A
Hash             : l3-src-dst
Aggregate mode   : Off

LAG 20에 “lacp mode active” 명령어를 사용하여 LACP를 활성화 해보겠습니다.

switch(config)# interface lag 20
switch(config-lag-if)# lacp mode active
switch(config-lag-if)#

다시 한 번 show 명령어를 통해 LACP 상태를 확인해봅니다.

switch(config-lag-if)# show lacp aggregates
Aggregate name   : lag20
Interfaces       : 1/1/1 1/1/2
Heartbeat rate   : N/A
Hash             : l3-src-dst
Aggregate mode   : Active

LACP를 활성화한 후에, 각 멤버 인터페이스의 상태를 확인하여 LACP를 통해 서로 교환한 정보를 볼 수 있습니다.

switch# show lacp interfaces
State abbreviations :
A - Active        P - Passive      F - Aggregable I - Individual
S - Short-timeout L - Long-timeout N - InSync     O - OutofSync
C - Collecting    D - Distributing
X - State m/c expired              E - Default neighbor state

Actor details of all interfaces:
-------------------------------------------------------------------------
Intf    Aggr     Port  Port  State   System-ID       System Aggr Forwarding
        Name      Id    Pri                            Pri   Key  State
-----------------------------------------------------------------------------
1/1/1   lag20      2     1   ALFNCD  88:3a:30:96:5f:80 65534  20   up
1/1/2   lag20      3     1   ALFNCD  88:3a:30:96:5f:80 65534  20   up


Partner details of all interfaces:
----------------------------------------------------------------------------
Intf       Aggr       Port  Port  State   System-ID         System Aggr
           Name       Id    Pri                             Pri    Key
----------------------------------------------------------------------------
1/1/1      lag20      2     1     ALFNCD  88:3a:30:aa:e1:00 65534  20
1/1/2      lag20      3     1     ALFNCD  88:3a:30:aa:e1:00 65534  20
L3 LAG 생성

L3 LAG를 구성할 때는 L2 LAG를 구성할 때와 한 가지 기본적인 차이점이 있습니다.
LAG 인터페이스는 IP주소 (/31 비트)가 할당된 라우팅 모드로 구성되어야 합니다. 또한, 모든 멤버 인터페이스 역시 라우팅 모드에 있어야만 합니다.

아래 예제를 통해 LAG 20을 L3 LAG로 변환해보도록 하겠습니다.
우선, 기존 LAG 20dp 라우팅 모드를 추가합니다.

switch(config-lag-if)# show run current
interface lag 20
    no routing
    vlan trunk native 1
    vlan trunk allowed 1,60,70
switch(config-lag-if)# routing
switch(config-lag-if)# sho run cur
interface lag 20
    no shutdown
    routing
    ip address 192.168.1.1/30
    lacp mode active
switch(config-lag-if)#

각 멤버 인터페이스에 라우팅 설정을 추가한 후에, LAG 20에 할당합니다.

switch(config)# int 1/1/2,1/1/3
switch(config-if-<1/1/2,1/1/3>)# routing
switch(config-if-<1/1/2,1/1/3>)# lag 20

인터페이스의 설정을 확인해보면 아래와 같이 표시됩니다.

switch(config-if-<1/1/2,1/1/3>)# sho run cur
interface 1/1/2
    routing
    lag 20
    exit
interface 1/1/3
    routing
    lag 20
    exit

이번 포스팅에서는 VLAN, 네트워크 서비스, 라우팅 등 인터페이스에 적용되는 명령어에 대해 알아보았습니다.
다음에는 PoE나 백업, 로그 등의 정보를 확인하는 명령어를 알아보겠습니다.

Leave a Reply

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.