什么是使用'默认'路由表?


3

这是任何linux系统中的默认路由表数据库;

[kumar]$ ip rule list
0:  from all lookup local 
32766:  from all lookup main 
32767:  from all lookup default

我理解'主'路由表,任何添加而不提及表的路由都会添加到'main'路由表中。但最重要的是拥有“默认”路由表吗?即使我添加了“默认”路由,它也会被添加到“主”路由表中,在这种情况下,我认为没有必要使用'default'表。知道为什么这有用吗?

Answers:


2

ip rule输出路由策略。见以下链接:

http://www.policyrouting.org/iproute2.doc.html#ss9.6

如果你想要路由表,请使用 ip route

hvn@hvnatvcc: ~ $ ip route
default via 192.168.25.1 dev eth0  proto static 
169.254.0.0/16 dev eth0  scope link  metric 1000 
192.168.25.0/24 dev eth0  proto kernel  scope link  src 192.168.25.66  metric 1 
192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1 

http://www.policyrouting.org/iproute2.doc.html#ss9.5

关于默认表:

  1. 优先级0:选择器=匹配任何东西

Action =查找本地路由表(ID 255)。

本地表是包含本地和广播地址的高优先级控制路由的特殊路由表。

规则0是特殊的,不能删除或覆盖。

  1. 优先级32766:选择器=匹配任何内容

Action =查找路由表main(ID 254)

表main是包含所有非策略路由的普通路由表。此规则可能会被其他规则删除或覆盖。

  1. 优先级32767:选择器=匹配任何东西

Action =查找路由表默认值(ID 253)。

如果先前的默认规则未选择数据包,则表默认为空并保留用于后处理。此规则也可能被删除。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.