VM VPNによる1:1 NAT

VM VPNによる1:1 NAT

他のVPNクライアント(たとえば、Cisco、OpenVPNなど)に接続するいくつかのクライアントサーバーがあります。各サーバーにUbuntu 14 VM(VPNクライアントが永続的に接続されている)を設定してすべてのトラフィックをルーティングしようとしています。サーバーに接続しているため、さまざまなVPNクライアント間で切り替えを続ける必要はありません。

VMには2つの固定IP(LAN上のブリッジ)があり、静的IPに転送されるすべてのトラフィックをリモートサーバーにルーティングしたいとeth0思います。10.1.1.200tun010.50.1.1

私は次の規則を設定しましたiptables

iptables -t nat -A POSTROUTING -s 10.1.1.200 -j SNAT --to-source 10.50.1.1
iptables -t nat -A PREROUTING -d 10.50.1.1 -j DNAT --to-destination 10.1.1.200
iptables -A FORWARD -s 10.50.1.1 -j ACCEPT
iptables -A FORWARD -d 10.1.1.200 -j ACCEPT

私が理解したように、LAN IP(10.1.1.200)とリモートサーバーのIP(OpenVPN接続を介して)(10.50.1.1)の間に1:1 NATが作成され、net.ipv4.ip_forward = 1VMからホストサーバーに接続できます。 。

ホストシステムでローフィング、Telnet、SSHを試しましたが、10.1.1.200接続が拒否されました。

ソース/ターゲットIPのいくつかの他の置換を試しましたが、インターフェイスを明示的に設定しましたが、-i-oも機能しません。

どんなアイデアがありますか?

ベストアンサー1

問題を解決しました。同じサブネット上に複数のサーバーを持つクライアントに対して、LAN IP範囲全体を宛先サーバーIP範囲にマッピングして、パケットが正しいLAN IPに戻るようにしました。

iptables -v -t nat -A PREROUTING -i eth0 -d 192.168.2.0/24 -j NETMAP --to 10.50.1.0/24
iptables -v -t nat -A POSTROUTING -o tun0 -j MASQUERADE

おすすめ記事