
我無法理解 VPN 用戶端的工作原理以及如何設定路由表來執行我想要的操作。
這是連接到我的 VPN 之前的輸出
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.3.0 * 255.255.255.0 U 303 0 0 wlan0
連接到我的 VPN 後
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default XXX.XXX.XXX.XXX 128.0.0.0 UG 1 0 0 ppp0
default 192.168.3.1 0.0.0.0 UG 303 0 0 wlan0
1.1.1.1 * 255.255.255.255 UH 0 0 0 ppp0
vpn.domain.tld 192.168.3.1 255.255.255.255 UGH 1 0 0 wlan0
128.0.0.0 XXX.XXX.XXX.XXX 128.0.0.0 UG 1 0 0 ppp0
192.168.3.1 192.168.3.121 255.255.255.255 UGH 1 0 0 wlan0
ifconfig 報告
ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1379 metric 1
inet XXX.XXX.XXX.XXX netmask 255.255.255.255 destination 1.1.1.1
ppp txqueuelen 100 (Point-to-Point Protocol)
RX packets 25 bytes 14115 (13.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 51 bytes 7076 (6.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 metric 1
inet 192.168.3.121 netmask 255.255.255.0 broadcast 192.168.3.255
inet6 fe80::ca3a:35ff:fec1:9095 prefixlen 64 scopeid 0x20<link>
ether c8:3a:35:c1:90:95 txqueuelen 1000 (Ethernet)
RX packets 499060 bytes 549032226 (523.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 385300 bytes 77733269 (74.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
我希望只有前往 XXX.XXX.XXX.XXX(B 類 IP)的流量才能進入 VPN。所有其他流量自然會流向 wlan0。
抱歉,如果這是重複的。任何意見將是有益的。
注意:XXX.XXX.XXX.XXX 值在每個記錄的實例中都是相同的。
答案1
我在這裡找到了一個很好的小教學:
http://www.gentoo.org/doc/en/vpnc-howto.xml#doc_chap7
我遇到了與您相同的問題:我有兩個預設路由。不幸的是,我有一個 Juniper VPN,一旦你弄亂了預設路由,它就會退出。
但是,據我了解,您可以使用以下命令刪除預設 VPN 路由:
sudo route del default gw XXX.XXX.XXX.XXX
然後,您可以使用以下命令新增特定子網路路由:
sudo route add -net XXX.XXX.XXX.XXX netmask 255.255.255.0 dev tun0
您可能需要調整網路遮罩以符合您要使用的網路。 「tun0」是VPN的裝置。您可以使用 ifconfig 查看您的 VPN 新增了哪個裝置。
僅供參考,我相信這種技術稱為分割隧道。據我了解,VPN 管理員可以允許或禁止分割隧道。 Juniper VPN 似乎在執行這項決定方面做得很好,但我看不出有什麼方法可以推翻它。