Linux 下的路由规则
http://linux-ip.net/html/routing-selection.html
我们所说的路由cache,在Linux kernel里其实就是fib 哈希表。
遇到路由问题,莫惊慌,需要检查以下信息:
- ip rule
- ip route show table
- /proc/net/route & ip6_route
- arp -n
- ip link show 主要是看interface的状态是否是正常的。
- /proc/net/fib_triestats 、fib_trie,rt_cache,rt_acct
遇到的问题
之前遇到过一个问题,在某个route 表里有两个default路由,指向了不同的网口。默认情况下会取第一条路由作为路由往下发包。但是这次发现用了第二条做了分发。原因可能是第一条已标记为dead:如果标记为dead 的fib就不会再使用。变成dead的条件就是指向的网络接口是down状态,对应子网的ip地址删除,等等。