Linux
如果伺服器端沒有推送路由,如何讓所有客戶端流量通過 OpenVPN?
我在 OpenWRT 上安裝了 OpenVPN 客戶端,並希望通過 VPN 引導我的所有流量,包括遊戲流量。
但是伺服器端沒有將路由推送到客戶端。如何通過使用
ip route
和ip rule
命令在 OpenWRT 中進行設置來實現這一點?–update– 其實openwrt只是一個虛擬機,我部署在VirtualBox上。來自主機的所有流量都將流經虛擬機。我閱讀了一些關於如何使用 ip route 靜態路由流量的文章,但仍然不知道我需要使用什麼 ip 地址來替換
ip route add
andip rule add
規則的地址部分。
如果您想通過 VPN 路由來自路由器的所有流量,只需通過 OpenVPN 配置預設路由。請記住通過您的網際網路網關配置到 OpenVPN 伺服器的外部 IP 的路由(如果沒有自動配置)。
ip route add <openvpn server external ip> via <default internet gateway> ip route change default via <openvpn gateway (internal) ip>
如果您想根據流量的來源(或某些其他條件)應用不同的路由,則需要使用單獨的路由表並創建規則何時使用它。
例如,使用由 標識的新表*
10
*:ip route add default via <openvpn gateway (internal) ip> table 10 ip rule add from <your network (address+netmask)> table 10 ip route flush cache
當您使用單獨的路由表時,您不需要更改主路由表中的路由。
您的 OpenVPN 伺服器不會自動知道您網路中主機的路由。您要麼需要配置此類路由,要麼在 OpenVPN 客戶端上使用 NAT。