목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

배경 정보

유용한 툴

IOS XE 라우터에서 캡처를 구성하는 방법

패킷 캡처를 사용하여 터널 설정 분석

Transaction When NAT is in Between(NAT가 다음 사이에 있는 경우 트랜잭션)

일반적인 컨트롤 플레인 문제

컨피그레이션 불일치

재전송

소개

이 문서에서는 Cisco IOS® XE 라우터에서 사이트 간 VPN을 협상할 때 패킷 캡처, 기타 툴을 통해 컨트롤 플레인 문제를 해결하는 방법에 대해 설명합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- Cisco IOS® CLI 구성에 대한 기본 지식

- IKEv2 및 IPsec에 대한 기본 지식

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 버전을 기반으로 합니다.

- CSR1000V - 버전 16.12.0을 실행하는 Cisco IOS XE Software.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

배경 정보

패킷 캡처는 VPN 피어 디바이스 간에 패킷이 전송/수신되는지 여부를 확인하는 데 도움이 되는 강력한 도구입니다. 또한 IPsec 디버그와 함께 표시되는 동작이 캡처에 수집된 출력과 일치하는지 확인합니다. 디버그는 논리적 해석이며, 캡처는 피어 간의 물리적 상호 작용을 나타냅니다. 따라서 연결 문제를 확인하거나 취소할 수 있습니다.

유용한 툴

캡처를 구성하고, 출력을 추출하고, 더 자세히 분석하는 데 도움이 되는 유용한 툴이 있습니다. 그 중 일부는 다음과 같습니다.

- Wireshark: 잘 알려진 오픈 소스 패킷 분석기입니다.

- 모니터 캡처: 라우터의 Cisco IOS XE 기능은 캡처를 수집하고 트래픽 흐름의 모습, 수집된 프로토콜 및 타임스탬프를 간단하게 출력할 수 있도록 지원합니다.

IOS XE 라우터에서 캡처를 구성하는 방법

캡처는 수집할 트래픽의 유형, VPN 피어 또는 관련 트래픽의 세그먼트의 소스 및 목적지 주소를 정의하는 확장 ACL(access-list)을 사용합니다. 터널 협상은 NAT-T가 경로를 따라 활성화된 경우 UDP 포트 500 및 포트 4500을 사용합니다. 협상이 완료되고 터널이 설정되면 NAT-T가 활성화된 경우 관심 트래픽은 IP 프로토콜 50(ESP) 또는 UDP 4500을 사용합니다.

컨트롤 플레인 관련 문제를 해결하려면 VPN 피어 IP 주소를 사용하여 터널이 협상되는 방법을 캡처해야 합니다.

config terminal

ip access-list extended <ACL name>

permit udp host <local address> host <peer address>

permit udp host <peer address> host <source address>

exit

exit

구성된 ACL은 캡처된 트래픽의 범위를 좁히는 데 사용되며, 터널 협상에 사용되는 인터페이스에 배치됩니다.

monitor capture <capture name> access-list <ACL name> buffer size <custom buffer size in MB> interface <source interface of teh router> both

캡처가 구성되면 이를 중지하거나 지우거나 다음 명령으로 수집된 트래픽을 추출하도록 조작할 수 있습니다.

- 일반 캡처 정보 확인: 모니터 캡처 표시

- 캡처 시작/중지: 캡처 상한 시작/중지 모니터링

- 캡처에서 패킷을 수집 중인지 확인: show monitor capture cap buffer

- 트래픽의 간략한 출력 보기: show monitor capture cap buffer brief

- 캡처 지우기: 캡처 캡 지우기 모니터링

- 캡처 출력을 추출합니다.

- 모니터 캡 캡 버퍼 덤프

- 모니터 캡처 캡 내보내기 bootflash:capture.pcap

패킷 캡처를 사용하여 터널 설정 분석

앞에서 설명한 것처럼 IPSec 터널을 협상하기 위해 NAT-T가 활성화된 경우 패킷이 포트 500 및 포트 4500을 사용하여 UDP를 통해 전송됩니다. 캡처를 사용하면 협상되는 단계(단계 1 또는 단계 2), 각 디바이스의 역할(개시자 또는 응답자), 방금 생성한 SPI 값 등의 패킷에서 추가 정보를 볼 수 있습니다.

라우터에서 캡처의 간략한 출력을 표시하면 피어 간의 상호 작용이 확인되어 UDP 패킷을 전송합니다.

덤프를 추출하고 라우터에서 pcap 파일을 내보내면 패킷에서 더 많은 정보가 wireshark를 사용하여 표시됩니다.

전송된 첫 번째 IKE_SA_INIT Exchange 패킷의 Internet Protocol 섹션에는 UDP 패킷의 소스 및 목적지 주소가 있습니다. User Datagram Protocol(사용자 데이터그램 프로토콜) 섹션에는 사용된 포트와 Internet Security Association and Key Management Protocol(인터넷 보안 연계 및 키 관리 프로토콜) 섹션에 프로토콜의 버전, 교환 중인 메시지 유형, 디바이스의 역할 및 생성된 SPI가 표시됩니다. IKEv2 디버그를 수집할 때 디버그 로그에 동일한 정보가 표시됩니다.

IKE_AUTH Exchange 협상이 발생하면 페이로드가 암호화되지만 이전에 생성된 SPI 및 생성되는 트랜잭션 유형과 같은 협상에 대한 일부 정보가 표시됩니다.

마지막 IKE_AUTH Exchange 패킷이 수신되면 터널 협상이 완료됩니다.

Transaction When NAT is in Between(NAT가 다음 사이에 있는 경우 트랜잭션)

Nat-transversal은 터널 협상이 발생할 때 볼 수 있는 또 다른 기능입니다. 중간 디바이스에서 터널에 사용된 하나 또는 두 주소를 모두 시작하는 경우, 디바이스는 2단계(IKE_AUTH Exchange)가 협상될 때 UDP 포트를 500에서 4500으로 변경합니다.

A측에서 캡처한 내용:

B측에서 캡처한 내용:

일반적인 컨트롤 플레인 문제

터널 협상에 영향을 미치는 로컬 또는 외부 요인이 있을 수 있으며, 캡처를 통해 식별할 수도 있습니다. 다음 시나리오가 가장 일반적입니다.

컨피그레이션 불일치

이 시나리오는 각 디바이스 1단계 및 2단계 컨피그레이션을 확인하여 해결할 수 있습니다. 그러나 원격 엔드에는 액세스할 수 없는 시나리오가 발생할 수 있습니다. 1단계 또는 2단계에서 패킷 내에서 NO_PROPOSAL_CHOSEN을 전송하는 디바이스를 식별하여 도움말을 캡처합니다. 이 응답은 컨피그레이션에 문제가 있을 수 있으며 어떤 단계를 조정해야 하는지를 나타냅니다.

재전송

IPSec 터널 협상은 협상 패킷이 최종 디바이스 간의 경로를 따라 삭제되었기 때문에 실패할 수 있습니다. 삭제된 패킷은 1단계 또는 2단계 패킷일 수 있습니다. 이 경우 응답 패킷이 예상되는 장치는 마지막 패킷을 재전송하고, 5회 시도 후 응답이 없으면 터널이 종료되어 처음부터 다시 시작됩니다.

터널의 양쪽에 있는 캡처를 통해 트래픽을 차단할 수 있는 항목과 트래픽이 영향을 받는 방향을 확인할 수 있습니다.