소개
이 문서에서는 정적 경로를 설명하고 문제 시나리오를 사용하여 다음 홉 IP 주소에 도달하는 방법을 지정하는 것이 적합한 시기를 보여줍니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
사용되는 구성 요소
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
정적 경로는 다양한 이유로 사용되고, 대상 IP 주소에 대한 동적 경로가 없거나 동적으로 학습된 경로를 재정의하는 경우에 자주 사용됩니다.
기본적으로 정적 경로의 관리 거리는 1이며, 이는 동적 라우팅 프로토콜의 경로보다 우선합니다. AD(Administrative Distance)를 동적 라우팅 프로토콜의 값보다 큰 값으로 늘리면 동적 라우팅이 실패하는 경우 정적 경로가 안전망이 될 수 있습니다. 예를 들어 EIGRP(Enhanced Interior Gateway Routing Protocol) 파생 경로의 기본 AD(Administrative Distance)는 내부 경로의 경우 90, 외부 경로의 경우 170입니다. EIGRP 경로에 의해 재정의되는 정적 경로를 설정하려면 정적 경로에 대한 AD(Administrative Distance)를 170보다 크게 지정합니다.
AD(Administrative Distance)가 높은 정적 경로를 유동 정적 경로라 합니다. 동적으로 학습된 경로가 사라진 경우에만 라우팅 테이블에 설치됩니다. 유동 정적 경로의 예시는 ip route 172.31.10.0 255.255.255.0 10.10.10.2 101입니다.
참고: AD(Administrative Distance) 255는 연결할 수 없는 것으로 간주되고, AD(Administrative Distance)가 255인 정적 경로는 라우팅 테이블에 입력되지 않습니다.
표기 규칙
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
다음 홉 IP 주소가 없는 인터페이스에 대한 정적 경로
인터페이스에 대한 정적 경로를 가리키도록 설정된 경우 다음 홉 IP 주소를 지정하지 마십시오. 인터페이스가 활성 상태인 경우에만 라우팅 테이블에 경로가 삽입됩니다. 정적 경로가 인터페이스를 가리키고 다음 홉 정보가 없는 경우 라우터는 경로 범위 내의 각 호스트가 해당 인터페이스를 통해 직접 연결되는 것으로 간주하므로 이 설정은 권장되지 않습니다. 이러한 정적 경로의 예시는 ip route 0.0.0.0 0.0.0.0 Ethernet0입니다.
이 유형의 설정에서는 라우터가 기본 경로를 통해 찾은 모든 대상에 대해 이더넷에서 ARP(Address Resolution Protocol)를 수행합니다. 이는 라우터가 이러한 대상이 모두 이더넷 0에 직접 연결된 것으로 간주하기 때문입니다. 이러한 정적 경로는 특히 여러 패킷에서 여러 대상 서브넷에 대해 사용되는 경우 프로세서 사용률이 높고 메모리 할당 실패가 발생하면서 ARP 캐시가 매우 커질 수 있습니다. 따라서 이러한 종류의 정적 경로는 권장되지 않습니다.
직접 연결된 인터페이스에서 다음 홉 주소가 지정되면 라우터가 각 대상 주소에 대해 ARP를 수행하지 않습니다. ip route 0.0.0.0 0.0.0.0 Ethernet0 192.168.1.1을 예시로 들 수 있습니다. 직접 연결된 다음 홉 주소만 지정되지만, 이 문서에서 설명하는 이유로 인해 권장되지 않습니다. 직접 연결된 다음 홉 주소는 지정할 필요가 없습니다. 하지만 원격 다음 홉 주소와 원격 다음 홉이 반복되는 인터페이스를 지정할 수 있습니다.
다음 홉이 있는 인터페이스가 중단되고 재귀 경로를 통해 다음 홉에 연결할 수 있게 될 가능성이 있는 경우, 다음 홉 IP 주소와 다음 홉이 있을 수 있는 대체 인터페이스를 모두 지정해야 합니다. ip route 10.0.0.1 255.255.255.255 Serial 3/3 192.168.20.1을 예시로 들 수 있습니다. 대체 인터페이스를 추가하면 더욱 결정론적인 정적 경로 설치가 가능합니다.
유동 정적 경로 예시
이 예시에서는 유동 정적 경로를 사용하는 방법을 설명하고 정적 경로 명령을 사용하여 아웃바운드 인터페이스와 다음 홉 주소를 모두 지정해야 함을 설명합니다.
문제
이 이미지에 나와 있는 네트워크 설정을 사용하는 경우 하나의 호스트인 172.31.10.1이 인터넷에 대한 연결성을 가집니다. 이 예시에서 호스트는 원격 인터넷 호스트 10.100.1.1에 연결합니다.
이 설정을 사용할 때 기본 링크는 호스트 172.31.10.1과 인터넷을 오가는 트래픽에 대해 R1의 시리얼 포트 1/0과 R2의 시리얼 포트 1/0 사이의 링크입니다. 여기서 호스트 10.100.1.1은 인터넷 호스트의 예시로 사용됩니다. R1의 시리얼 포트 2/0과 R2의 시리얼 포트 2/0 사이의 링크는 백업 링크입니다. 백업 링크는 기본 링크가 실패하는 경우에만 사용됩니다. 이는 기본 링크를 가리키는 정적 경로와 백업 링크를 가리키는 유동 정적 경로를 사용하여 배포됩니다.
R1에는 동일한 대상(172.31.10.0/24)에 대한 2개의 정적 경로가 있습니다. 한 경로는 일반 정적 경로이고 다른 경로는 유동 정적 경로입니다. 이 경로는 백업, 또는 LAN의 대상 네트워크에 대한 리던던시 경로입니다. 이 시나리오의 문제는 기본 링크가 중단될 때 경우 라우팅 테이블에 유동 정적 경로가 설치되지 않는다는 것입니다.
R1의 설정:
hostname R1
!
interface Serial1/0
ip address 10.10.10.1 255.255.255.252
!
interface Serial2/0
ip address 10.10.20.1 255.255.255.252
!
ip route 10.0.0.0 255.0.0.0 192.168.10.2
! This is the primary route to get to hosts on the internet.
ip route 172.31.10.0 255.255.255.0 10.10.10.2
! This is the preferred route to the LAN.
ip route 172.31.10.0 255.255.255.0 10.10.20.2 250
! This is the floating static route to the LAN.
R2의 설정:
hostname R2
!
interface Serial1/0
ip address 10.10.10.2 255.255.255.252
!
interface Serial2/0
ip address 10.10.20.2 255.255.255.252
!
ip route 0.0.0.0 0.0.0.0 10.10.10.1
ip route 0.0.0.0 0.0.0.0 10.10.20.1 250
!
R1의 라우팅 테이블:
R1#show ip route
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
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 5 subnets, 3 masks
S 10.0.0.0/8 [1/0] via 192.168.10.2
C 10.10.10.0/30 is directly connected, Serial1/0
L 10.10.10.1/32 is directly connected, Serial1/0
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 [1/0] via 10.10.10.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
호스트에서 인터넷 호스트 10.100.1.1로 ping을 수행하면 예상한 대로 작동합니다.
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 73/78/80 ms
호스트에서 인터넷 호스트 10.100.1.1로의 트레이스라우트(traceroute)는 다음과 같습니다.
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 10.10.10.1 31 msec 39 msec 39 msec
3 192.168.10.2 80 msec * 80 msec
주로 링크 10.10.10.0/30이 사용됩니다.
페일오버를 테스트하기 위해 R1에서 시리얼 포트 1/0을 종료한 경우 R1에서는 로컬 LAN 172.31.10.0에 유동 정적 경로를 설치하고, R2에서는 0.0.0.0~10.10.20.1에 유동 정적 경로를 설치해야 합니다. 또한 백업 링크를 따라 트래픽이 이동해야 합니다.
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#interface serial1/0
R1(config-if)#shutdown
R1(config-if)#end
R1#
하지만 LAN 172.31.10.0/24의 정적 경로는 R1의 라우팅 테이블에 유지됩니다.
R1#show ip route
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
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 3 subnets, 3 masks
S 10.0.0.0/8 [1/0] via 192.168.10.2
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 [1/0] via 10.10.10.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
R1#show ip route 172.31.10.0
Routing entry for 172.31.10.0/24
Known via "static", distance 1, metric 0
Routing Descriptor Blocks:
* 10.10.10.2
Route metric is 0, traffic share count is 1
R1#show ip route 10.10.10.2
Routing entry for 10.0.0.0/8
Known via "static", distance 1, metric 0
Routing Descriptor Blocks:
* 192.168.10.2
Route metric is 0, traffic share count is 1
호스트의 ping 및 traceroute는 더 이상 작동하지 않습니다.
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
…
유동 정적 경로가 R1에 설치되지 않으며 시리얼 포트 1/0 링크가 종료된 경우에도 기본 정적 경로는 R1의 라우팅 테이블에 계속 존재합니다. 이는 정적 경로가 재귀적이기 때문입니다. 다음 홉에 대한 경로가 있는 경우 항상 라우팅 테이블에 정적 경로를 유지합니다.
이 문제 시나리오에서는 기본 링크가 중단되어 있으므로 AD(Administrative Distance)가 250인 유동 정적 경로가 R1의 라우팅 테이블에 설치되어 있다고 예상할 수 있습니다. 하지만 일반 정적 경로가 라우팅 테이블에 남아 있으므로 유동 정적 경로는 라우팅 테이블에 설치되지 않습니다. 라우팅 테이블에 있는 정적 경로 10.0.0.0/8을 통해 다음 홉 IP 주소 10.10.10.2가 성공적으로 (192.168.10.2로) 재귀됩니다.
솔루션
다음 홉이 다른 정적 경로로 재귀할 수 없는 R1에서 정적 경로를 설정합니다. 시스코에서는 정적 경로에 대해 아웃바운드 인터페이스와 다음 홉 주소를 모두 설정할 것을 권장합니다. 시리얼 인터페이스의 경우, 시리얼 인터페이스가 지점 간 인터페이스이므로 아웃바운드 인터페이스만 지정해도 충분합니다. 아웃바운드 인터페이스가 이더넷 인터페이스인 경우 아웃바운드 인터페이스와 다음 홉 IP 주소를 모두 설정합니다.
이 예시는 아웃바운드 인터페이스 지정을 통해 설정된 LAN에 대한 정적 경로입니다.
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#no ip route 172.31.10.0 255.255.255.0 10.10.10.2
R1(config)#ip route 172.31.10.0 255.255.255.0 Serial1/0
R1(config)#end
R1#show ip route
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
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 3 subnets, 3 masks
S 10.0.0.0/8 [1/0] via 192.168.10.2
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 [250/0] via 10.10.20.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
이제 호스트에서 인터넷 호스트로의 ping 및 traceroute가 작동하며 백업 링크가 사용됩니다.
R1#show ip route 172.31.10.0
Routing entry for 172.31.10.0/24
Known via "static", distance 250, metric 0 (connected)
Routing Descriptor Blocks:
* 10.10.20.2
Route metric is 0, traffic share count is 1
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 76/79/80 ms
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 10.10.20.1 38 msec 39 msec 40 msec
3 192.168.10.2 80 msec * 80 msec
결론
시스코에서는 정적 경로를 설정할 때 아웃바운드 인터페이스와 다음 홉 IP 주소를 지정할 것을 권장합니다. 아웃바운드 인터페이스가 지점 간 링크 유형(예: 시리얼 링크)인 경우 다음 홉 IP 주소를 지정할 필요가 없습니다.