VPN で DNS サーバーに NAT するための Iptables ルール

VPN で DNS サーバーに NAT するための Iptables ルール

現在、自宅から会社の VPN に接続できるように Raspberry Pi をセットアップしています。Pi には次のインターフェイスがあります。

  • eth0-- ISP ルーターに接続しました。
  • tun0-- 会社の VPN に接続する OpenVPN トンネル インターフェイス。
  • wlan0-- ワイヤレス アクセス ポイントとして構成されています。

wlan0と間のすべてのトラフィックをブリッジするために、次の iptables ルールを設定しましたtun0(NAT が有効になっています)。

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
sudo iptables -A FORWARD -i tun0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o tun0 -j ACCEPT

私の/etc/resolv.conf外見は次のようになります:

# Generated by resolvconf
search a.my-company.com b.my-company.com c.my-company.com
nameserver 10.0.0.1           # VPN DNS server
nameserver 10.4.0.1           # VPN DNS server
nameserver 194.168.4.100      # ISP DNS server
nameserver 194.168.8.100      # ISP DNS server

Pi からは、VPN ホストと外部ホストの両方を解決してアクセスできます。ただし、ワイヤレス アクセス ポイントに接続されたデバイスはどちらも解決できません (ただし、IP による VPN ホストへのアクセスは機能します)。私の診断で問題が正確に特定されているかどうかはわかりませんが、TCPdump に次の内容がtun0含まれていることに気付きました。

IP 10.4.119.198.35387 > [VPN DNS SERVER 1].domain: 12662+ A? some.website.com. (38)
IP [VPN DNS SERVER 1].domain > 10.4.119.198.35387: 12662 1/13/13 A [Resolved IP] (486)
IP 10.4.119.198 > [VPN DNS SERVER 1]: ICMP 10.4.119.198 udp port 35387 unreachable, length 522

これは、何かが DNS 応答をフィルタリングしていることを示しているようです。

私はこのような設定の構成に慣れていないので、この点についてご助力いただければ幸いです。もちろん、必要であればさらに詳しい情報を提供させていただきます。

関連情報