이 문서에서는 bgp deterministic-med 명령과 이 명령이 MED(multiexit discriminator)를 기반으로 하는 경로 선택에 어떤 영향을 미치는지 설명합니다.
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
Cisco 문서 표기 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
MED는 여러 진입점이 있는 AS(Autonomous System)로의 기본 경로에 대한 힌트를 외부 네이버에 제공하는 선택적 비전이적 BGP 특성입니다. MED는 경로의 외부 메트릭이라고도 하며, MED 값이 낮을수록 높은 값보다 우선합니다. 기본적으로 BGP는 동일한 인접 AS에서 수신한 경로 사이에서만 MED 값을 비교합니다.
참고: 기본적으로 BGP는 bgp always-compare-med가 구성되어 있지 않은 경우 동일한 인접 AS에서 수신한 경로에 대해서만 MED 값을 비교합니다. 자세한 내용은 bgp deterministic-med 명령이 bgp always-compare-med 명령과 어떻게 다른지를 참조하십시오.
네트워크 토폴로지
이 시나리오에서 AS 65502은 AS 65501을 사용하는 ISP 사용자입니다. R4는 이중화를 위해 ISP 측의 서로 다른 두 라우터에 연결되어 있으며, ISP에 10.4.0.0/16 및 10.5.0.0/16의 두 네트워크를 광고합니다. 이 섹션에는 관련 컨피그레이션 중 일부가 나와 있습니다.
| R4 |
|---|
! 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 |
|---|
! 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와 동일한 설계를 사용합니다. R1, R2 및 R3는 루프백 인터페이스를 통해 iBGP 연결성을 가지며 IGP는 BGP 다음 홉에 연결성을 제공합니다. R3에는 R4를 사용하는 eBGP 세션과 R1 및 R2를 사용하는 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를 선택하여 두 네트워크에 액세스합니다. 이전 BGP 최적 경로 특성이 연결되고 가장 낮은 BGP 라우터 ID가 타이 브레이커로 사용되기 때문입니다. R2는 라우터 ID가 10.2.2.2이고 R3는 라우터 ID가 10.3.3.3입니다. R2s 라우터 ID는 10.2.2.2이고 R3s 라우터 ID는 10.3.3.3이므로 R2가 선택됩니다. 이 기본 컨피그레이션에서는 AS 65502의 두 네트워크에 대한 모든 트래픽이 기본적으로 R1에서 R2를 거쳐 R4로 전달됩니다. 이제 R4가 AS 65501에서 수신하는 트래픽을 로드 밸런싱하려고 한다고 가정합니다. R4 ISP를 수정하지 않고 로드 밸런싱을 수행하려면 MED를 사용하여 한 네트워크에 대한 트래픽은 한 경로로, 다른 네트워크에 대한 트래픽은 다른 경로로 강제로 이동하도록 R4를 구성합니다.
참고: 앞서 설명한 MED 컨피그레이션 예에서는 진정한 동일 비용 로드 밸런싱이 아닌 접두사별 트래픽 엔지니어링을 제공합니다.
필요한 컨피그레이션을 적용한 후의 R4 컨피그레이션입니다.
| R4 |
|---|
! 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 setMED-R3 is applying a MED of 200 to the 10.4.0.0/16 |
참고: 이 예에서는 10.4.0.0/16 및 10.5.0.0/16만 광고됩니다. 추가 접두사가 동일한 인접 디바이스에 광고되는 경우 해당 접두사를 적절한 액세스 목록 또는 route-map 시퀀스에 추가합니다. 아웃바운드 경로 맵에 의해 필터링되지 않고 일치하지 않는 접두사를 광고해야 하는 경우 최종 허용 시퀀스를 추가합니다.
MED가 적용된 후 R2는 10.4.0.0/16에 대해 가장 좋은 R2-to-R4 경로/링크를 선택하고 R3는 10.5.0.0/16에 대해 가장 좋은 R3-to-R4 경로/링크를 선택합니다. 표시된 통합 상태에서 R1은 각 접두사에 대해 적합한 최상의 iBGP 광고를 받고 10.4.0.0/16에 대해 R2, 10.5.0.0/16에 대해 R3을 사용합니다.
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#show 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
R3이 R2를 통해 iBGP를 학습한 경로를 가장 잘 선택한 후 R3이 R4 학습 경로를 더 이상 광고하지 않으므로 R2는 10.4.0.0/16에 대한 하나의 경로를 보여 줍니다. R3이 R2를 사용하여 10.4.0.0/16에 액세스한다는 사실을 알게 되면 R3은 10.4.0.0/16에 대한 업데이트를 철회합니다(BGP 경로 철회 전송, 이 업데이트에는 연결할 수 없는 메트릭이 포함됨). 표준 iBGP 광고 규칙은 R3이 iBGP를 학습한 경로를 이 토폴로지의 다른 iBGP 피어로 다시 광고하는 것을 방지합니다.
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를 통해 10.4.0.0/16에 대한 R3 경로를 사용하여 R2에 업데이트를 전송하도록 트리거합니다. R2는 R3를 통해 경로를 시작할 수 있습니다.
결정적 MED 비교를 활성화하려면 BGP 라우터 컨피그레이션 모드에서 bgp deterministic-med 명령을 구성합니다. 활성화된 경우 bgp deterministic-med는 비교 전에 동일한 AS의 경로를 그룹화하여 MED 기반 최적 경로 결정에서 시간적 종속성을 제거합니다. 이렇게 하면 동일한 AS(Autonomous System)에서 수신한 모든 경로에서 정확한 MED 비교가 이루어집니다.
bgp deterministic-med를 비활성화하면, 수신된 순서 경로가 MED 기반 최적 경로 결정에 영향을 줄 수 있습니다. 이는 경로 길이가 정확히 같지만 MED가 다른 여러 AS 또는 연합 하위 AS에서 동일한 경로를 수신할 때 발생할 수 있습니다.
예를 들어 다음 경로를 고려하십시오.
| 항목 | AS 경로 | MED | 로컬 기본 설정 | AS 경로 길이 | 근원 |
|---|---|---|---|---|---|
| 항목1 |
65001 |
100 |
100 |
1 |
IGP |
| 항목2 |
65002 |
50 |
100 |
1 |
IGP |
| 항목3 |
65001 |
20 |
100 |
1 |
IGP |
도착 주문 1 예
수신된 BGP 경로 순서는 다음과 같습니다(entry1은 BGP 테이블에서 가장 오래된 항목이고 entry3은 가장 최신 항목임).
초기에는 하나의 경로만 존재하므로 entry1이 최적의 경로가 된다. AS65002의 entry2를 AS65001의 entry1과 비교할 때 경로가 서로 다른 인접 AS에서 오므로 MED는 무시됩니다. 나머지 모든 특성이 같으므로 라우터는 현재 최상의 경로인 entry1을 유지합니다.
AS65001과 MED 20의 entry3을 AS65001과 MED 100의 entry1과 비교할 때, 두 경로가 모두 동일한 인접 AS에서 오므로 MED가 평가됩니다. 20이 100보다 작기 때문에 entry3가 최종 최적 경로가 된다.
도착 주문 2 예
이제 동일한 경로가 다른 순서로 도착한다고 가정합니다.
처음에는 entry2가 최상의 경로로 선택됩니다. AS65001의 entry3을 AS65002의 entry2와 비교할 때 경로가 서로 다른 인접 AS에서 오므로 MED는 평가되지 않습니다. 나머지 모든 특성이 같으므로 라우터는 현재 최상의 경로, entry2를 유지합니다.
AS65001의 entry1을 AS65002의 entry2와 비교할 때 경로가 서로 다른 인접 AS에서 오므로 MED는 다시 무시됩니다. 그 결과, 라우터는 entry2를 최종 최적 경로로 유지합니다.
MED가 비활성화된 경우 경로 도착 순서가 비교 시퀀스에 영향을 미칩니다. 수신한 라우터는 정확히 세 개의 경로가 동일하지만 경로가 다른 순서로 도달했기 때문에 서로 다른 최적 경로를 선택했습니다. bgp deterministic-med가 제거하도록 디자인된 시간적 종속성입니다.
참고: BGP 경로 선택 기준에 대한 자세한 내용은 BGP Best Path Selection Algorithm을 참조하십시오.
MED가 활성화되면 라우터는 MED 기반 결정을 내리기 전에 먼저 인접 AS별로 경로를 그룹화합니다. 이 경우 동일한 AS의 경로가 함께 그룹화되고 각 그룹의 최상의 항목이 비교됩니다. 지정된 예에서는 AS, AS 65001 및 AS 65002이 있습니다.
| 그룹 | AS 경로 | 항목 | 선택한 경로 | 이유 |
|---|---|---|---|---|
| 그룹 1 |
65001 |
entry1(MED 100), entry3(MED 20) |
항목3 |
MED 낮음(20 < 100) |
| 그룹 2 |
65002 |
항목2(MED 50) |
항목2 |
유일한 후보자 |
그룹 1에서 가장 좋은 경로는 entry3입니다. MED가 낮기 때문입니다(MED는 경로가 동일한 AS이므로 이 결정에 사용됨). 그룹 2에는 하나의 항목(entry2)만 있습니다. 각 그룹의 승자를 비교하여 최상의 경로를 결정합니다. 각 그룹의 승자는 서로 다른 AS이므로 MED는 기본적으로 이 비교에서 사용되지 않습니다.
나머지 경로는 서로 다른 인접 AS에서 시작되므로 이 시점에서 MED는 더 이상 고려되지 않습니다. BGP 최적 경로 알고리즘은 후속 특성(예: eBGP 대 iBGP, 다음 홉에 대한 IGP 메트릭, 가장 오래된 경로, 라우터 ID 등, 다른 특성에 따라)으로 계속됩니다.
이 프로세스는 수신된 경로와 무관하다는 것이 핵심적인 장점입니다. 라우터가 경로를 다음과 같이 인식하는지 여부:
따라서 업데이트가 수신된 주문이 아니라 경로 속성을 기준으로 결정을 내리기 때문에 도착 주문도 동일한 결과를 얻을 수 있습니다.
참고: entry3(그룹 1의 우승자)과 entry2(그룹 2의 우승자)를 비교할 때 bgp always-compare-med도 활성화된 경우 3번 항목은 낮은 MED 때문에 우승자입니다.
참고: bgp deterministic-med 명령을 활성화하면 동일한 AS의 서로 다른 피어에서 광고하는 경로를 선택할 때 MED 변수를 비교할 수 있습니다. bgp always-compare-med 명령을 활성화하면 다른 AS의 인접 디바이스의 경로에 대한 MED가 비교됩니다.
이 예에서는 우선순위가 더 높은 모든 BGP 특성(예: 가중치, 로컬 기본 설정, AS 경로 길이, 원점 등)이 동일하다고 가정합니다. 그 목적은 MED의 영향을 격리하고 bgp deterministic-med를 비활성화하면 최상의 경로 결정이 경로 도착 순서에 따라 좌우될 수 있는 이유를 설명하는 것입니다.
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 명령의 차이점 을 참조하십시오.
| 개정 | 게시 날짜 | 의견 |
|---|---|---|
3.0 |
30-Jul-2026
|
제목, 소개, 맞춤법, 문법, 가로 선을 별도의 구역/가독성에 삽입합니다. |
2.0 |
26-Jan-2024
|
SEO 및 서식 업데이트. |
1.0 |
10-Dec-2001
|
최초 릴리스 |