Networking
OpenVPN 伺服器:連接正常,但無法訪問遠端區域網路
我有一個正在執行的 OpenVPN 伺服器,配置如下
- VPN 網路為 10.7.0.0/16
- LAN網路為192.168.100.0/24
客戶端可以連接,但我無法訪問位於 VPN 連接 (192.168.100.*) 後面的 LAN 主機。
push "route 192.168.100.0 255.255.255.0"
配置行應該解決這個問題,但不是。我的錯誤在哪裡?分析
連接後,這是我的
netstat -rn
結果default 10.7.0.5 UGScIg utun10 10.7/16 10.7.0.5 UGSc utun10 10.7.0.5 10.7.0.6 UHr utun10 10.7.0.5/32 link#23 UCS utun10 192.168.100 10.7.0.5 UGSc utun10
我本來希望
10.7.0.1
網關在最後一行,不是嗎?ifconfig 也許是一個線索,我
ifconfig
的客戶端給了我 客戶端上的 ifconfig我期望
inet 10.7.0.2 --> 10.7.0.1
它在我在其他上下文中獲得的其他 VPN 上工作時會發生類似的事情。↳ 用@lacek 回答。
數據包擷取
在客戶端 ping 期間,VPN 伺服器上的 A
tcpdump
給了我
- 剛剛在 LAN ping 上發送 ping(不返回)。
- ping 並返回 VPN 主機 ping。
如果我在目標上擷取任何 ICMP 流量,則沒有關於 ping 請求的日誌。(我已經嘗試從另一個 LAN 主機,它可以工作。直接從 VPN 主機,它也可以工作。)。
關鍵是 OpenVPN 服務不會將我的數據包轉發到 LAN 網路。
配置
server.conf配置
proto udp ifconfig-pool-persist ipp.txt keepalive 10 120 user nobody group nogroup persist-key persist-tun status /var/log/openvpn.log verb 3 mute 10 ca /etc/openvpn/server/ca.crt cert /etc/openvpn/server/server.crt key /etc/openvpn/server/server.key dh /etc/openvpn/server/dh.pem port 1194 dev tun server 10.7.0.0 255.255.255.0 push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" push "route 192.168.100.0 255.255.255.0 " client-to-client
在伺服器端,我在 Debian OS 上執行 OpenVPN 2.4.0。
乍一看一切都很好,所以我的猜測是防火牆阻止了從 VPN 到 LAN 的包,或者 LAN 上的電腦沒有設置正確的路由,因此包無法從 LAN 到達虛擬專用網。
關於
ifconfig
輸出:當使用net30
拓撲(預設)時,openvpn 建立一個點對點連接,其中為每個客戶端分配一個 /30 網路。該網路中的一個 IP 屬於客戶端,另一個屬於伺服器。所以你得到的輸出是正確的。