Iptables - VMのOpenVPN用Wi-Fiルーターのユーザーセッション

Iptables - VMのOpenVPN用Wi-Fiルーターのユーザーセッション

目的は、同じ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-Linkルーター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についてはまだ初心者であることを知っています。

関連情報