Vpn

通過 OpenVPN 網關路由

  • May 31, 2013

我有以下設置:

++++++++++++++++++
+ OpenVPN server +........ . .  .   .   (cat pictures)  
++++++++++++++++++
 |
 |
__|__________________________________________Internet________________
 |                                           Local
 | DSL
 |
++++++++++++++++++             +++++++++++++++++++
+ router1        +  Ethernet   + router2         +
+ DHCP serving   +-------------+ DHCP serving    +
+ 192.168.1.1/24 +        eth0 + 10.0.0.1/24     +
++++++++++++++++++             + OpenVPN client  +
 .                            + hostapd/dnsmasq +
 .                            +++++++++++++++++++
 .                              . wlan0
 .                              .
 .  WLAN 1                      .  WLAN 2
 .                              .
(wifi clients 1)                (wifi clients 2)

這樣做的目的是擁有一個單獨的 WLAN 2,wifi 客戶端可以連接到該 WLAN 2,並將其所有流量通過路由器 2 的 OpenVPN 連接路由到網際網路。

router2在 interface 上執行一個hostapd具有相當少設置的實例wlan0。dnsmasq.conf 也非常小:

interface=wlan0
dhcp-range=10.0.0.1,10.0.0.254,12h
no-host

這執行良好。我可以連接到 wifi 並獲得一個 IP 地址。

OpenVPN 已設置好並且可以正常工作。我正在連接到商業 VPN 服務,所以伺服器配置不在我的控制之下。OpenVPN 正在使用tun0.

如何通過路由器wifi clients 22 上已建立的 OpenVPN 連接將所有請求路由到網際網路?我想我現在必須設置路由表,但是如何設置?

route說:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.200.4.1      128.0.0.0       UG    0      0        0 tun0
default         router1         0.0.0.0         UG    0      0        0 eth0
10.0.0.0        *               255.0.0.0       U     0      0        0 wlan0
10.200.4.0      *               255.255.252.0   U     0      0        0 tun0
<vpn server ip> router1         255.255.255.255 UGH   0      0        0 eth0
128.0.0.0       10.200.4.1      128.0.0.0       UG    0      0        0 tun0
link-local      *               255.255.0.0     U     1002   0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0

OpenVPN 伺服器是否已設置為將10.0.0.1/24網路路由到 router2?如果 OpenVPN 伺服器 ping 會發生什麼10.0.0.1

如果您希望 VPN 另一端的主機能夠建立傳入連接,那麼您需要修復您的 VPN 伺服器。

如果這只是出站流量,那麼您可能需要設置 NAT。因此,來自10.0.0.0/24網路的數據包似乎來自 VPN 介面。

像這樣的規則iptables -t nat -A POSTROUTING -o tun1 -j SNAT --to-source 10.200.4.1

引用自:https://serverfault.com/questions/512102