
我目前正在設定 Raspberry Pi,以方便從家中連接到我公司的 VPN。 Pi有以下介面:
eth0
-- 連線到我的 ISP 路由器。tun0
-- 連接公司 VPN 的 OpenVPN 隧道介面。wlan0
-- 配置為無線接入點。
我已經設定了以下 iptables 規則來橋接wlan0
和之間的所有流量tun0
(NATing 已啟用):
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 回應。
我不熟悉配置此類設置,因此我們將不勝感激!如果需要的話,我當然很樂意提供更多資訊。