Alf*_*lle 7 linux ip route ip-routing policy-routing
我正在尝试packets
根据他们的进行路由source
address
,并添加了以下内容:
# ip rule add from 10.10.10.0/16 dev eth0 table foobar
# ip route add default via 100.100.100.1 dev eth0 table foobar
Run Code Online (Sandbox Code Playgroud)
然而,测试路由给了我错误的via
地址:
# ip route get 4.3.2.1 from 10.10.10.1
4.3.2.1 from 10.10.10.1 via 100.0.0.1 dev eth0
Run Code Online (Sandbox Code Playgroud)
为什么这不被尊重?
这是我的常客 routes
# ip route list
default via 100.0.0.1 dev eth0
Run Code Online (Sandbox Code Playgroud)
和
# ip route show table foobar
default via 100.100.100.1 dev eth0
Run Code Online (Sandbox Code Playgroud)
和
# ip rule list
0: from all lookup local
32765: from 10.10.10.0/16 iif eth0 lookup foobar
32766: from all lookup main
32767: from all lookup default
Run Code Online (Sandbox Code Playgroud)
你的问题不是问题。在规则中,您不仅使用源地址,还使用输入接口匹配。因此,有两种方法可以解决您的“问题”:
dev eth0
在规则中使用iif eth0
在ip route get...
命令中添加。该iif
选项允许您在ip route get
命令中使用非本地地址,因此您可以使用以下内容:
ip route get 4.3.2.1 from 10.10.20.253 iif eth0
归档时间: |
|
查看次数: |
2557 次 |
最近记录: |