이 문서에서는 별도의 두 ISP(인터넷 서비스 공급자)에 연결되어 있는 멀티홈 BGP(Border Gateway Protocol) 네트워크에서 이중화를 제공하는 방법에 대해 설명합니다. 한 ISP에 대한 연결이 실패할 경우 BGP set as-path {tag를 사용하여 다른 ISP를 통해 트래픽이 동적으로 라우팅됩니다. | as-path-string} 명령 및 HSRP(Hot Standby Router Protocol) 앞에 추가합니다.
이 문서의 독자는 다음 주제에 대해 알고 있어야 합니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
이 문서의 컨피그레이션의 목적은 다음 네트워크 정책을 달성하는 것입니다.
네트워크 192.168.21.0/24의 호스트에서 소싱되고 인터넷으로 향하는 모든 아웃바운드 트래픽은 R1을 통해 ISP-A로 라우팅되어야 합니다.그러나 해당 링크에 장애가 발생하거나 R1이 실패하면 모든 아웃바운드 트래픽이 수동 작업 없이 R2를 통해 ISP-B(및 인터넷으로)로 다시 라우팅되어야 합니다.
인터넷에서 자율 시스템 AS 100으로 향하는 모든 인바운드 트래픽은 R1을 통해 라우팅되어야 합니다. ISP-A에서 R1로 연결되는 링크가 실패할 경우 인바운드 트래픽은 ISP-B를 통해 R2로 자동 라우팅되어야 합니다.
이러한 요구 사항은 다음 두 가지 기술로 해결할 수 있습니다.BGP 및 HSRP
완전 이중화 아웃바운드 경로의 첫 번째 목적은 HSRP를 통해 실현될 수 있습니다.일반적으로 PC에는 라우팅 정보를 수집하고 교환할 수 있는 기능이 없습니다.기본 게이트웨이의 IP 주소는 PC에 정적으로 구성되며, 게이트웨이 라우터가 다운되면 PC가 로컬 네트워크 세그먼트 이외의 디바이스와의 연결이 끊어집니다.이는 대체 게이트웨이가 존재하는 경우에도 마찬가지입니다.HSRP는 이러한 요구 사항을 충족하도록 설계되었습니다.자세한 내용은 HSRP 기능을 참조하십시오.
두 번째 목표는 BGP set as-path prepend 명령을 사용하여 달성할 수 있습니다. 그러면 BGP가 접두사 192.168.21.0/24의 R2를 통해 더 긴 AS 경로를 ISP-B 링크로 전파할 수 있습니다(자체 AS 번호를 두 번 이상 전달하지 않음). 따라서 AS 100 외부에서 오는 192.168.21.0/24으로 향하는 모든 트래픽은 AS 경로를 ISP를 통해 더 짧은 AS 경로를 사용합니다. R1 링크.기본 경로(ISP-A-R1)가 실패하면 모든 트래픽이 네트워크 192.168.21.0/24에 도달하기 위해 더 긴 AS 경로(ISP-B-R2)를 사용합니다. BGP set as-path prepend 명령에 대한 자세한 내용은 BGP 사례 연구 문서의 AS_PATH 특성 다이어그램을 참조하십시오.
이 섹션에는 이 문서에서 설명하는 기능을 구성하기 위한 정보가 표시됩니다.
참고: 명령 조회 도구(등록된 고객만 해당)를 사용하여 이 문서에 사용된 명령에 대한 자세한 내용을 확인하십시오.
이 문서에서는 다음과 같은 네트워크 설정을 사용합니다.
이 다이어그램에서 라우터 1(R1) 및 라우터 2(R2)는 각각 ISP-A(AS 300) 및 ISP-B(AS 400)와 함께 외부 BGP(eBGP) 피어링을 사용하는 AS 100에 있습니다.라우터 6(R6)은 AS 600의 일부이며, ISP-A 및 ISP-B와 eBGP 피어링을 사용합니다.R1. R2에는 최적의 라우팅을 보장하기 위해 필요한 iBGP 피어링이 있습니다.예를 들어, AS 400 내부 경로에 연결하려고 할 때 R1은 AS 300을 통해 더 긴 경로를 사용하지 않습니다. R1은 대신 트래픽을 R2로 전달합니다.
R1 및 R2는 공통 이더넷 세그먼트를 통해 HSRP에 대해서도 구성됩니다.동일한 이더넷 세그먼트의 호스트에는 HSRP 대기 IP 주소 192.168.21.10을 가리키는 기본 경로가 있습니다.
R1 |
---|
Current configuration hostname R1 ! interface serial 0 ip address 192.168.31.1 255.255.255.0 ! interface Ethernet1 ip address 192.168.21.1 255.255.255.0 standby 1 priority 105 standby 1 preempt delay minimum 60 standby 1 ip 192.168.21.10 standby 1 track Serial0 !--- The standby track serial command tracks the state of !--- the Serial0 interface and brings down the !--- priority of standby group 1, if the interface goes down. !--- The standby preempt delay minimum 60 command makes sure that !--- R1 preempts and takes over as active router again. This command also ensures that !--- the router waits 60 seconds before doing so in order to give BGP time enough !--- to converge and populate the routing table. This avoids !--- traffic being sent to R1 before it is ready to forward it. ! ! router bgp 100 no synchronization network 192.168.21.0 neighbor 192.168.21.2 remote-as 100 neighbor 192.168.21.2 next-hop-self neighbor 192.168.31.3 remote-as 300 no auto-summary ! |
R2 |
---|
Current configuration: hostname R2 ! interface serial 0 ip address 192.168.42.2 255.255.255.0 ! interface Ethernet1 ip address 192.168.21.2 255.255.255.0 standby 1 priority 100 standby 1 preempt standby 1 ip 192.168.21.10 ! ! router bgp 100 no synchronization network 192.168.21.0 neighbor 192.168.21.1 remote-as 100 neighbor 192.168.21.1 next-hop-self neighbor 192.168.42.4 remote-as 400 neighbor 192.168.42.4 route-map foo out !--- It appends AS 100 to the BGP updates sent to AS 400 !--- in order to make it a backup for the ISP-A to R1 path. no auto-summary ! access-list 1 permit 192.168.21.0 route-map foo permit 10 match ip address 1 set as-path prepend 100 end |
이 섹션에서는 컨피그레이션이 제대로 작동하는지 확인하는 데 사용할 수 있는 정보를 제공합니다.
일부 show 명령은 출력 인터프리터 툴 에서 지원되는데(등록된 고객만), 이 툴을 사용하면 show 명령 출력의 분석 결과를 볼 수 있습니다.
네트워크에서 이중화를 구성할 때 다음 두 가지를 고려해야 합니다.
로컬 네트워크에서 목적지 네트워크로 이동하는 패킷에 대한 이중화 경로 생성
대상에서 로컬 네트워크로 돌아오는 패킷에 대한 이중화 경로 생성
이 예에서 로컬 네트워크는 192.168.21.0/24입니다. 라우터 R1 및 R2는 인터페이스 Ethernet1에 연결된 이더넷 세그먼트에서 HSRP를 실행하고 있습니다. R1은 대기 우선 순위가 105이고 R2는 대기 우선 순위가 100인 HSRP 활성 라우터로 구성됩니다. R1의 standby 1 track Serial0(s) 명령을 사용하면 HSRP 인터페이스가 모니터링될 수 있습니다.인터페이스 상태가 중단되면 HSRP 우선순위가 낮아집니다.인터페이스 s0의 회선 프로토콜이 다운되면 HSRP 우선순위가 95로 감소합니다(우선순위가 감소되는 기본값은 10임). 따라서 다른 HSRP 라우터 R2의 우선 순위가 더 높습니다(우선 순위 100).R2는 HSRP 활성 라우터가 되며 활성 HSRP 주소 192.169.21.10으로 향하는 트래픽을 유도합니다.
R1의 인터페이스 s0이 작동 중일 때 활성 HSRP 라우터를 보려면 show standby 명령을 실행합니다.
R1#show standby Ethernet1 - Group 1 Local state is Active, priority 105, may preempt Hellotime 3 sec, holdtime 10 sec Next hello sent in 0.338 Virtual IP address is 192.168.21.10 configured Active router is local Standby router is 192.168.21.2 expires in 8.280 Virtual mac address is 0000.0c07.ac01 13 state changes, last state change 00:46:10 IP redundancy name is "hsrp-Et0-1"(default) Priority tracking 1 interface, 1 up: Interface Decrement State Serial0 10 Up R2#show standby Ethernet1 - Group 1 State is Standby 56 state changes, last state change 00:05:13 Virtual IP address is 192.168.21.10 Active virtual MAC address is 0000.0c07.ac01 Local virtual MAC address is 0000.0c07.ac01 (default) Hello time 3 sec, hold time 10 sec Next hello sent in 1.964 secs Preemption enabled Active router is 192.168.21.1, priority 105 (expires in 9.148 sec) Standby router is local Priority 100 (default 100) IP redundancy name is "hsrp-Et0-1" (default) R1#show standby ethernet 1 brief P indicates configured to preempt. | Interface Grp Prio P State Active addr Standby addr Group addr Et1 1 105 P Active local 192.168.21.2 192.168.21.10 R1# R2#show standby ethernet 1 brief P indicates configured to preempt. | Interface Grp Prio P State Active Standby Virtual IP Et1 1 100 P Standby 192.168.21.1 local 192.168.21.10 R2#
show standby 명령은 우선 순위가 105이므로 R1을 활성 HSRP 라우터로 표시합니다. R1은 활성 라우터이므로 R1은 대기 IP 주소 192.168.21.10을 소유합니다. 기본 게이트웨이로 구성된 호스트의 모든 IP 트래픽은 R1을 통한 192.168.21.10 경로를.
라우터 R1에서 s0 인터페이스를 다운하면 R1의 HSRP가 standby track serial 0 명령으로 구성되어 있으므로 HSRP 활성 라우터가 변경됩니다.Serial 0 인터페이스 프로토콜이 다운되면 HSRP는 R1의 우선순위를 10(기본값)에서 95로 줄입니다. R1은 상태를 "Standby"로 변경합니다.R2는 활성 라우터로 대체되며, 따라서 대기 IP 주소 192.168.21.10을 소유합니다. 따라서 192.168.21.0/24의 호스트에서 향하는 모든 트래픽은 R2를 통해 트래픽을 라우팅합니다. debug 및 show 명령 출력은 이를 확인합니다.
R1(config)# interface s0 R1(config-if)# shut %STANDBY-6-STATECHANGE: Standby: 1: Ethernet1 state Active -> Speak %LINK-5-CHANGED: Interface Serial0, changed state to administratively down %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down %STANDBY-6-STATECHANGE: Standby: 1: Ethernet1 state Speak -> Standby %LINK-3-UPDOWN: Interface Serial0, changed state to down: %STANDBY-6-STATECHANGE: Standby: 1: Ethernet1 state Active -> Speak %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down %STANDBY-6-STATECHANGE: Standby: 1: Ethernet1 state Speak -> Standby
R1은 대기 라우터가 됩니다.
R2가 활성 상태로 전환되면 다음과 유사한 출력이 표시됩니다.
R2# %STANDBY-6-STATECHANGE: Standby: 1: Ethernet1 state Standby -> Active
R1 및 R2에서 show standby 명령을 실행하는 경우 인터페이스 s0이 R1에서 중단된 후 대기 우선순위를 확인합니다.
R1#show standby Ethernet1 - Group 1 Local state is Standby, priority 95 (confgd 105), may preempt Hellotime 3 sec, holdtime 10 sec Next hello sent in 0.808 Virtual IP address is 192.168.21.10 configured Active router is 192.168.21.2, priority 100 expires in 9.008 Standby router is local 15 state changes, last state change 00:00:40 IP redundancy name is "hsrp-Et0-1" (default) Priority tracking 1 interface, 0 up: Interface Decrement State Serial0 10 Down (administratively down) R1# R2#show standby Ethernet1 - Group 1 State is Active 57 state changes, last state change 00:00:33 Virtual IP address is 192.168.21.10 Active virtual MAC address is 0000.0c07.ac01 Local virtual MAC address is 0000.0c07.ac01 (bia) Hello time 3 sec, hold time 10 sec Next hello sent in 2.648 secs Preemption enabled Active router is local Standby router is 192.168.21.1, priority 95 (expires in 7.096 sec) Priority 100 (default 100) IP redundancy name is "hsrp-Et0-1" (default) R2# R2# R1#sh standby ethernet 1 brief P indicates configured to preempt. | Interface Grp Prio P State Active addr Standby addr Group addr Et0 1 95 P Standby 192.168.21.2 local 192.168.21.10 R1# R2#sh standby ethernet 1 brief P indicates configured to preempt. | Interface Grp Prio P State Active Standby Virtual IP Et0 1 100 P Active local 192.168.21.1 192.168.21.10 R2#
R1의 대기 우선 순위가 105에서 95로 감소했으며 R2가 활성 라우터가 되었습니다.
ISP-A와 R1 간의 연결이 실패할 경우 HSRP는 R1에서 대기 그룹의 우선순위를 줄입니다. R1은 활성 상태에서 대기 상태로 전환됩니다.R2는 대기 상태에서 활성 상태로 전환됩니다.스탠바이 IP 주소 192.168.21.10은 R2에서 활성화되고, 인터넷으로 트래픽을 보내는 호스트는 R2 및 ISP-B를 사용하여 아웃바운드 트래픽에 대한 대체 경로를 제공합니다.
HSRP standby track 명령에 대한 자세한 내용은 How to Use the standby preempt and standby track Commands를 참조하십시오.
배경 정보 섹션에 정의된 네트워크 정책에 따르면, ISP-A는 기본 경로이고 ISP-B는 192.168.21.0/24으로 향하는 트래픽의 백업 경로이므로(예: ISP-A에 대한 대역폭 연결 확대) R2의 ISP-B에 발표된 BGP 업데이트에 사용자 자신의 AS 번호를 추가하여 ISP-B를 통한 AS 경로가 더 오래 표시되도록 할 수 있습니다.이렇게 하려면 BGP 인접 디바이스 192.168.42.4에 대한 경로 맵을 구성합니다. 이 경로 맵에서 set as-path prepend 명령에 고유한 AS를 추가합니다.이 경로 맵을 인접 192.168.42.4에 대한 아웃바운드 업데이트에 적용합니다.
참고: 프로덕션에서 AS 번호를 두 번 이상 추가해야 알려진 경로가 더 적게 선호됩니다.
R1에서 ISP-A로, R2에서 ISP-B로 BGP 연결이 설정된 경우 네트워크 192.168.21.0에 대한 R6의 BGP 테이블입니다.
R6# show ip bgp 192.168.21.0 BGP routing table entry for 192.168.21.0/24, version 30 Paths: (2 available, best #1) Advertised to non peer-group peers: 192.168.64.4 300 100 192.168.63.3 from 192.168.63.3 (10.5.5.5) Origin IGP, localpref 100, valid, external, best, ref 2 400 100 100 192.168.64.4 from 192.168.64.4 (192.168.64.4) Origin IGP, localpref 100, valid, external
ISP-B의 AS 경로 {400 100 100}과 비교하여 AS 경로 길이가 더 작기 때문에 BGP는 ISP-A를 통해 AS {300 100}로 최적 경로를 선택합니다.ISP-B에서 더 긴 AS 경로 길이가 있는 이유는 R2의 AS 경로 앞에 추가된 컨피그레이션 때문입니다.
R1과 ISP-A 간의 연결이 끊길 경우, R6는 AS 100에서 네트워크 192.168.21.0/24에 연결하려면 ISP-B를 통해 대체 경로를 선택해야 합니다.
R1(config)#interface s0 R1(config-if)#shut %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down
네트워크 192.168.21.0/24에 대한 R6의 BGP 테이블입니다.
R6#show ip bgp 192.168.21.0 BGP routing table entry for 192.168.21.0/24, version 31 Paths: (1 available, best #1) Advertised to non peer-group peers: 192.168.63.3 400 100 100 192.168.64.4 from 192.168.64.4 (192.168.64.4) Origin IGP, localpref 100, valid, external, best
멀티홈 네트워크의 BGP 컨피그레이션에 대한 자세한 내용은 두 개의 서로 다른 서비스 제공자(멀티호밍)가 있는 BGP의 샘플 컨피그레이션을 참조하십시오.
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.