我已经tun
设置了一个 IP 地址为 172.100.0.1 的接口。 ip addr
证实了这一点。我也跑过
ip route add 192.168.0.0/16 dev tun0
ip route list
节目
10.2.164.0/22 dev wlan0 proto kernel scope link src 10.2.166.25
192.168.0.0/16 dev tun0 scope link
第一条规则是由我的网络管理员设置的。10.2.166.25 是我在wlan0
.
但是,当我跑步时ip route get 192.168.1.1
,我得到
192.168.1.1 via 10.2.164.1 dev wlan0 table 1029 src 10.2.166.25 uid 2000
cache
我不知道为什么它会通过wlan0
. 为什么不遵守我的路由规则?
ip route show table 0
节目
default via 10.2.164.1 dev wlan0 table 1029 proto static
10.2.164.2/22 dev wlan0 table 1029 proto static scope link
default dev dummy0 table 1003 proto static scope link
10.2.164.0/22 dev wlan0 proto kernel scope link src 10.2.166.25
192.168.0.0/16 dev tun0 scope link
broadcast 10.2.164.0 dev wlan0 table local proto kernel scope link src 10.2.166.25
local 10.2.166.25 dev wlan0 table local proto kernel scope host src 10.2.166.25
broadcast 10.2.167.255 dev wlan0 table local proto kernel scope link src 10.2.166.25
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 10.2.166.25
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
local 172.100.0.1 dev tun0 table local proto kernel scope host src 172.100.0.1
fe80::/64 dev wlan0 table 1029 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 table 1029 proto static metric 10244 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
fe80::/64 dev tun0 table 1034 proto kernel metric 256 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
fe80://64 dev dummy0 table 1003 proto kernel metric 256 pref medium
default dev dummy0 table 1003 proto static metric 1024 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
fe80::/64 dev rmnet_data0 table 1009 proto kernel metric 256 pref medium
default via fe80::953:77d9:c45f:cc0c dev rmnet_data0 table 1009 proto ra metric 1024 expires 64686sec hoplimit 255 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
local ::1 dev lo table local proto unspec metric 0 pref medium
local fe80::3e28:6dff:fee2:f0d0 dev lo table local proto unspec metric 0 pref medium
local fe80::478d:89c5:a152:57aa dev lo table local proto unspec metric 0 pref medium
local fe80::4c49:b3ff:feb7:ac5c dev lo table local proto unspec metric 0 pref medium
local fe80::bc9a:eb93:5ec9:d8e7 dev lo table local proto unspec metric 0 pref medium
ff00::/8 dev dummy0 table local metric 256 pref medium
ff00::/8 dev rmnet_data0 table local metric 256 pref medium
ff00::/8 dev wlan0 table local metric 256 pref medium
ff00::/8 dev tun0 table local metric 256 pref medium
unreachable default dev lo proto kernel metric 4294967295 error -1 pref medium
表1029有如下IPv4路由
Now
192.168.1.1
与第二条路线不匹配,因此适用第一条路线(并且与ip get
显示的内容匹配)。如果您检查
ip rules
,您可能会看到表 1029 是第一个检查的表之一,在默认表中的新路由有机会被考虑之前。所以这就是为什么。
更有趣的问题是,您是如何在不知情的情况下在那么多表中使用那么多路由,以及如果您在不了解是谁做的以及为什么做的情况下弄乱了它,将会破坏什么。如果答案是“我的系统管理员那样做”,那么你应该去和你的系统管理员谈谈。我猜不出他们在想什么。