라우팅 규칙에도 불구하고 트래픽은 tun 인터페이스로 라우팅되지 않습니다.

라우팅 규칙에도 불구하고 트래픽은 tun 인터페이스로 라우팅되지 않습니다.

tunIP 주소 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는 인터넷상의 내 IP 주소입니다 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

답변1

표 1029에는 다음과 같은 IPv4 경로가 있습니다.

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

이제 192.168.1.1두 번째 경로와 일치하지 않으므로 첫 번째 경로가 적용됩니다( ip get표시된 경로와 일치함).

를 사용하여 확인하면 ip rules기본 테이블의 새 경로가 고려되기 전에 테이블 1029가 확인된 첫 번째 테이블 중 하나라는 것을 알 수 있습니다.

그래서 그 이유입니다.

더 흥미로운 질문은 어떻게 그렇게 많은 테이블에서 그렇게 많은 경로를 알지 못한 채 얻었는지, 그리고 누가, 왜 그랬는지 이해하지 못한 채 그것을 망친다면 무엇이 깨질 것인가입니다. 대답이 "내 시스템 관리자가 그랬습니다"라면 시스템 관리자에게 가서 이야기해야 합니다. 나는 그들이 무엇을 생각하고 있었는지 짐작할 수 없습니다.

관련 정보