ASA packet-tracer로 VPN 흐름을 모델링하는 방법
packet-tracer는 한 가지 질문에 답합니다. 이 tuple이 여기서 허용되는가. 내부 흐름을 쓰고, 우회 옵션을 읽고, ALLOW가 무엇을 입증하지 못하는지 아십시오.
ASA의 packet-tracer는 좁은 질문에 답합니다. 이 패킷이 여기서 이 tuple로 들어올 때 허용되는지, 그리고 어디로 가는지. 그것은 원격 끝이 무엇인가를 받는지는 답하지 않습니다. 흔한 실수는 터널 안에서 흐르는 애플리케이션을 시험하려 하면서 바깥 IKE tuple을 넣는 것입니다. 먼저 tuple을 고치고, 단계를 읽고, 그다음 시뮬레이터가 볼 수 없는 모든 것에 대해 실제 증거를 확보하십시오.
아래 설명은 ACL, NAT 규칙, tunnel-group 컨텍스트가 눈앞에 있다고 가정합니다. 그것들이 없으면 출력은 확인할 수 없는 정책을 서술할 뿐입니다.
1단계: 내부 흐름을 쉬운 말로 쓰기
무엇이든 입력하기 전에 애플리케이션을 설명하십시오. 내부 호스트가 원격 게이트웨이 뒤의 서버로 SSH를 여는 것은 특정 원본 포트를 가진 하나의 내부 TCP 흐름입니다. ACL과 VPN 필터가 평가하는 흐름이 바로 그것이므로, 입력해야 하는 흐름도 그것입니다.
그것을 한 문장으로 쓰고, 그다음 필드별로 번역하십시오:
packet-tracer input inside tcp 10.30.0.25 53000 10.40.0.50 22 detailed2단계: 인그레스와 방향 고르기
인그레스는 패킷이 도착하는 인터페이스이지, 떠나는 인터페이스가 아닙니다. 연결을 시작하는 LAN 호스트라면 inside 인터페이스입니다. 같은 세션의 반환 패킷이라면 outside 인터페이스이고 tuple은 뒤집힙니다. 목적지를 원본으로 입력하는 것은 설득력 있지만 무관한 ALLOW를 얻는 두 번째로 흔한 방법입니다.
포트에도 방향이 있습니다. 시작된 요청에서는 서비스 포트가 목적지 필드에 들어가고, 클라이언트의 임시 포트는 원본 필드에 들어갑니다. TCP 목적지 500인 모델은 500에서 수신하는 TCP 애플리케이션을 설명합니다. 명령에 숫자가 나타난다고 해서 IKE 시험이 되지는 않습니다.
3단계: 단계를 순서대로 읽기
출력의 각 단계는 소유자가 있는 결정입니다. 경로 조회, ACL, NAT, 그다음 VPN 또는 터널 선택입니다. 인쇄된 순서대로 읽고 설계와 어긋나는 첫 단계에서 멈추십시오.
NAT는 사람들을 자주 넘어뜨립니다. 변환된 원본이 터널용 트래픽을 고르는 crypto ACL 밖으로 떨어지면 흐름은 허용되지만 결코 캡슐화되지 않을 수 있습니다. 추적은 변환된 주소를 인쇄하므로 원래 주소가 아니라 터널의 관심 트래픽과 비교하십시오.
4단계: 어떤 우회를 선택했는지 확인하기
detailed 형식은 검사를 건너뛰는 옵션을 받으며, Cisco는 ACL, VPN 필터, uRPF, IPsec 스푸핑 검사를 포괄하는 bypass-checks 옵션을 문서화합니다. 그것들을 우회해 얻은 ALLOW는 경로와 NAT가 작동한다는 뜻이지, 정책이 실제 패킷을 허용한다는 뜻이 아닙니다. 결과 옆에 옵션을 기록하십시오.
정책 답이 필요하면 우회 없이 실행하십시오. 라우팅 질문을 분리하는 중이라면 우회와 함께 실행하고 결과를 라우팅 답으로 표시하십시오.
5단계: 실제 교환으로 간극을 메우기
시뮬레이션된 허용은 ASA에서 멈춥니다. 원격 게이트웨이가 패킷을 복호화했는지, 서버가 연결을 받아들였는지, 응답이 돌아왔는지는 별개의 관찰입니다. 엔드포인트 카운터를 사용하거나 승인된 경로에서 좁은 캡처.
일부 trace 및 replay 옵션은 패킷을 전송하거나 상태를 유지합니다. 모든 변형을 읽기 전용 조회로 취급하지 말고, 사용 중인 릴리스와 승인된 진단 절차에 대해 문서화된 동작을 따르십시오.
추적이 여전히 말해 주지 못하는 것
한 메모에 네 가지를 남기십시오: tuple, 일치한 NAT 규칙, 흐름을 실어야 할 터널 또는 정책, 방향에 특정한 관찰입니다. 그것들이 없으면 나중의 엔지니어는 로컬 정책 결정을 확립된 제어 평면과 작동하는 서비스에서 분리할 수 없습니다. 첫 실패 뒤의 성공도 그 사이에 터널이 올라와야 했다는 증거가 아닙니다. 단계와 상태 변화를 기록하십시오.
내부 tuple에서 시작하고, 설계와 모순되는 첫 단계에서 멈추고, 그다음에야 엔드포인트 증거로 손을 뻗으십시오. 추적은 정책의 신탁이지 배달 확인증이 아닙니다.