ARP를 끄면 VPN이 끊길까? 외부 홉에서는 끊길 수 있다
터널은 IP 패킷을 나르지만, 암호화된 연결에는 여전히 로컬 다음 홉 조회가 필요하다. 동적 해석과 유지되는 항목 중에서 선택하라.
{같은 연결 안에서 두 패킷이 흐르며 서로 다른 규칙을 따른다. 하나는 터널이 나르는 사설 패킷으로, 가상 인터페이스가 이더넷 헤더 없이 처리한다. 다른 하나는 접속 링크를 통해 장비를 떠나는 암호화된 패킷이며, 이것은 여전히 하드웨어 주소로 해석되는 로컬 다음 홉이 필요하다. 이 둘을 혼동하면 사람들은 엉뚱한 인터페이스에서 주소 해석을 끄고서는 터널이 왜 시작되지 않는지 의아해한다.}
{패킷 속의 패킷, 두 가지 전달 모델}
{라우티드 모드의 가상 인터페이스는 IP 패킷을 받아들인다. 이더넷 헤더도, 브로드캐스트 도메인도, 내부에서 해석할 주소도 없으므로 안쪽 패킷은 터널 자체가 전달한다. 접속 네트워크에서 벌어지는 일은 별개의 전달 계층이다.}
inner packet: private address -> tunnel device -> the VPN process
outer packet: endpoint address -> access route -> next-hop hardware address
{그 바깥 패킷은 이더넷 인터페이스를 떠날 때 평범한 유니캐스트 프레임이며, 다음 홉의 목적지 하드웨어 주소가 필요하다. 주소 해석이 그것을 제공하고, 다음 홉은 보통 원격 서버가 아니라 로컬 게이트웨이다. 조회 대상이 엔드포인트가 아니라 게이트웨이라는 점을 이해하는 것이 진단의 대부분이다. 무엇이든 바꾸기 전에 두 주소를 적어 두어라.}
{정말로 중요한 이웃을 찾아라}
{라우팅 테이블에 엔드포인트가 어느 다음 홉을 쓰는지 물은 뒤, 그 홉에 대해 이웃 테이블을 살펴라. 엔드포인트 자체는 로컬 링크에 있지 않으므로 그곳에 거의 나타나지 않는다.}
ip route get 198.51.100.20
ip neigh show 192.168.0.1
{항목이 있고 도달 가능하면 바깥 경로는 정상이며 결함은 다른 곳에 있다. 항목이 없거나 실패 상태라면 링크, 게이트웨이 주소, 또는 해석을 막는 정책을 살펴야 한다. 터널의 암호 설정을 바꾸는 것은 어느 경우에도 도움이 되지 않는다. 이웃 테이블이 보고하는 상태 문자열을 기록해 두어라. 진행 중인 시도와 영구적 실패를 구분해 주기 때문이다.}
{학습된 항목은 의존성을 숨길 수 있다}
{캐시된 항목은 그것을 만든 것이 사라진 뒤에도 한동안 작동하므로, 변경 후 몇 분 뒤에 한 시험은 잘못된 이유로 통과할 수 있다. 해석이 불필요하다고 결론짓기 전에 항목이 만료되기를 기다리거나 의도적으로 삭제하라.}
{반대의 실수도 흔하다. 해석되지 않은 항목을 터널이 고장 났다는 증거로 받아들이는 것이다. 실제로 그것은 로컬 세그먼트, 중복 주소, 또는 응답을 나르는 프레임을 버리는 포트 보안 규칙을 가리킨다. VPN 구성을 건드리기 전에 스위치 포트를 확인하라.}
{타이밍을 증거로 읽어라. 해석되었다가 반복해서 만료되는 항목은 흔들리는 링크나 한 주소에 응답하는 두 장비를 시사하고, 전혀 해석되지 않는 항목은 게이트웨이 주소나 접속 포트의 필터링을 가리킨다.}
{동적 해석과 고정 항목 중에서 결정하라}
{동적 해석이 기본인 데는 이유가 있다. 게이트웨이가 교체되면 하드웨어를 따라가며 누구와도 조정할 필요가 없다. 정적 항목이 정당한 경우는 네트워크가 의도적으로 관리되고 주소와 하드웨어 주소의 짝이 문서화된 설계의 일부일 때다.}
| Approach | Good fit | Cost you accept |
|---|---|---|
| Dynamic resolution | Laptops, changing networks, anything with a spare minute to recover | A short outage while the entry is relearned |
| Permanent entry | Fixed appliances where the pairing is controlled and recorded | A silent failure the day the hardware changes |
{어느 쪽이든 그 선택은 바깥 패킷을 나르는 접속 인터페이스에 적용하라. 그 인터페이스에서 해석을 끄는 것은 터널을 강화하지 않는다. 터널을 나르는 게이트웨이에 도달할 능력을 클라이언트에서 빼앗을 뿐이며, 그 실패는 로컬 주소 문제가 아니라 죽은 VPN처럼 보인다.}
{다른 스택도 염두에 두어라}
{IPv6는 같은 형태의 주소 해석을 쓰지 않고 이웃 탐색을 쓴다. 계층에 관한 질문은 그대로다. 실제 바깥 패킷은 어떻게 로컬 다음 홉에 도달하며, 답이 최신임을 무엇이 증명하는가.}
{설계가 완성되었다고 선언하기 전에 다른 스택에서도 같은 두 사실을 확인하라. 두 체계를 모두 나르는 터널에는 고려할 바깥 경로가 둘 있기 때문이다. 어느 것을 검증했고 어느 것을 가정했는지 기록하라.}