我以为,一旦连接到 VPN 服务器,我电脑的所有出站流量都会通过该 VPN 服务器路由。我不是网络工程师,所以直到现在我才真正考虑过这个问题。
现在,我已连接到公司的 VPN,并拥有以下路由表:
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.1.1 UGSc 80 0 en0
10.8.0.1/32 10.8.0.17 UGSc 0 0 utun3
10.8.0.17 10.8.0.18 UH 8 0 utun3
10.11/24 10.8.0.17 UGSc 2 0 utun3
24.222.7.19/32 10.8.0.17 UGSc 0 0 utun3
24.222.7.21/32 10.8.0.17 UGSc 0 0 utun3
24.222.7.66/32 10.8.0.17 UGSc 0 0 utun3
99.79.0.44/32 10.8.0.17 UGSc 0 0 utun3
127 127.0.0.1 UCS 0 81 lo0
127.0.0.1 127.0.0.1 UH 9 2597308 lo0
169.254 link#5 UCS 0 0 en0
192.168.1 link#5 UCS 3 0 en0
192.168.1.1/32 link#5 UCS 1 0 en0
192.168.1.1 d8:a7:56:1a:d8:c1 UHLWIir 23 1710 en0 1188
192.168.1.109 link#5 UHRLWI 0 21 en0 1
192.168.1.131 4c:7c:5f:54:20:20 UHLWI 0 2 en0 1031
192.168.1.144 c0:f2:fb:a9:19:95 UHLWI 0 0 en0 402
192.168.1.147/32 link#5 UCS 1 0 en0
192.168.1.147 8c:85:90:1c:78:cd UHLWI 0 20 lo0
192.168.99 link#11 UC 1 0 vboxnet
224.0.0/4 link#5 UmCS 2 0 en0
224.0.0.251 1:0:5e:0:0:fb UHmLWI 0 0 en0
239.255.255.250 1:0:5e:7f:ff:fa UHmLWI 0 278 en0
255.255.255.255/32 link#5 UCS 0 0 en0
我的理解是,所选网关取决于我向其发出请求的“目标”地址。假设我向一个不匹配任何路由(例如 203.0.113.3/24)的网络发出请求。在这种情况下,该请求不是直接转到默认网关,绕过 VPN 上的任何地址,直接进入互联网吗?
我的理解是否正确,或者是否仍有遗漏?
答案1
我的印象是,一旦连接到 VPN 服务器,我计算机的所有出站流量都会通过该 VPN 服务器路由。
不一定。只有当 VPN 客户端明确添加通过 VPN 接口的“默认”路由时才会发生这种情况。如果路由表没有显示您的数据包会到达那里,那么它们就不会到达那里。
商业 VPN 提供商将其服务器和/或客户端应用程序配置为始终添加高优先级的默认路由,因为这是其服务的全部意义所在……但“VPN”技术本身并没有任何强制或要求这样做的东西。
许多企业或大学的 VPN仅有的推送与用户相关的特定路线,其他路线则保持直接。(这通常称为分割隧道。
假设我向一个不匹配任何路由(例如 203.0.113.3/24)的网络发出请求。在这种情况下,这个请求不是直接转到默认网关,绕过 VPN 上的任何地址,直接进入互联网吗?
是的,它确实直接连接到互联网。
(虽然从技术上来说做匹配路由:0.0.0.0/0 via 192.168.1.1
又称“默认”路由。如果它根本不匹配任何路由,操作系统会给出“主机不可达”错误。