이 문서에서는 캠퍼스 네트워크에서 쉽게 구성할 수 있는 가상화 메커니즘을 제공하도록 설계된 EVN(Easy Virtual Network) 기능에 대해 설명합니다. VRF-Lite(Virtual Routing and Forwarding-Lite) 및 dot1q 캡슐화와 같은 최신 기술을 활용하며 새로운 프로토콜을 도입하지 않습니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서의 정보는 다음 하드웨어 및 소프트웨어 버전을 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
다음은 EVN 기능의 개요입니다.
EVN 기능을 구성하려면 이 섹션에 설명된 정보를 사용합니다.
이 네트워크 설정은 EVN 컨피그레이션을 설명하고 명령을 표시하는 데 사용됩니다.
이 설정에 대한 몇 가지 중요한 참고 사항은 다음과 같습니다.
EVN 기능을 구성하려면 다음 단계를 완료합니다.
vrf definition [name]이 구성에 대한 몇 가지 중요한 참고 사항은 다음과 같습니다.
vnet tag [2-4094]
!
address-family ipv4|ipv6
exit-address-family
!
vrf definition CUST-A이러한 VRF에 대해 모든 라우터에서 동일한 VNET 태그를 사용합니다. CORE-4에서 VRF COM에는 VNET 태그가 필요하지 않습니다. 목표는 CUST-A 및 CUST-B에서 공통 서버에 액세스할 수 있도록 VRF를 CORE-4에 로컬로 유지하고 누출 및 재배포를 구성하는 것입니다.
vnet tag 100
!
address-family ipv4
exit-address-family
vrf definition CUST-B
vnet tag 200
!
address-family ipv4
exit-address-family
CORE-1#show vnet counters
Maximum number of VNETs supported: 32
Current number of VNETs configured: 2
Current number of VNET trunk interfaces: 2
Current number of VNET subinterfaces: 4
Current number of VNET forwarding interfaces: 6
CORE-1#
interface GigabitEthernetx/x이 구성에 대한 몇 가지 중요한 참고 사항은 다음과 같습니다.
vnet trunk
ip address x.x.x.x y.y.y.y
...
CORE-1#show run | s Ethernet0/0파생된 컨피그레이션은 다음과 같습니다.
interface Ethernet0/0
vnet trunk
ip address 192.168.1.1 255.255.255.252
!
CORE-1#
CORE-1#show derived-config | s Ethernet0/0표시된 대로 모든 하위 인터페이스는 기본 인터페이스의 IP 주소를 상속합니다.
interface Ethernet0/0
vnet trunk
ip address 192.168.1.1 255.255.255.252
Interface Ethernet0/0.100
description Subinterface for VNET CUST-A
encapsulation dot1Q 100
vrf forwarding CUST-A
ip address 192.168.1.1 255.255.255.252
interface Ethernet0/0.200
description Subinterface for VNET CUST-B
encapsulation dot1Q 200
vrf forwarding CUST-B
ip address 192.168.1.1 255.255.255.252
CORE-1#
interface GigabitEthernet x/x.y이 설정을 통해 구성은 CORE-1 및 CORE-4에 적용됩니다. 다음은 CORE-4의 예입니다.
vrf forwarding [name]
ip address x.x.x.x y.y.y.y
...
interface Ethernet2/0
vrf forwarding CUST-A
ip address 10.1.2.1 255.255.255.0
!
interface Ethernet3/0
vrf forwarding CUST-B
ip address 10.2.2.1 255.255.255.0
!
interface Ethernet4/0
vrf forwarding COM
ip address 100.1.1.1 255.255.255.0
router ospf x vrf [name]
network x.x.x.x y.y.y.y area x
...
CORE-1#show run | s router os각 명령에서 VRF 사양 없이 특정 VRF와 관련된 정보를 보려면 라우팅 컨텍스트 모드를 시작할 수 있습니다.
router ospf 1 vrf CUST-A
network 10.1.1.0 0.0.0.255 area 0
network 192.168.1.0 0.0.0.255 area 0
router ospf 2 vrf CUST-B
network 10.2.1.0 0.0.0.255 area 0
network 192.168.1.0 0.0.0.255 area 0
CORE-1#
CORE-1#routing-context vrf CUST-A
CORE-1%CUST-A#
CORE-1%CUST-A#show ip protocols
*** IP Routing is NSF aware ***
Routing Protocol is "ospf 1"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Router ID 192.168.1.13
It is an area border router
Number of areas in this router is 1. 1 normal 0 stub 0 nssa
Maximum path: 4
Routing for Networks:
10.1.1.0 0.0.0.255 area 0
192.168.1.0 0.0.0.255 area 0
Routing Information Sources:
Gateway Distance Last Update
192.168.1.9 110 1d00h
192.168.1.14 110 1d00h
Distance: (default is 110)
CORE-1%CUST-A#
CORE-1%CUST-A#show ip os neighbor
Neighbor ID Pri State Dead Time Address Interface
192.168.1.14 1 FULL/DR 00:00:30 192.168.1.14 Ethernet1/0.100
192.168.1.5 1 FULL/BDR 00:00:37 192.168.1.2 Ethernet0/0.100
10.1.1.2 1 FULL/BDR 00:00:33 10.1.1.2 Ethernet2/0
CORE-1%CUST-A#
CORE-1%CUST-A#show ip route 10.1.2.0
Routing Table: CUST-A
Routing entry for 10.1.2.0/24
Known via "ospf 1", distance 110, metric 30, type intra area
Last update from 192.168.1.2 on Ethernet0/0.100, 1d00h ago
Routing Descriptor Blocks:
* 192.168.1.14, from 192.168.1.9, 1d00h ago, via Ethernet1/0.100
Route metric is 30, traffic share count is 1
192.168.1.2, from 192.168.1.9, 1d00h ago, via Ethernet0/0.100
Route metric is 30, traffic share count is 1
CORE-1%CUST-A#
CORE-1%CUST-A#routing-context vrf CUST-B
CORE-1%CUST-B#
CORE-1%CUST-B#show ip route 10.2.2.0
Routing Table: CUST-B
Routing entry for 10.2.2.0/24
Known via "ospf 2", distance 110, metric 30, type intra area
Last update from 192.168.1.2 on Ethernet0/0.200, 1d00h ago
Routing Descriptor Blocks:
* 192.168.1.14, from 192.168.1.6, 1d00h ago, via Ethernet1/0.200
Route metric is 30, traffic share count is 1
192.168.1.2, from 192.168.1.6, 1d00h ago, via Ethernet0/0.200
Route metric is 30, traffic share count is 1
CORE-1%CUST-B#
CORE-1%CUST-B#exit
CORE-1#
CORE-1#
vrf definition VRF-X이 구성에 대한 몇 가지 중요한 참고 사항은 다음과 같습니다.
address-family ipv4|ipv6
route-replicate from vrf VRF-Y unicast|multicast
[route-origin] [route-map [name]]
vrf definition CUST-A이때 복제된 경로는 IGP(Interior Gateway Protocol)에서 전파되지 않으므로 CE-A-2 및 CE-B-2만 CE-A-1 및 CE-B-1이 아니라 COM 서비스(100.1.1.100)에 액세스할 수 있습니다.
address-family ipv4
route-replicate from vrf COM unicast connected
!
vrf definition CUST-B
address-family ipv4
route-replicate from vrf COM unicast connected
!
vrf definition COM
address-family ipv4
route-replicate from vrf CUST-A unicast ospf 1 route-map USERS
route-replicate from vrf CUST-B unicast ospf 2 route-map USERS
!
route-map USERS permit 10
match ip address prefix-list USER-SUBNETS
!
ip prefix-list USER-SUBNETS seq 5 permit 10.0.0.0/8 le 32
CORE-4#show ip route vrf CUST-A
Routing Table: COM
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area,* - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
...
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
O 10.1.1.0/24 [110/30] via 192.168.1.10, 3d19h, Ethernet1/0.100
[110/30] via 192.168.1.5, 3d19h, Ethernet0/0.100
100.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C + 100.1.1.0/24 is directly connected (COM), Ethernet4/0
CORE-4#show ip route vrf CUST-B
... 10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
O 10.2.1.0/24 [110/30] via 192.168.1.10, 1d00h, Ethernet1/0.200
[110/30] via 192.168.1.5, 1d00h, Ethernet0/0.200
100.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C + 100.1.1.0/24 is directly connected (COM), Ethernet4/0
CORE-4#show ip route vrf COM
...
10.0.0.0/24 is subnetted, 2 subnets
O + 10.1.1.0 [110/30] via 192.168.1.10 (CUST-A), 3d19h, Ethernet1/0.100
[110/30] via 192.168.1.5 (CUST-A), 3d19h, Ethernet0/0.100
O + 10.2.1.0 [110/30] via 192.168.1.10 (CUST-B), 1d00h, Ethernet1/0.200
[110/30] via 192.168.1.5 (CUST-B), 1d00h, Ethernet0/0.200
100.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 100.1.1.0/24 is directly connected, Ethernet4/0
vrf definition VRF-X
address-family ipv4
route-replicate from vrf >global unicast|multicast [route-origin]
[route-map [name]]
exit-address-family
!
exit
!
global-address-family ipv4 unicast
route-replicate from vrf [vrf-name] unicast|multicast [route-origin]
[route-map [name]]
router ospf x vrf VRF-XVRF-Y에서 유출된 경로는 VRF-X에서 실행되는 OSPF 프로세스에서 재배포됩니다. 다음은 CORE-4의 예입니다.
redistribute vrf VRF-Y [route-origin] [route-map [name]]
router ospf 1 vrf CUST-AVRF COM에는 연결된 경로가 하나만 있으므로 경로 맵이 필요하지 않습니다. 이제 CE-A-1 및 CE-B-1에서 COM 서비스(100.1.1.100)에 연결할 수 있습니다.
redistribute vrf COM connected subnets route-map CON-2-OSPF
!
route-map CON-2-OSPF permit 10
match ip address prefix-list COM
!
ip prefix-list COM seq 5 permit 100.1.1.0/24
CE-A-1#ping 100.1.1.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 100.1.1.100, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
CE-A-1#
CE-B-1#ping 100.1.1.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 100.1.1.100, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
CE-B-1#
이 섹션에서는 VNET 트렁크를 조정하기 위해 사용할 수 있는 정보를 제공합니다.
기본적으로 VNET 태그로 구성된 모든 VRF는 모든 VNET 트렁크에서 허용됩니다. 트렁크 목록을 사용하면 VNET 트렁크에서 인증된 VRF 목록을 지정할 수 있습니다.
vrf list [list-name]
member [vrf-name]
!
interface GigabitEthernetx/x
vnet trunk list [list-name]
예를 들어 CORE-1은 VNET 트렁크에서 CORE-1과 CORE-2 사이의 VRF CUST-B에 맞게 조정됩니다.
vrf list TEST
member CUST-A
!
interface ethernet0/0
vnet trunk list TEST
표시된 것처럼 트렁크 전체에서 VRF CUST-B에 대한 OSPF 피어링이 다운됩니다.
%OSPF-5-ADJCHG: Process 2, Nbr 192.168.1.2 on Ethernet0/0.200 from FULL to DOWN,
Neighbor Down: Interface down or detached
VRF CUST-B의 하위 인터페이스가 제거됩니다.
CORE-1#show derived-config | b Ethernet0/0
interface Ethernet0/0
vnet trunk list TEST
ip address 192.168.1.1 255.255.255.252
!
interface Ethernet0/0.100
description Subinterface for VNET CUST-A
encapsulation dot1Q 100
vrf forwarding CUST-A
ip address 192.168.1.1 255.255.255.252
!
기본적으로 dot1q 하위 인터페이스는 물리적 인터페이스의 매개변수를 상속하므로 모든 VRF의 하위 인터페이스에는 동일한 특성(예: 비용 및 인증)이 있습니다. VNET 태그별로 트렁크 매개변수를 조정할 수 있습니다.
interface GigaEthernetx/x
vnet trunk
vnet name VRF-X
ip ospf cost 100
vnet name VRF-Y
ip ospf cost 15
다음 매개변수를 조정할 수 있습니다.
CORE-1(config-if-vnet)#?
Interface VNET instance override configuration commands:
bandwidth Set bandwidth informational parameter
default Set a command to its defaults
delay Specify interface throughput delay
exit-if-vnet Exit from VNET submode
ip Interface VNET submode Internet Protocol config commands
no Negate a command or set its defaults
vnet Configure protocol-independent VNET interface options
CORE-1(config-if-vnet)#
CORE-1(config-if-vnet)#ip ?
authentication authentication subcommands
bandwidth-percent Set EIGRP bandwidth limit
dampening-change Percent interface metric must change to cause update
dampening-interval Time in seconds to check interface metrics
hello-interval Configures EIGRP-IPv4 hello interval
hold-time Configures EIGRP-IPv4 hold time
igmp IGMP interface commands
mfib Interface Specific MFIB Control
multicast IP multicast interface commands
next-hop-self Configures EIGRP-IPv4 next-hop-self
ospf OSPF interface commands
pim PIM interface commands
split-horizon Perform split horizon
summary-address Perform address summarization
verify Enable per packet validation
CORE-1(config-if-vnet)#ip
이 예에서는 CORE-1의 VRF당 OSPF 비용이 변경되므로 CUST-A와 CUST-B의 CORE-3 경로에 CORE-2 경로가 사용됩니다(기본 비용은 10).
interface Ethernet0/0
vnet name CUST-A
ip ospf cost 8
!
vnet name CUST-B
ip ospf cost 12
!
CORE-1#show ip route vrf CUST-A 10.1.2.0
Routing Table: CUST-A
Routing entry for 10.1.2.0/24
Known via "ospf 1", distance 110, metric 28, type intra area
Last update from 192.168.1.2 on Ethernet0/0.100, 00:05:42 ago
Routing Descriptor Blocks:
* 192.168.1.2, from 192.168.1.9, 00:05:42 ago, via Ethernet0/0.100
Route metric is 28, traffic share count is 1
CORE-1#
CORE-1#show ip route vrf CUST-B 10.2.2.0
Routing Table: CUST-B
Routing entry for 10.2.2.0/24
Known via "ospf 2", distance 110, metric 30, type intra area
Last update from 192.168.1.14 on Ethernet1/0.200, 00:07:03 ago
Routing Descriptor Blocks:
* 192.168.1.14, from 192.168.1.6, 1d18h ago, via Ethernet1/0.200
Route metric is 30, traffic share count is 1
CORE-1#
기본적으로 VRF 정의에 정의된 VNET 태그는 모든 트렁크에 사용됩니다. 그러나 트렁크당 다른 VNET 태그를 사용할 수 있습니다.
이 예에서는 EVN 지원 디바이스가 아닌 디바이스에 연결되어 있고 수동 트렁크와 함께 VRF-Lite를 사용하며, 다른 VLAN에서 전역 VNET 태그를 사용하는 시나리오를 설명합니다.
이 설정을 사용하면 CUST-A용 CORE-1과 CORE-2 간 트렁크에서 사용되는 VNET 태그가 100에서 101으로 변경됩니다.
interface Ethernet0/0
vnet name CUST-A
vnet tag 101
CORE-1에서 이 변경 사항이 발생하면 새 하위 인터페이스가 생성됩니다.
CORE-1#show derived-config | b Ethernet0/0
interface Ethernet0/0
vnet trunk
ip address 192.168.1.1 255.255.255.252
!
interface Ethernet0/0.101
description Subinterface for VNET CUST-A
encapsulation dot1Q 101
vrf forwarding CUST-A
ip address 192.168.1.1 255.255.255.252
!
interface Ethernet0/0.200
description Subinterface for VNET CUST-B
encapsulation dot1Q 200
vrf forwarding CUST-B
ip address 192.168.1.1 255.255.255.252
이 변경이 한 쪽 끝에서만 발생하는 경우 연결된 VRF에서 연결이 끊어지고 OSPF가 다운됩니다.
%OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Ethernet0/0.101 from FULL to DOWN,
Neighbor Down: Dead timer expired
CORE-2에서 동일한 VNET 태그를 사용하면 연결이 복원되고 해당 트렁크에서 dot1q 태그 101이 사용되지만 100은 CORE-1에서 CORE-3 트렁크에서 계속 사용됩니다.
%OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Ethernet0/0.101 from LOADING to
FULL, Loading Done
현재 이 구성에 대해 사용 가능한 확인 절차가 없습니다.
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
04-Aug-2014 |
최초 릴리스 |