我可以 ping 通伺服器,但不能 ping 通 google.com 或 8.8.8.8,traceroute 也失敗。
伺服器:
$iptables -t nat -A POSTROUTING -s 10.9.8.0/24 -o eth0 -j MASQUERADE
$openvpn --dev tun1 --server 10.9.8.0 255.255.255.0 --dh /etc/openvpn/easy-rsa/keys/dh2048.pem --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/Hal.crt --key /etc/openvpn/easy-rsa/keys/Hal.key --reneg-sec 60 --verb 5 --duplicate-cn --mode server --client-to-client --push "redirect-gateway def1"
客戶:
$openvpn --remote 10.0.0.102 --dev tun1 --client --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/client1.crt --key /etc/openvpn/easy-rsa/keys/client1.key --reneg-sec 60 --verb 5
執行上述命令後客戶端上的路由表:
$route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
default 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
routbuntu-2.loc 10.0.0.1 255.255.255.255 UGH 0 0 0 eth0
10.9.8.0 10.9.8.5 255.255.255.0 UG 0 0 0 tun1
10.9.8.5 * 255.255.255.255 UH 0 0 0 tun1
128.0.0.0 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
答案1
----一般來說:
您應該使用 openvpn 的範例 .conf 檔案。你可以改進它們,因為它們正在解釋重要的選項。
啟動VPN後,使用該命令ifconfig
查看伺服器和用戶端上是否配置了虛擬隧道設備(例如tun0)(啟動/線上)。
@verbosity,也許您應該嘗試預設值,verb 3
因為verb 5
可能會讓人不知所措並讀取輸出,以及如果該輸出出現問題。 openvpn 為您提供詳細的輸出供您分析。
----解決問題:
您可以透過其 lan-ip 位址或其 vpn-virtual-ip-address 10.9.8.1 ping 您的「伺服器」。我猜你 ping 它的 LAN/WAN-ip 位址,因為我假設,你的 VPN 連線不會使用這些設定建立。並且 ping 其 LAN/WAN-ip 不會告訴您有關您的 VPN 是否正常運作的任何資訊。
你的問題很模糊,缺少很多資訊。但我假設您希望透過 VPN 伺服器路由來自 VPN 用戶端電腦的所有網路流量。
在這種情況下:
--如果你想將 openvpn-server 設定為軟體路由器,我認為這個 iptables 規則是不夠的。
通常用於路由的 iptables 設定看起來像這樣,
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i tun0 -s 10.9.8.0/24 -o eth0 -j ACCEPT
openvpn-manpages 只提到您使用過的選項「--push」redirect-gateway def1」和ip-tables nat 行。但是如果此iptables 規則有幫助,您應該嘗試一下。
--我認為必須在 openvpn 伺服器的電腦上啟動 ip 轉發:
sysctl net.ipv4.ip_forward=1 sysctl net.ipv6.conf.default.forwarding=1 sysctl net.ipv6.conf.all.forwarding=1
@你的openvpn伺服器設定:
--您可以在dev tun
和之間進行選擇dev tap
,沒有選項 tun0 或 tun1。
-- mode server
不正確,並且您已經設定了模式server 10.9.8.0 255.255.255.0
@你的openvpn客戶端設定:
--也用dev tun
這裡
-- remote YourServersIpAddress
確保這確實是 LAN 或網際網路中 openvpn 伺服器的 IP 位址。 10.0.0.102 對我來說似乎不尋常。