예: 가상 스위치 지원으로 EVPN 구성
예: 가상 스위치 지원으로 EVPN 구성
이 예는 EVPN(Ethernet VPN) 구축에서 가상 스위치를 구성하는 방법을 보여줍니다.
요구 사항
이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.
MPC FPC를 포함하는 MX 시리즈 5G 유니버설 라우팅 플랫폼 2개.
고객 에지(CE) 라우터 2개.
Junos OS 릴리스 14.1 이상.
시작하기 전에:
라우터 인터페이스를 구성합니다.
OSPF 또는 기타 IGP 프로토콜을 구성합니다.
BGP를 구성합니다.
RSVP 또는 LDP를 구성합니다.
MPLS를 구성합니다.
개요
Junos OS 릴리스 14.1부터 MPC 인터페이스가 있는 MX 시리즈 라우터의 EVPN(Ethernet VPN) 솔루션이 확장되어 EVPN 인스턴스 내에서 독립적인 VLAN 및 서브넷 공간을 갖춘 여러 테넌트를 지원하는 가상 스위치 지원을 제공합니다. 가상 스위치는 단일 EVPN 인스턴스를 사용하여 WAN을 통해 이더넷 VLAN을 확장하는 동시에 해당 인스턴스와 연결된 다양한 VLAN 간의 데이터 플레인 분리를 유지하는 기능을 제공합니다. 단일 EVPN 인스턴스는 가상 스위치에 정의된 브리지 도메인을 최대 4094개까지 원격 사이트로 확장할 수 있습니다.
EVPN을 위한 가상 스위치를 구성할 때는 다음 사항을 고려해야 합니다.
기본 ARP 폴리싱으로 인해 디바이스로 향하지 않는 일부 ARP 패킷이 누락될 수 있습니다. 이로 인해 ARP 학습 및 동기화가 지연될 수 있습니다.
EVPN에 대한 ARP를 지우면 ARP 테이블과 EVPN ARP 테이블 간에 불일치가 발생할 수 있습니다. 이러한 상황을 방지하려면 ARP 및 EVPN ARP 테이블을 모두 삭제하세요.
로컬 스위칭을 위해 을(
vlan-tag
를) 구성할 수 있습니다. 그러나 VLAN 태그가 지정된 VLAN은 EVPN 클라우드를 통해 확장되어서는 안 됩니다.
위상수학
그림 1 은 가상 스위치를 지원하는 간단한 EVPN 토폴로지를 보여줍니다. 라우터 PE1 및 PE2는 각각 하나의 고객 에지(CE) 라우터(CE1 및 CE2)에 연결하는 프로바이더 에지(PE) 라우터입니다.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 명령을 CLI로 [edit]
복사해 붙여 넣습니다.
PE1
set interfaces ge-2/0/9 unit 0 family inet address 10.0.0.1/30 set interfaces ge-2/0/9 unit 0 family mpls set interfaces ge-0/1/4 flexible-vlan-tagging set interfaces ge-0/1/4 encapsulation flexible-ethernet-services set interfaces ge-0/1/4 unit 0 family bridge interface-mode trunk set interfaces ge-0/1/4 unit 0 vlan-id-list 10 set interfaces ge-0/1/4 unit 1 family bridge interface-mode trunk set interfaces ge-0/1/4 unit 1 vlan-id-list 20 set interfaces irb unit 0 family inet address 192.168.1.1/16 set interfaces irb unit 1 family inet address 192.168.2.1/16 set interfaces lo0 unit 0 family inet address 10.255.169.37/32 set routing-options router-id 10.255.169.37 set routing-options autonomous-system 100 set routing-options forwarding-table chained-composite-next-hop ingress evpn set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls label-switched-path PE1-to-PE2 from 10.255.169.37 set protocols mpls label-switched-path PE1-to-PE2 to 10.255.237.18 set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols bgp group ibgp type internal set protocols bgp group ibgp local-address 10.255.169.37 set protocols bgp group ibgp family evpn signaling set protocols bgp group ibgp neighbor 10.255.237.18 set protocols ospf area 0.0.0.0 interface all set protocols ospf area 0.0.0.0 interface fxp0.0 disable set routing-instances evpna instance-type virtual-switch set routing-instances evpna interface ge-0/1/4.0 set routing-instances evpna interface ge-0/1/4.1 set routing-instances evpna route-distinguisher 10.255.169.37:1 set routing-instances evpna vrf-target target:100:1 set routing-instances evpna protocols evpn extended-vlan-list [ 10 20 ] set routing-instances evpna bridge-domains bda domain-type bridge set routing-instances evpna bridge-domains bda vlan-id 10 set routing-instances evpna bridge-domains bda routing-interface irb.0 set routing-instances evpna bridge-domains bda bridge-options interface ge-0/1/4.0 set routing-instances evpna bridge-domains bdb domain-type bridge set routing-instances evpna bridge-domains bdb vlan-id 20 set routing-instances evpna bridge-domains bdb routing-interface irb.1 set routing-instances evpna bridge-domains bdb bridge-options interface ge-0/1/4.1 set routing-instances vrf instance-type vrf set routing-instances vrf interface irb.0 set routing-instances vrf interface irb.1 set routing-instances vrf route-distinguisher 198.51.100.1:2 set routing-instances vrf vrf-target target:100:2 set routing-instances vrf vrf-table-label
PE2
set interfaces ge-2/1/9 unit 0 family inet address 10.0.0.2/30 set interfaces ge-2/1/9 unit 0 family mpls set interfaces ge-1/2/4 flexible-vlan-tagging set interfaces ge-1/2/4 encapsulation flexible-ethernet-services set interfaces ge-1/2/4 unit 0 family bridge interface-mode trunk set interfaces ge-1/2/4 unit 0 vlan-id-list 10 set interfaces ge-1/2/4 unit 1 family bridge interface-mode trunk set interfaces ge-1/2/4 unit 1 vlan-id-list 20 set interfaces irb unit 0 family inet address 192.168.2.2/16 set interfaces irb unit 1 family inet address 192.168.2.3/16 set interfaces lo0 unit 0 family inet address 10.255.237.18/32 set routing-options router-id 10.255.237.18 set routing-options autonomous-system 100 set routing-options forwarding-table chained-composite-next-hop ingress evpn set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls label-switched-path PE2-to-PE1 from 10.255.237.18 set protocols mpls label-switched-path PE2-to-PE1 to 10.255.169.37 set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols bgp group ibgp type internal set protocols bgp group ibgp local-address 10.255.237.18 set protocols bgp group ibgp family evpn signaling set protocols bgp group ibgp neighbor 10.255.169.37 set protocols ospf area 0.0.0.0 interface all set protocols ospf area 0.0.0.0 interface fxp0.0 disable set routing-instances evpna instance-type virtual-switch set routing-instances evpna interface ge-1/2/4.0 set routing-instances evpna interface ge-1/2/4.1 set routing-instances evpna route-distinguisher 10.255.237.18:1 set routing-instances evpna vrf-target target:100:1 set routing-instances evpna protocols evpn extended-vlan-list [ 10 20 ] set routing-instances evpna bridge-domains bda domain-type bridge set routing-instances evpna bridge-domains bda vlan-id 10 set routing-instances evpna bridge-domains bda routing-interface irb.0 set routing-instances evpna bridge-domains bda bridge-options interface ge-1/2/4.0 set routing-instances evpna bridge-domains bdb domain-type bridge set routing-instances evpna bridge-domains bdb vlan-id 20 set routing-instances evpna bridge-domains bdb routing-interface irb.1 set routing-instances evpna bridge-domains bdb bridge-options interface ge-1/2/4.1 set routing-instances vrf instance-type vrf set routing-instances vrf interface irb.0 set routing-instances vrf interface irb.1 set routing-instances vrf route-distinguisher 198.51.100.2:2 set routing-instances vrf vrf-target target:100:2 set routing-instances vrf vrf-table-label
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. CLI 탐색에 대한 정보는 구성 모드에서 CLI 편집기 사용의 내용을 참조하십시오.
라우터 PE1 구성:
적절한 인터페이스 이름, 주소 및 기타 매개 변수를 수정한 후 라우터 PE2에 대해 이 절차를 반복합니다.
PE1 인터페이스를 구성합니다.
[edit interfaces]
user@PE1# set ge-2/0/9 unit 0 family inet address 10.0.0.1/30 user@PE1# set ge-2/0/9 unit 0 family mpls user@PE1# set ge-0/1/4 flexible-vlan-tagging user@PE1# set ge-0/1/4 encapsulation flexible-ethernet-services user@PE1# set ge-0/1/4 unit 0 family bridge interface-mode trunk user@PE1# set ge-0/1/4 unit 0 vlan-id-list 10 user@PE1# set ge-0/1/4 unit 1 family bridge interface-mode trunk user@PE1# set ge-0/1/4 unit 1 vlan-id-list 20 user@PE1# set irb unit 0 family inet address 192.168.1.1/16 user@PE1# set irb unit 1 family inet address 192.168.2.1/16 user@PE1# set lo0 unit 0 family inet address 10.255.169.37/32라우터 PE1의 라우터 ID 및 AS(Autonomous System) 번호를 설정합니다.
[edit routing-options] user@PE1# set router-id 10.255.169.37 user@PE1# set autonomous-system 100
EVPN에 대한 연결된 복합 다음 홉을 구성합니다.
[edit routing-options] user@PE1# set forwarding-table chained-composite-next-hop ingress evpn
관리 인터페이스를 제외한 라우터 PE1의 모든 인터페이스에서 RSVP를 활성화합니다.
[edit protocols] user@PE1# set rsvp interface all user@PE1# set rsvp interface fxp0.0 disable
PE1이 PE2에 도달할 수 있도록 레이블 전환 경로를 생성합니다.
[edit protocols] user@PE1# set mpls label-switched-path PE1-to-PE2 from 10.255.169.37 user@PE1# set mpls label-switched-path PE1-to-PE2 to 10.255.237.18
관리 인터페이스를 제외한 라우터 PE1의 모든 인터페이스에서 MPLS를 활성화합니다.
[edit protocols] user@PE1# set mpls interface all user@PE1# set mpls interface fxp0.0 disable
라우터 PE1에 대한 BGP 그룹을 구성합니다.
[edit protocols] user@PE1# set bgp group ibgp type internal
라우터 PE1이 라우터 PE2와 피어링할 수 있도록 ibgp BGP 그룹에 로컬 및 neighbor 주소를 할당합니다.
[edit protocols] user@PE1# set bgp group ibgp local-address 10.255.169.37 user@PE1# set bgp group ibgp neighbor 10.255.237.18
ibgp BGP 그룹에 EVPN 시그널링 NLRI(Network Layer Reachability Information)를 포함합니다.
[edit protocols] user@PE1# set bgp group ibgp family evpn signaling
관리 인터페이스를 제외한 라우터 PE1의 모든 인터페이스에서 OSPF를 구성합니다.
[edit protocols] user@PE1# set ospf area 0.0.0.0 interface all user@PE1# set ospf area 0.0.0.0 interface fxp0.0 disable
가상 스위치 라우팅 인스턴스를 구성합니다.
[edit routing-instances] user@PE1# set evpna instance-type virtual-switch
evpna 라우팅 인스턴스에 대한 인터페이스 이름을 구성합니다.
[edit routing-instances] user@PE1# set evpna interface ge-0/1/4.0 user@PE1# set evpna interface ge-0/1/4.1
evpna 라우팅 인스턴스에 대한 경로 식별자를 구성합니다.
[edit routing-instances] user@PE1# set evpna route-distinguisher 10.255.169.37:1
evpna 라우팅 인스턴스에 대한 VPN 라우팅 및 포워딩(VRF) 대상 커뮤니티를 구성합니다.
[edit routing-instances] user@PE1# set evpna vrf-target target:100:1
EVPN을 확장할 VLAN 식별자를 나열합니다.
[edit routing-instances] user@PE1# set evpna protocols evpn extended-vlan-list [ 10 20 ]
evpna 라우팅 인스턴스에 대한 브리지 도메인을 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bda domain-type bridge
bda 브리지 도메인에 VLAN ID를 할당합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bda vlan-id 10
IRB 인터페이스를 bda 브리지 도메인에 대한 라우팅 인터페이스로 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bda routing-interface irb.0
bda 브리지 도메인의 인터페이스 이름을 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bda bridge-options interface ge-0/1/4.0
evpna 라우팅 인스턴스에 대한 브리지 도메인을 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bdb domain-type bridge
bdb 브리지 도메인에 VLAN ID를 할당합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bdb vlan-id 20
IRB 인터페이스를 bda 브리지 도메인에 대한 라우팅 인터페이스로 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bdb routing-interface irb.1
bdb 브리지 도메인의 인터페이스 이름을 구성합니다.
[edit routing-instances] user@PE1# set evpna bridge-domains bdb bridge-options interface ge-0/1/4.1
VRF 라우팅 인스턴스를 구성합니다.
[edit routing-instances] user@PE1# set vrf instance-type vrf
IRB 인터페이스를 vrf 라우팅 인스턴스에 대한 라우팅 인터페이스로 구성합니다.
[edit routing-instances] user@PE1# set vrf interface irb.0 user@PE1# set vrf interface irb.1
vrf 라우팅 인스턴스에 대한 경로 식별자를 구성합니다.
[edit routing-instances] user@PE1# set vrf route-distinguisher 198.51.100.1:2
vrf 라우팅 인스턴스에 대한 VRF 대상 커뮤니티를 구성합니다.
[edit routing-instances] user@PE1# set vrf vrf-target target:100:2
vrf 라우팅 인스턴스에 대한 VRF 레이블을 구성합니다.
[edit routing-instances] user@PE1# set vrf vrf-table-label
결과
구성 모드에서 , show routing-options
, show protocols
및 show routing-instances
명령을 입력하여 show interfaces
구성을 확인합니다. 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.
user@PE1# show interfaces
ge-2/0/9 {
unit 0 {
family inet {
address 10.0.0.1/30;
}
family mpls;
}
}
ge-0/1/4 {
flexible-vlan-tagging;
encapsulation flexible-ethernet-services;
unit 0 {
family bridge {
interface-mode trunk;
vlan-id-list 10;
}
}
unit 1 {
family bridge {
interface-mode trunk;
vlan-id-list 20;
}
}
}
irb {
unit 0 {
family inet {
address 192.168.1.1/16;
}
}
unit 1 {
family inet {
address 192.168.2.1/16;
}
}
}
lo0 {
unit 0 {
family inet {
address 10.255.169.37/32;
}
}
}
user@PE1# show routing-options
router-id 10.255.169.37;
autonomous-system 100;
forwarding-table {
chained-composite-next-hop {
ingress {
evpn;
}
}
}
user@PE1# show protocols
rsvp {
interface all;
interface fxp0.0 {
disable;
}
}
mpls {
label-switched-path PE1-to-PE2 {
from 10.255.169.37;
to 10.255.237.18;
}
interface all;
interface fxp0.0 {
disable;
}
}
bgp {
group ibgp {
type internal;
local-address 10.255.169.37;
family evpn {
signaling;
}
neighbor 10.255.237.18;
}
}
ospf {
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
}
}
user@PE1# show routing-instances
evpna {
instance-type virtual-switch;
interface ge-0/1/4.0;
interface ge-0/1/4.1;
route-distinguisher 10.255.169.37:1;
vrf-target target:100:1;
protocols {
evpn {
extended-vlan-list [ 10 20 ];
}
}
bridge-domains {
bda {
domain-type bridge;
vlan-id 10;
routing-interface irb.0;
bridge-options {
interface ge-0/1/4.0;
}
}
bdb {
domain-type bridge;
vlan-id 20;
routing-interface irb.1;
bridge-options {
interface ge-0/1/4.1;
}
}
}
}
vrf {
instance-type vrf;
interface irb.0;
interface irb.1;
route-distinguisher 10.255.169.37:2;
vrf-target target:100:2;
vrf-table-label;
}
확인
구성이 올바르게 작동하고 있는지 확인합니다.
브리지 도메인 구성 확인
목적
evpna 라우팅 인스턴스에 대한 브리지 도메인 구성을 확인합니다.
행동
운영 모드에서 명령을 실행합니다 show bridge domain extensive
.
user@PE1> show bridge domain extensive Routing instance: evpna Bridge domain: bda State: Active Bridge VLAN ID: 10 EVPN extended: Yes Interfaces: ge-0/1/4.0 pip-10.000010000000 pip-10.feff0f000000 Total MAC count: 2 Bridge domain: bdb State: Active Bridge VLAN ID: 20 EVPN extended: Yes Interfaces: ge-0/1/4.1 pip-11.010010000000 pip-11.ffff0f000000 Total MAC count: 2
의미
구성된 브리지 도메인 bda
및 bdb
관련 VLAN ID와 인터페이스가 표시됩니다. 브리지 도메인도 EVPN으로 확장됩니다.
MAC 테이블 경로 확인
목적
데이터 플레인 및 컨트롤 플레인에서 학습된 MAC를 확인합니다.
행동
운영 모드에서 명령을 실행합니다 show bridge mac-table
.
user@PE1> show bridge mac-table MAC flags (S -static MAC, D -dynamic MAC, L -locally learned, C -Control MAC SE -Statistics enabled, NM -Non configured MAC, R -Remote PE MAC) Routing instance : evpna Bridging domain : bda, VLAN : 10 MAC MAC Logical NH RTR address flags interface Index ID 00:00:00:aa:01:01 S ge-0/1/4.0 00:00:00:bb:01:01 DC 1048574 1048574 00:00:00:cc:01:01 DC 1048576 1048576 Bridging domain : bdb, VLAN : 20 MAC MAC Logical NH RTR address flags interface Index ID 00:00:00:aa:02:01 S ge-0/1/4.1 00:00:00:bb:02:01 DC 1048575 1048575 00:00:00:cc:02:01 DC 1048577 1048577
의미
브리지 도메인에 대해 구성된 정적 MAC가 표시됩니다.
브리지 EVPN 피어 게이트웨이 MAC 확인
목적
evpna 라우팅 인스턴스에 대한 브리지 EVPN 피어 게이트웨이 MAC를 확인합니다.
행동
운영 모드에서 명령을 실행합니다 show bridge evpn peer-gateway-macs
.
user@PE1> show bridge evpn peer-gateway-macs Routing instance : evpna Bridging domain : bda, VLAN : 10 Installed GW MAC addresses: 00:23:9c:96:af:f0 a8:d0:e5:5b:02:08 Bridging domain : bdb, VLAN : 20 Installed GW MAC addresses: 00:23:9c:96:af:f0 a8:d0:e5:5b:02:08
의미
evpna 라우팅 인스턴스에 대한 EVPN 피어의 게이트웨이 MAC이 표시됩니다.