策略路由

策略路由的由来:        最初,路由仅依据目的地址,采用最长匹配原则来决定下一跳。 后来 人们还希望通过其他项来选择下一跳, 比如源地址, 传输协议, 端口等。。因此策略路由应运而生。 根据不同的条件(源地址, 传输协议, 端口)选择路由表, 然后在路由表中根据目的地址选择下一跳。  策略路由样貌: 它是由三部分组成,   part1:  优先级,也就是上图中的0, 32766, 32767, 数字越小优先级越高。 新增路由策略的时候,如果不通过pref指定优先级会在找个除零以外最小的优先级。 如下所示: [root]# ip rule del from 135.105.115.149 lookup 231[root]# ip rule0:      from all lookup local32765:  from 135.105.115.149 lookup 23132766:  from all lookup main32767:  from all lookup default part2: 条件, 比如from  all, from 135.105.115.149.    part3: 操作, 比如lookup main 、 lookup 231。   综上: 32765:  from 135.105.115.149 lookup 231 代表的含义是, 源地址是135.105.115.149的IP包,根据231号路由表进行路由。    路由策略工作原理:会根据优先级依次遍历,直到决策出下一跳。 例如:一个IP报文源地址是135.105.115.180, 目的地址是155.18.49.20 1)判断路由策略0, 符合条件from all, 去查找local 路由表(本地路由表,存有本地接口地址,广播地址,以及NAT地址)。 local表中根据目的地址,最长匹配原则找不到路由。2)进而判断路由策略路由32765, 该策略源地址是135.105.115.149的, 去查找231号表。 不满足。 3)进而判断32766, 该路由策略的条件是from all满足。去查找路由表main(主路由表,传统路由表,ip route若没指定表即操作表254), 其中可以找到下一跳, 进而转发IP包。 到此结束。    路由表:只能根据目的路由 系统初始,给创建了4张路由表: 0表                       系统保留表255                        local 本地路由表,存有本地接口地址,广播地址,以及NAT地址。     local表由系统自动维护,管理员不能操作此表。 254                        main 主路由表,传统路由表,ip route若没指定表即操作表254。                           注:平时用route查看的亦是此表设置的路由。253                        default  默认路由表一般存放默认路由。                           注:rt_tables文件中表以数字来区分表,保留最多支持255张表。 路由表查看的方法:  ip route list table [table_id/table_name] 例如查看main 路由表:ip route list table 254、 ip route list table main 注:平常我们用的netstat -rn 或者route 查看的都是主路由表(254号表)        route  [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]增加的路由也是在254号表。      后续完善补充
上一篇:静态路由实验


下一篇:vue监听路由变化