소개
이 문서에서는 bgp deterministic-med
명령을 사용하여 다중 MED(Exit Discriminator)를 기반으로 하는 경로 선택에 어떤 영향을 주는지 설명합니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
사용되는 구성 요소
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
표기 규칙
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
MED 특성
MED는 선택적 비전이적 특성입니다. MED는 여러 진입점이 있는 AS(자동 시스템)로의 기본 경로에 대한 외부 네이버에 대한 힌트입니다. MED는 경로의 외부 메트릭이라고도 합니다. MED 값이 낮을수록 높은 값보다 선호됩니다.
이 섹션에서는 MED를 사용하여 인접 AS가 취한 라우팅 결정에 영향을 주는 방법의 예를 설명합니다.
네트워크 토폴로지
네트워크 토폴로지
예
이 시나리오에서 AS 65502은 AS 65501이 있는 ISP의 사용자입니다. R4는 이중화를 위해 ISP측의 서로 다른 두 라우터에 연결되어 있으며, ISP에 10.4.0.0/16 및 10.5.0.0/16의 두 네트워크를 광고합니다. 이 섹션에는 관련 컨피그레이션 중 일부가 표시됩니다.
R4 |
!
version 12.3
!
hostname r4
!
ip cef
!
!
interface Loopback10
ip address 10.4.0.1 255.255.0.0
!
interface Loopback11
ip address 10.5.0.1 255.255.0.0
!
interface Serial0/0
ip address 192.168.20.4 255.255.255.0
!
interface Serial1/0
ip address 192.168.30.4 255.255.255.0
!
router bgp 65502
no synchronization
bgp log-neighbor-changes
network 10.4.0.0 mask 255.255.0.0
network 10.5.0.0 mask 255.255.0.0
neighbor 192.168.20.2 remote-as 65501
neighbor 192.168.30.3 remote-as 65501
no auto-summary
!
ip classless
!
!
line con 0
exec-timeout 0 0
line aux 0
line vty 0 4
exec-timeout 0 0
login
!
!
end |
R2 |
!
version 12.3
!
hostname r2
!
ip cef
!
!
interface Loopback0
ip address 10.2.2.2 255.255.255.255
!
interface Ethernet0/0
ip address 172.16.0.2 255.255.255.0
!
interface Serial1/0
ip address 192.168.1.2 255.255.255.0
serial restart-delay 0
!
interface Serial2/0
ip address 192.168.20.2 255.255.255.0
serial restart-delay 0
!
router ospf 1
log-adjacency-changes
redistribute connected
passive-interface Serial2/0
network 10.2.2.2 0.0.0.0 area 0
network 172.16.0.2 0.0.0.0 area 0
network 192.168.1.2 0.0.0.0 area 0
network 192.168.20.2 0.0.0.0 area 0
!
router bgp 65501
no synchronization
bgp log-neighbor-changes
neighbor 10.1.1.1 remote-as 65501
neighbor 10.1.1.1 update-source Loopback0
neighbor 10.3.3.3 remote-as 65501
neighbor 10.3.3.3 update-source Loopback0
neighbor 192.168.20.4 remote-as 65502
no auto-summary
!
ip classless
!
!
line con 0
exec-timeout 0 0
transport preferred all
transport output all
line aux 0
transport preferred all
transport output all
line vty 0 4
exec-timeout 0 0
login
transport preferred all
transport input all
transport output all
!
end |
R1 및 R3의 구성은 R2와 유사하다. R3에는 R4와 피어링하는 eBGP와 R1과 피어링하는 iBGP가 있습니다.
R1에는 R2와 R3에 피어가 있는 iBGP가 있습니다. R4가 광고하는 두 네트워크에 대해 R1, R2, R3 BGP 테이블이 어떻게 표시되는지 확인합니다.
r2# show ip bgp 10.4.0.1
BGP routing table entry for 10.4.0.0/16, version 7
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.1 10.3.3.3
65502
192.168.20.4 from 192.168.20.4 (10.4.4.4)
Origin IGP, metric 0, localpref 100, valid, external, best
65502
192.168.30.4 (metric 74) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 0, localpref 100, valid, internal
r2# show ip bgp 10.5.0.1
BGP routing table entry for 10.5.0.0/16, version 6
Paths: (2 available, best #2, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.1 10.3.3.3
65502
192.168.30.4 (metric 74) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 0, localpref 100, valid, internal
65502
192.168.20.4 from 192.168.20.4 (10.4.4.4)
Origin IGP, metric 0, localpref 100, valid, external, best
r3# show ip bgp 10.4.0.1
BGP routing table entry for 10.4.0.0/16, version 8
Paths: (2 available, best #2, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.1 10.2.2.2
65502
192.168.20.4 (metric 74) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal
65502
192.168.30.4 from 192.168.30.4 (10.4.4.4)
Origin IGP, metric 0, localpref 100, valid, external, best
r3# show ip bgp 10.5.0.1
BGP routing table entry for 10.5.0.0/16, version 10
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.1 10.2.2.2
65502
192.168.30.4 from 192.168.30.4 (10.4.4.4)
Origin IGP, metric 0, localpref 100, valid, external, best
65502
192.168.20.4 (metric 74) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal
r1# show ip bgp 10.4.0.1
BGP routing table entry for 10.4.0.0/16, version 11
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Not advertised to any peer
65502
192.168.20.4 (metric 128) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal, best
65502
192.168.30.4 (metric 128) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 0, localpref 100, valid, internal
r1# show ip bgp 10.5.0.1
BGP routing table entry for 10.5.0.0/16, version 10
Paths: (2 available, best #2, table Default-IP-Routing-Table)
Not advertised to any peer
65502
192.168.30.4 (metric 128) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 0, localpref 100, valid, internal
65502
192.168.20.4 (metric 128) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal, best
R2와 R3 모두 BGP 최상의 경로 선택 알고리즘에 따라 예상되는 R4의 외부 경로를 최상의 경로로 선택합니다. 자세한 내용은 BGP 최적 경로 선택 알고리즘을 참조하십시오.
마찬가지로, R1은 R2를 선택하여 2개의 네트워크에 액세스합니다. 이는 BGP 최적 경로 규칙에 따릅니다. 즉 라우터 ID가 가장 낮은 경로를 선택합니다. R2 라우터 ID는 10.2.2.2이고 R3 라우터 ID는 10.3.3.3이므로 R2가 선택됩니다. 이 기본 컨피그레이션에서는 AS 65502의 두 네트워크에 대한 모든 트래픽이 기본적으로 R1에서 R2를 거쳐 R4로 전달됩니다. 이제 R4가 AS 서버에서 수신하는 트래픽을 로드 밸런싱하려고 한다고 65501. R4 ISP를 수정하지 않고 이 작업을 수행하려면 MED를 사용하여 한 네트워크의 트래픽은 한 경로로, 다른 네트워크의 트래픽은 다른 경로로 강제하도록 R4를 구성합니다.
필요한 컨피그레이션을 적용한 후의 R4 컨피그레이션입니다.
R4 |
!
version 12.3
!
hostname r4
!
ip cef
!
!
!
interface Loopback10
ip address 10.4.0.1 255.255.0.0
!
interface Loopback11
ip address 10.5.0.1 255.255.0.0
!
interface Serial0/0
ip address 192.168.20.4 255.255.255.0
!
interface Serial1/0
ip address 192.168.30.4 255.255.255.0
!
router bgp 65502
no synchronization
bgp log-neighbor-changes
network 10.4.0.0 mask 255.255.0.0
network 10.5.0.0 mask 255.255.0.0
neighbor 192.168.20.2 remote-as 65501
neighbor 192.168.20.2 route-map setMED-R2 out
neighbor 192.168.30.3 remote-as 65501
neighbor 192.168.30.3 route-map setMED-R3 out
no auto-summary
!
ip classless
no ip http server
!
!
access-list 1 permit 10.4.0.0 0.0.255.255
access-list 2 permit 10.5.0.0 0.0.255.255
!
route-map setMED-R3 permit 10
match ip address 1
set metric 200
!
route-map setMED-R3 permit 20
match ip address 2
set metric 100
!--- The route-map MED-R3 is applying a MED of 200 to the 10.4.0.0/16 !--- network and a MED of 100 to the 10.5.0.0/16 network. !--- The route-map is being applied outbound towards R3. ! route-map setMED-R2 permit 10 match ip address 1 set metric 100 ! route-map setMED-R2 permit 20 match ip address 2 set metric 200 !--- The route-map MED-R2 is applying a MED of 100 to the 10.4.0.0/16 !--- network and a MED of 200 to the 10.5.0.0/16 network. !--- The route-map is being applied outbound towards R2. ! ! ! line con 0 exec-timeout 0 0 line aux 0 line vty 0 4 exec-timeout 0 0 login ! ! end |
참고: 와의 BGP 세션을 지워야 합니다. clear ip bgp * soft out
명령을 사용하여 이러한 컨피그레이션에 대해 조치를 취할 수 있습니다.
이제 R1은 R2를 통한 경로를 네트워크 10.4.0.0/16에 대한 최상의 경로로 간주합니다. R2에서 수신한 업데이트의 MED가 100이고 MED가 200이므로 R3에서 이를 알립니다. 마찬가지로 R1은 R3 및 R3 - R4 링크를 사용하여 10.5.0.0/16에 액세스합니다.
r1# show ip bgp 10.4.0.1
BGP routing table entry for 10.4.0.0/16, version 14
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Flag: 0x800
Not advertised to any peer
65502
192.168.20.4 (metric 128) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 100, localpref 100, valid, internal, best
r1#sh ip bgp 10.5.0.1
BGP routing table entry for 10.5.0.0/16, version 13
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Flag: 0x800
Not advertised to any peer
65502
192.168.30.4 (metric 128) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 100, localpref 100, valid, internal, best
R2 디스플레이를 확인합니다.
r2# show ip bgp 10.4.0.1
BGP routing table entry for 10.4.0.0/16, version 10
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.1 10.3.3.3
65502
192.168.20.4 from 192.168.20.4 (10.4.4.4)
Origin IGP, metric 100, localpref 100, valid, external, best
r2# show ip bgp 10.5.0.1
BGP routing table entry for 10.5.0.0/16, version 11
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
192.168.20.4
65502
192.168.30.4 (metric 74) from 10.3.3.3 (10.3.3.3)
Origin IGP, metric 100, localpref 100, valid, internal, best
65502
192.168.20.4 from 192.168.20.4 (10.4.4.4)
Origin IGP, metric 200, localpref 100, valid, external
R2가 10.4.0.0/16에 대해 하나의 경로만 표시하는 이유는 R3가 R2를 사용하여 10.4.0.0/16에 액세스하면(사용 가능한 모든 경로에서 BGP 최적 경로를 실행한 후) R3가 10.4.0.0/16에 대한 업데이트를 취소(연결할 수 없는 메트릭으로 업데이트 전송)하기 때문입니다.
r3# show ip bgp 10.4.0.0
BGP routing table entry for 10.4.0.0/16, version 20
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
192.168.30.4
65502
192.168.20.4 (metric 74) from 10.2.2.2 (10.2.2.2)
Origin IGP, metric 100, localpref 100, valid, internal, best
65502
192.168.30.4 from 192.168.30.4 (10.4.4.4)
Origin IGP, metric 200, localpref 100, valid, external
이것은 R2가 이 쓸모없는 정보를 저장할 필요가 없기 때문에 일부 메모리를 저장할 수 있게 한다. R2와 R4 간의 BGP 세션이 실패할 경우 R2는 10.4.0.0/16에 대해 R3에 연결할 수 없는 업데이트를 전송합니다. 이 업데이트는 R3이 R4를 통해 R2로 10.4.0.0/16에 대한 R3 경로를 사용하여 업데이트를 전송하도록 트리거합니다. R2는 R3를 통해 경로를 시작할 수 있습니다.
bgp deterministic-med 명령
을(를) 활성화하면 bgp deterministic-med
명령을 사용하면 MED 기반 최적 경로 결정의 시간적 종속성이 제거됩니다. 동일한 AS(Autonomous System)에서 수신한 모든 경로에서 정확한 MED 비교가 이루어지도록 합니다.
비활성화할 경우 bgp deterministic-med
따라서 경로를 수신하는 순서는 MED 기반 최적 경로 결정에 영향을 미칠 수 있습니다. 이는 경로 길이가 정확히 같지만 MED가 다른 여러 AS 또는 연합 하위 AS에서 동일한 경로를 수신할 때 발생할 수 있습니다.
예
예를 들어 다음 경로를 고려하십시오.
entry1: ASPATH 1, MED 100, internal, IGP metric to NEXT_HOP 10
entry2: ASPATH 2, MED 150, internal, IGP metric to NEXT_HOP 5
entry3: ASPATH 1, MED 200, external
BGP 경로를 수신한 순서는 entry3, entry2, entry1입니다(entry3은 BGP 테이블에서 가장 오래된 항목이고 entry1은 가장 최신 항목임).
bgp deterministic-med가 비활성화된 BGP 라우터
BGP 라우터 bgp deterministic-med
disabled는 NEXT_HOP에 도달하기 위한 IGP 메트릭이 더 낮기 때문에 entry1보다 entry2를 선택합니다(entry1과 entry2가 서로 다른 두 AS에서 생성되었으므로 이 결정에서 MED가 사용되지 않음). 그런 다음 entry2보다 entry3을 선호합니다. 외부 항목이기 때문입니다. 그러나 entry3의 MED가 entry1보다 높습니다. BGP 경로 선택 기준에 대한 자세한 내용은 BGP Best Path Selection Algorithm을 참조하십시오.
bgp deterministic-med가 활성화된 BGP 라우터
이 경우 동일한 AS의 경로가 함께 그룹화되고 각 그룹의 최상의 항목이 비교됩니다. 주어진 예에서는 2개의 AS, AS 1 및 AS 2가 있다.
Group 1: entry1: ASPATH 1, MED 100, internal, IGP metric to NEXT_HOP 10
entry3: ASPATH 1, MED 200, external
Group 2: entry2: ASPATH 2, MED 150, internal, IGP metric to NEXT_HOP 5
그룹 1에서는 MED가 낮기 때문에 entry1이 최상의 경로입니다(MED는 AS가 같기 때문에 이 결정에 사용됨). 그룹 2에는 하나의 항목(entry2)만 있습니다. 각 그룹의 승자를 비교하여 최상의 경로를 결정합니다(MED는 각 그룹의 승자가 서로 다른 AS의 승자이기 때문에 이 비교에서 기본적으로 사용되지 않습니다). Cisco ISE를 bgp always-compare-med
이 기본 동작을 변경합니다.) 이제 entry1(1그룹 우승자)과 entry2(2그룹 우승자)를 비교하면 entry2는 다음 홉에 대한 IGP 메트릭이 더 우수하므로 승자가 될 수 있습니다.
경우 bgp always-compare-med
엔트리1(그룹 1의 우승자)과 엔트리2(그룹 2의 우승자)를 비교할 때도 MED가 낮아 엔트리1이 우승자가 될 수 있다.
Cisco에서는 bgp always-compare-med
모든 새로운 네트워크 구축에 적용됩니다. 또한 bgp always-compare-med
이 활성화되어 있으면 BGP MED 결정은 항상 결정적입니다.
에 대한 자세한 내용은 bgp deterministic-med
및 bgp always-compare-med
명령, bgp deterministic-med 명령이 bgp always-compare-med 명령과 어떻게 다른지를 참조하십시오.
관련 정보