게스트와 Mac을 가느다란 문 하나로 이어진 두 개의 별도 네트워크로 다루세요. 가상 머신은 VPN 클라이언트와 자체 인터넷 경로를 유지하고, Mac은 호스트 전용 어댑터와 전달된 포트 하나만으로 정확히 하나의 서비스에 도달합니다. 그 밖의 것은 건너가면 안 됩니다. 단계를 순서대로 따르고 하나라도 실패하면 멈추세요. 뒤의 모든 단계는 앞의 단계가 유지되었다고 가정하기 때문입니다.

무엇이든 바꾸기 전에 두 경로를 기록하세요

게스트에서 ipconfig /all는 VPN 전송을 나르는 어댑터와 가상 네트워크의 DHCP에서 받은 주소를 보여 줍니다. Mac에서는 하이퍼바이저가 해당 세그먼트를 위해 만든 가상 인터페이스를 기록하세요. VMware Fusion에서는 호스트 전용 장치가 보통 vmnet1이고 Parallels는 자체 이름을 붙입니다. 거기서 누가 주소를 나눠 주는지 확인한 뒤 전부 적어 두세요. 가상 네트워크를 다시 만들면 호스트 전용 서브넷이 자주 다시 할당되기 때문입니다. 가상 머신의 네트워크 모드는 기억이 아니라 하이퍼바이저에서 확인하세요. 인터넷 쪽 어댑터에는 공유 또는 NAT 모드, Mac 쪽 어댑터에는 호스트 전용 모드라는 구성이 이 단계들의 전제입니다.

어댑터 둘, 목적 둘. 어댑터 하나가 Mac과 인터넷을 모두 맡도록 섞는 것이 가느다란 문을 라우팅되는 경로로 바꿉니다.

먼저 게스트 자체의 VPN을 확인하세요

Windows 안에서 클라이언트를 시작하고 벤더가 문서화한 어떤 시험이든 그것으로 종료되는지 확인하세요. 게스트 혼자 사설 서비스에 도달하기 전에는 넘어가지 마세요. 끊긴 터널 위에 겹친 전달 문제는 원인이 둘이고 쓸모 있는 오류 메시지가 없기 때문입니다. 서비스가 게스트 내부에서 어떤 사설 주소로 해석되는지 기록하세요. 전달 규칙이 이름 붙여야 하는 것은 그 주소뿐입니다.

클라이언트가 전체 터널을 밀어 넣으면 호스트 전용 어댑터는 여전히 로컬 트래픽을 나릅니다. 다만 사설 목적지가 주소를 바꾸는 방식으로 터널에 붙잡히지 않는지 확인하세요. 분할 터널 프로필을 쓰면 더 간단해지며 VPN을 소유한 쪽에 요청할 만합니다.

호스트 전용 구간을 추가하고 단독으로 시험하세요

게스트에 호스트 전용 어댑터를 연결하고, 다른 무엇도 쓰지 않는 서브넷에서 고정 주소를 주고, Mac이 ping할 수 있는지 확인하세요. VPN이 연결된 상태와 끊긴 상태 모두에서 시험하세요. 주소가 둘 다를 견뎌야 하기 때문입니다. 터널이 올라와 있는 동안에만 응답하는 게스트에는 아직 찾지 못한 라우팅 문제가 있습니다.

Windows는 새 어댑터를 공용 네트워크로 분류할 수 있고, 그러면 기본적으로 들어오는 트래픽이 차단됩니다. 다른 무엇을 디버깅하기 전에 프로필을 설정하세요.

서브넷이 아니라 포트 하나를 전달하세요

일반 IP 전달보다 전달된 포트 하나를 선호하세요. Windows에는 netsh interface portproxy가 있으며, 이는 대기 중인 포트를 대상 호스트와 포트로 전달하고 IP Helper 서비스가 실행 중이어야 합니다.

listenaddress는 항상 호스트 전용 주소로 설정하세요. 이를 빼면 모든 인터페이스에 묶여, 가상 머신이 있는 어떤 네트워크에도 서비스가 노출됩니다. 호스트 전용 인터페이스와 그 한 포트로 범위를 좁힌 방화벽 규칙을 추가해, 수신자와 허가가 일치하게 하세요. 프록시를 아는 애플리케이션이라면 게스트 안의 작은 프록시를 원할 수 있습니다. 그 프록시는 연결을 끝내고 Mac으로 되돌아갈 경로가 필요 없습니다. 프로토콜이 허락하면 프록시를 고르세요. 구조상 닫힌 채로 실패하기 때문입니다.

검증한 뒤 되돌리기를 쓰세요

Mac에서 사설 이름을 해석하고 의도한 작업을 실행한 뒤 게스트의 VPN을 멈추고 그 작업이 조용히 되돌아가는 대신 실패하는지 확인하세요. 마지막 확인이 경로가 바로 당신이 만든 것임을 증명합니다. 게이트웨이가 어떤 신원을 보는지, 누가 전달을 쓸 수 있는지 기록하세요.

되돌리기를 세 단계로 쓰세요. portproxy 항목을 지우고, 방화벽 규칙을 지우고, 호스트 전용 어댑터를 분리합니다. 그리고 필요해지기 전에 한 번 실행해 보고, 그 뒤에도 게스트 자체의 VPN이 작동하는지 확인하세요. 공유 전달 지점은 접근을 한 게스트에 집중시키므로, 조직이 각 Mac의 개별 등록을 요구한다면 여기서 멈추고 대신 그 모델을 쓰세요. 다음 사람은 그것들을 다시 알아내고 싶지 않을 것이므로, 어느 쪽이든 주소와 포트를 변경 기록에 넣으세요.

관련 글