소개
이 문서에서는 기본 링크가 중단되었지만 백업 경로를 계속 사용할 수 있는 특정 상황에서 트래픽 블랙홀링을 초래하는 set tloc-list 작업의 부적절한 정책 애플리케이션에 대해 설명합니다.
참고: 이 문서에 제시된 모든 명령 출력은 vEdge 라우터에서 제공됩니다. 그러나 IOS®-XE SDWAN 소프트웨어를 실행하는 라우터에서는 트러블슈팅 방식이 동일하게 유지됩니다. IOS®-XE SDWAN 소프트웨어에서 동일한 출력을 가져오려면 sdwan 키워드를 사용합니다. 예를 들어 show omp 경로 대신 show sdwan omp 경로입니다.
배경 정보
데모를 위해 그리고 나중에 설명하는 문제를 더 잘 이해하기 위해 다음 토폴로지 다이어그램을 고려하십시오.
그 외에도 시스템 설정을 요약한 표가 있습니다.
호스트 이름 |
사이트 ID |
시스템 IP |
베지1 |
13 |
10.155.0.118 |
가장자리3 |
13 |
10.155.0.120 |
베지4 |
4 |
10.155.0.50 |
vsmart1 |
1 |
10.155.0.3 |
vEdge1 및 vEdge3 모두 서비스 측 VPN의 다음 홉을 가리키는 고정 경로가 구성되어 있습니다.
vpn 40
ip route 10.223.115.101/32 192.168.40.10
!
이러한 목표를 달성하려면
1. vEdge1 메트로 이더넷 링크를 "사이트 13"으로 들어가는 인그레스 트래픽의 기본 링크로 만듭니다.
2. 미터vEdge3 metro-ethernet 링크를 "site 13"으로 들어가는 인그레스 트래픽의 두 번째 선호 링크로 만듭니다.
3. vEdge1 공용 인터넷 링크를 "사이트 13"에 들어가는 인그레스 트래픽의 세 번째 기본 링크로 만듭니다.
4. vEdge3 공용 인터넷 링크를 "사이트 13"에 들어가는 인그레스 트래픽에 대해 가장 선호되지 않는 링크로 만듭니다.
이 vSmart 제어 정책은 다음과 같이 구성됩니다.
policy
lists
tloc-list SITE13_TLOC_PREF
tloc 10.155.0.118 color metro-ethernet encap ipsec preference 200
tloc 10.155.0.118 color public-internet encap ipsec preference 100
tloc 10.155.0.120 color metro-ethernet encap ipsec preference 150
tloc 10.155.0.120 color public-internet encap ipsec preference 50
!
prefix-list SITE13_PREFIX
ip-prefix 10.223.115.101/32
!
site-list site13
site-id 13
!
control-policy TE_POLICY_2_SITE4
sequence 10
match route
prefix-list SITE13_PREFIX
!
action accept
set
tloc-list SITE13_TLOC_PREF
!
!
!
default-action accept
!
!
apply-policy
site-list site4
control-policy TE_POLICY_2_SITE4 out
!
!
문제
정상 조건
vSmart는 다음 홉으로 4개의 가능한 TLOC을 사용하여 이러한 경로를 가져옵니다.
vsmart1# show omp routes 10.223.115.101/32 | b PATH
PATH ATTRIBUTE
VPN PREFIX FROM PEER ID LABEL STATUS TYPE TLOC IP COLOR ENCAP PREFERENCE
--------------------------------------------------------------------------------------------------------------------------------------
40 10.223.115.101/32 10.155.0.118 35 1002 C,R installed 10.155.0.118 metro-ethernet ipsec -
10.155.0.118 37 1002 C,R installed 10.155.0.118 public-internet ipsec -
10.155.0.120 35 1002 C,R installed 10.155.0.120 metro-ethernet ipsec -
10.155.0.120 37 1002 C,R installed 10.155.0.120 public-internet ipsec -
에 따라 보급된 경로의 기본 설정을 지정합니다.
vsmart1# show omp routes 10.223.115.101/32 detail | nomore | b ADVERTISED | b "peer 10.155.0.50" | i Attributes\|originator\|\ tloc\|preference
Attributes:
originator 10.155.0.118
tloc 10.155.0.120, public-internet, ipsec
preference 50
Attributes:
originator 10.155.0.118
tloc 10.155.0.120, metro-ethernet, ipsec
preference 150
Attributes:
originator 10.155.0.118
tloc 10.155.0.118, public-internet, ipsec
preference 100
Attributes:
originator 10.155.0.118
tloc 10.155.0.118, metro-ethernet, ipsec
preference 200
vEdge4는 적절한 TLOC를 선택하고 라우팅 테이블에 이 경로를 설치합니다.
vedge4# show ip routes 10.223.115.101/32 | b PROTOCOL
PROTOCOL NEXTHOP NEXTHOP NEXTHOP
VPN PREFIX PROTOCOL SUB TYPE IF NAME ADDR VPN TLOC IP COLOR ENCAP STATUS
---------------------------------------------------------------------------------------------------------------------------------------------
40 10.223.115.101/32 omp - - - - 10.155.0.118 metro-ethernet ipsec F,S
트래픽 포워딩은 의도한 대로 작동합니다.
vedge4# traceroute vpn 40 10.223.115.101
Traceroute 10.223.115.101 in VPN 40
traceroute to 10.223.115.101 (10.223.115.101), 30 hops max, 60 byte packets
1 192.168.40.4 (192.168.40.4) 0.835 ms 0.984 ms 1.097 ms
2 192.168.40.10 (192.168.40.10) 2.955 ms 3.056 ms 3.218 ms
결함 상태
결국 vEdge1에서 장애가 발생하고 서비스측 LAN 연결 인터페이스가 중단됩니다(또는 테스트를 수행하기 위해 관리자가 종료한 경우, 결과가 동일합니다).
vedge1# show interface vpn 40
IF IF IF TCP
AF ADMIN OPER TRACKER ENCAP PORT SPEED MSS RX TX
VPN INTERFACE TYPE IP ADDRESS STATUS STATUS STATUS TYPE TYPE MTU HWADDR MBPS DUPLEX ADJUST UPTIME PACKETS PACKETS
----------------------------------------------------------------------------------------------------------------------------------------------------------
40 ge0/4 ipv4 192.168.40.4/24 Up Down NA null service 1500 00:50:56:be:91:36 - - 1420 - 129768 0
vEdge1에는 10.223.115.101/32 경로에 대한 유효한 next-hop이 없으므로 이 경로는 라우팅 및 포워딩 테이블에서 제거되고 더 이상 vSmart에 알려지지 않습니다.
vedge1# show ip routes 10.223.115.101/32 | b PROTO
PROTOCOL NEXTHOP NEXTHOP NEXTHOP
VPN PREFIX PROTOCOL SUB TYPE IF NAME ADDR VPN TLOC IP COLOR ENCAP STATUS
---------------------------------------------------------------------------------------------------------------------------------------------
40 10.223.115.101/32 static - - 192.168.40.21 - - - - I
vedge1# show ip fib vpn 40 | i 10.223.115.101/32
vedge1#
vedge1# show omp routes 10.223.115.101/32 detail | nomore | b ADVERTISED
vedge1#
그와 동시에 vEdge3은 여전히 이 경로를 광고합니다(이는 예상).
vedge3# show omp routes 10.223.115.101/32 detail | nomore | b ADVERTISED
ADVERTISED TO:
peer 10.155.0.3
Attributes:
originator 10.155.0.120
label 1002
path-id 35
tloc 10.155.0.120, metro-ethernet, ipsec
ultimate-tloc not set
domain-id not set
site-id 13
overlay-id 1
preference not set
tag not set
origin-proto static
origin-metric 0
as-path not set
unknown-attr-len not set
Attributes:
originator 10.155.0.120
label 1002
path-id 37
tloc 10.155.0.120, public-internet, ipsec
ultimate-tloc not set
domain-id not set
site-id 13
overlay-id 1
preference not set
tag not set
origin-proto static
origin-metric 0
as-path not set
unknown-attr-len not set
vSmart는 이제 예상대로 vEdge3에서 2개의 경로를 가져옵니다.
vsmart1# show omp routes 10.223.115.101/32 | b PATH
PATH ATTRIBUTE
VPN PREFIX FROM PEER ID LABEL STATUS TYPE TLOC IP COLOR ENCAP PREFERENCE
--------------------------------------------------------------------------------------------------------------------------------------
40 10.223.115.101/32 10.155.0.120 35 1002 C,R installed 10.155.0.120 metro-ethernet ipsec -
10.155.0.120 37 1002 C,R installed 10.155.0.120 public-internet ipsec -
그러나 이와 동시에 vSmart는 다음과 같은 사실을 계속 알립니다.
vsmart1# show omp routes 10.223.115.101/32 detail | nomore | b ADVERTISED | b "peer 10.155.0.50" | i Attributes\|originator\|\ tloc\|preference
Attributes:
originator 10.155.0.120
tloc 10.155.0.120, public-internet, ipsec
preference 50
Attributes:
originator 10.155.0.120
tloc 10.155.0.120, metro-ethernet, ipsec
preference 150
Attributes:
originator 10.155.0.120
tloc 10.155.0.118, public-internet, ipsec
preference 100
Attributes:
originator 10.155.0.120
tloc 10.155.0.118, metro-ethernet, ipsec
preference 200
보시다시피, 유일한 생성자가 변경되었으며 이는 tloc 목록 작업이 (대략적으로 말해서) "다음 홉 설정"과 비슷하게 작동하고 잘못된 TLOC를 강제로 설정하므로 연결 가능성이 없어지므로 예상된 동작입니다.
vedge4# ping vpn 40 10.223.115.101 count 5
Ping in VPN 40
PING 10.223.115.101 (10.223.115.101) 56(84) bytes of data.
^C
--- 10.223.115.101 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3999ms
vedge4# traceroute vpn 40 10.223.115.101
Traceroute 10.223.115.101 in VPN 40
traceroute to 10.223.115.101 (10.223.115.101), 30 hops max, 60 byte packets
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *
솔루션
해결책으로, 잘못된 TLOC next-hop 정보를 설정하지 않기 위해 이 접근 방식이 제안됩니다.
policy
lists
tloc-list vedge1-tlocs
tloc 10.155.0.118 color metro-ethernet encap ipsec
tloc 10.155.0.118 color public-internet encap ipsec
!
tloc-list vedge1-tlocs-preference
tloc 10.155.0.118 color metro-ethernet encap ipsec preference 200
tloc 10.155.0.118 color public-internet encap ipsec preference 100
!
tloc-list vedge3-tlocs
tloc 10.155.0.120 color metro-ethernet encap ipsec
tloc 10.155.0.120 color public-internet encap ipsec
!
tloc-list vedge3-tlocs-preference
tloc 10.155.0.120 color metro-ethernet encap ipsec preference 150
tloc 10.155.0.120 color public-internet encap ipsec preference 50
!
!
!
policy
control-policy TE_POLICY_2_SITE4
sequence 10
match route
prefix-list SITE13_PREFIX
tloc-list vedge1-tlocs
!
action accept
set
tloc-list vedge1-tlocs-preference
!
!
!
sequence 20
match route
prefix-list SITE13_PREFIX
tloc-list vedge3-tlocs
!
action accept
set
tloc-list vedge3-tlocs-preference
!
!
!
default-action accept
!
!
이러한 정책은 상황을 개선하고 잘못된 TLOC next-hop으로 경로의 광고를 방지합니다.
vsmart1# show omp routes 10.223.115.101/32 detail | nomore | b ADVERTISED | b "peer 10.155.0.50" | i Attributes\|originator\|\ tloc\|preference
Attributes:
originator 10.155.0.120
tloc 10.155.0.120, public-internet, ipsec
preference 50
Attributes:
originator 10.155.0.120
tloc 10.155.0.120, metro-ethernet, ipsec
preference 150
Attributes:
originator 10.155.0.120
tloc 10.155.0.120, public-internet, ipsec
preference not set
그 결과, 장애 시나리오 전반에 걸친 도달 가능성이 보존됩니다.
vedge4# traceroute vpn 40 10.223.115.101
Traceroute 10.223.115.101 in VPN 40
traceroute to 10.223.115.101 (10.223.115.101), 30 hops max, 60 byte packets
1 192.168.40.6 (192.168.40.6) 0.458 ms 0.507 ms 0.617 ms
2 192.168.40.10 (192.168.40.10) 1.928 ms 1.976 ms 2.069 ms
vedge4# ping vpn 40 10.223.115.101
Ping in VPN 40
PING 10.223.115.101 (10.223.115.101) 56(84) bytes of data.
64 bytes from 10.223.115.101: icmp_seq=1 ttl=254 time=0.702 ms
64 bytes from 10.223.115.101: icmp_seq=2 ttl=254 time=0.645 ms
64 bytes from 10.223.115.101: icmp_seq=3 ttl=254 time=0.691 ms
64 bytes from 10.223.115.101: icmp_seq=4 ttl=254 time=0.715 ms
64 bytes from 10.223.115.101: icmp_seq=5 ttl=254 time=0.603 ms
^C
--- 10.223.115.101 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 0.603/0.671/0.715/0.044 ms