목표는 동일한 LAN에 있는 TP-Link TL-WR902AC Wi-Fi 여행용 라우터의 무선 사용자 세션을 가상 머신의 OpenVPN 클라이언트로 라우팅하는 것입니다.
내 시도는 다른 시스템의 hostapd wlan0과 OpenVPN tun0 클라이언트 간의 이전 성공적인 iptable 라우팅을 기반으로 했습니다.
TP-Link 라우터 및 OpenVPN 클라이언트의 경우 수정된 iptable 명령이 작동하지 않으며 그 이유를 모르겠습니다. 당연히 여러 분야에서 추측됩니다. 이것이 설정입니다.
192.168.0.1 Netgear LAN router to WAN
192.168.0.4 Linux Mint 19.3 Virtualbox host
192.168.0.6 Linux Mint Xfce VM with OpenVPN Client
192.168.0.7 TP-Link TL-WR902AC travel router
TP-링크 라우터 WAN 설정
ip addr 192.168.0.7
gateway 192.168.0.6
DNS svr 192.168.0.6
TP-Link 라우터 LAN IP 주소는 192.168.1.1입니다.
가상 머신/etc/sysctl.conf에서 IPv4 전달을 활성화합니다.
192.168.0.6 가상 머신의 경로:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.7.3.1 128.0.0.0 UG 0 0 0 tun0
default _gateway 0.0.0.0 UG 100 0 0 enp0s3
10.7.3.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
128.0.0.0 10.7.3.1 128.0.0.0 UG 0 0 0 tun0
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s3
185.225.234.1 _gateway 255.255.255.255 UGH 0 0 0 enp0s3
192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
작동하지 않는 iptables 명령 [무선 노트북에서 10.7.3.1을 ping할 수 있는 것 외에 - iptables가 로드되지 않으면 ping이 실패함]:
sudo /sbin/iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
sudo /sbin/iptables -A FORWARD -i enp0s3 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo /sbin/iptables -A FORWARD -i tun0 -o enp0s3 -j ACCEPT
답변1
10.7.3.1 ping 성공으로 인해 TP-Link 공유기의 WAN 설정에 있는 DNS 서버 주소가 문제가 아닐까 하는 생각이 듭니다.
VPN 서버 DNS 주소 103.86.96.100으로 변경하여 테스트하면 작동합니다.
나쁘지는 않지만 iptables에 관해서는 아직 초보자라는 것을 알고 있습니다.