VPN 게이트웨이를 통해 LAN 트래픽 라우팅

VPN 게이트웨이를 통해 LAN 트래픽 라우팅

내 iMac에는 원격 VPN에 연결하는 소프트웨어가 있습니다. 잘 작동하지만 특정 장치에서만 작동합니다.

이제 네트워크의 다른 장치가 iMac을 통해 동일한 VPN 연결에 액세스할 수 있도록 허용하고 싶습니다. 그 이유는 내 휴대폰이 OpenVPN 프로토콜을 지원하지 않기 때문에 VPN 자체에 연결할 수 없기 때문입니다.

포트 전달을 활성화했습니다.sysctl -w net.inet.ip.forwarding=1

파일의 32번째 줄에 다음을 추가하려고 했습니다 /etc/pf.conf. nat on utun1 from en0:network to any -> (utun1)여기서 en0은 인터넷이 들어오는 이더넷 포트이고 utun1은 VPN이 연결되면 모든 트래픽이 이동하는 곳입니다.

실행하면 sudo pfctl -e -f /etc/pf.conf오류가 발생합니다.

/etc/pf.conf:32: 규칙은 순서대로 있어야 합니다: 옵션, 정규화, 대기열, 변환, 필터 pfctl: 구성 파일의 구문 오류: pf 규칙이 로드되지 않았습니다.

왜 이 오류가 발생하는지 알려주실 수 있나요? nat 명령을 잘못 사용했나요?

참고 - 저는 튜토리얼을 따라해왔습니다명령줄 도구를 사용하여 Mac OSX에서 인터넷 공유 설정

답변1

사용된 장비:

  • 10.14.5 Mojave를 실행하는 iMac Pro 2017(게이트웨이로)
  • Android 9를 실행하는 Android S10+
  • 아이폰 XS
  • 아이패드 프로 11인치

내 집 LAN에 내 iMac이 연결되어 있습니다.그럼 0고정 IP는 192.168.1.100입니다. 인터넷을 검색할 수 있지만 ISP의 방화벽으로 인해 제한되어 있습니다. 내 목표는 VPN에 연결된 iMac에서 소프트웨어를 실행하는 것입니다. 완료되면 iMac을 게이트웨이로 사용하여 LAN의 다른 장치가 이를 통해 라우팅하고 VPN을 사용하여 연결할 수 있습니다.

VPN은 OpenVPN XOR 프로토콜을 사용하여 연결한다는 점을 기억하는 것이 중요합니다. 이 프로토콜은 VPN 공급자가 제공하는 맞춤형 소프트웨어에서만 사용할 수 있으므로 VPN 소프트웨어를 전화나 iPad와 같은 장치에 직접 로드할 수 없었습니다.

나는 이 작업을 수행하는 데 매우 가까워서 어딘가에서 한 단계를 놓쳤습니다. 지금까지 내가 찾은 내용은 다음과 같습니다.

A: 테스트 목적으로 iMac이 인터넷을 정상적으로 탐색할 수 있도록 VPN 연결을 끊었습니다.

A1. 고정 IP 192.168.1.84와 사용자 정의 게이트웨이 192.168.1.100(iMac)을 사용하도록 휴대폰의 WiFi 설정을 변경했습니다. 평소대로 WLAN에 연결되어 있지만 탐색할 수 없습니다.

A2. iMac에서 sudo sysctl -w net.inet.ip.forwarding=1포트 전달 활성화를 실행했고 이제 iMac을 통해 휴대폰에서 인터넷을 성공적으로 검색할 수 있습니다.

결론: 전화 -> iMac -> 인터넷이 잘 작동됩니다.

B. 이제 VPN을 사용하여 다시 시도해 보겠습니다.

B1. iMac이 VPN에 성공적으로 연결되었습니다. 분명히 모든 인터넷 검색이 이제 진행됩니다.우투 1. nettop 또는 netstat -rn을 실행하여 이를 확인할 수 있습니다.

B2. 전화기는 여전히 iMac을 게이트웨이로 사용하여 WLAN에 연결합니다. 하지만 VPN이 연결되어 있으므로 더 이상 검색이 불가능합니다.

B3. 나는 nat on utun1 from 192.168.1.0/24 to any -> (utun1)에 추가했다/private/etc/pf.conf 그럼 난 달려 sudo pfctl -d 그 다음에 sudo pfctl -F all 그 다음에 sudo pfctl -f /etc/pf.conf -e...그럼 난 달려 sudo pfctl -s nat모든 것이 올바르게 로드되는 것 같습니다. 이 시점에서 저는 아무런 방해 없이 VPN을 성공적으로 탐색했습니다.

**참고*"* pf.conf에 추가할 때 파일의 올바른 위치에 삽입했는지 확인하십시오. 잘못된 위치에 있으면 코드가 실행되지 않습니다.

결론: 전화 -> iMac -> VPN -> 원활한 인터넷이 작동 중입니다.

흥미롭게도 저는 72시간 동안 위의 동일한 단계를 다양한 조합으로 시도했지만 거의 성공하지 못했습니다. 이제 프로세스를 정의하고 단계별로 실행한 후에야 제대로 작동하는 것 같습니다. 재부팅 후에도 순서대로 진행해 보니 믿음직스러운 과정인 것 같았습니다.

다음 단계는 아이콘을 클릭하여 프로세스를 자동화할 수 있는 일종의 스크립트를 작성하는 것입니다. 어쩌면 iMac이 시작될 때 실행할 수도 있습니다.

업데이트를 통해 복원됩니다.

관련 정보