以太网之route

1. linux中的路由表table和路由策略rule

    1)路由表,存放具体的路由条目。用于决定数据包从哪个网口发出,其主要判断依据是目标IP地址。

(2)路由策略,根据策略绑定路由表。id越小,优先级越高。

(3)路由寻址过程中,按顺序走路由策略,匹配路由策略后,在路由策略对应的路由表中寻找匹配路由。

(4)添加路由策略时。我们使用ip route list 或 route -n 或 netstat -rn查看的路由记录,只是其中的一个路由表的内容。

路由寻找过程中,会根据路由策略的优先级来查找路由表。所以分析时,

第一,我们应该根据优先级遍历路由策略。匹配路由策略则跳到第二步,否则继续遍历路由策略。

第二,找路由策略绑定的路由表,从路由表中匹配路由。若匹配到路由则跳到第三,否则跳到第一,继续下一个优先级的路由策略。

第三,找到路由。

以太网之route_第1张图片

路由表

说明

table id = 0

系统保留。

table id = 253

称为默认路由表,表名为default。一般来说默认的路由都放在这张表。

table id = 254

称为主路由表,表名为main。如果没有指明路由所属的表,所有的路由都默认都放在这个表里。一般来说,旧的路由工具(如route)所添加的路由都会加到这个表。main表中路由记录都是普通的路由记录。而且,使用ip route配置路由时,如果不明确制定要操作的路由表,默认情况下也是主路由表(表254)进行操作。

备注:我们使用ip route list 或 route -n 或 netstat -rn查看的路由记录,也都是main表中记录。

table id = 255

称为本地路由表,表名为local。像本地接口地址,广播地址,以及NAT地址都放在这个表。该路由表由系统自动维护,管理员不能直接修改。

2.route 命令大全

知道route的规则,那么如何添加route呢,以及如何能够事先多样化个性化的route功能呢,那就需要丰富的命令格式。

(1) 在linux系统中可以使用ip rule命令来配置路由策略。ip rule命令使用格式为:

Usage: ip rule [ list | add | del ] SELECTOR ACTION (add 添加;del 删除; llist 列表)

SELECTOR :=

[ from IP 数据包源地址]

[ to IP 数据包目的地址]

[ tos NUMBER 服务类型]

[ dev STRING 物理接口]

[ pref NUMBER 优先级]

[fwmark NUMBER 防火墙标签]

ACTION :=

[ table TABLE_ID 指定所使用的路由表]

[ nat ADDRESS 网络地址转换]


[

prohibit 丢弃该包,并发送 COMM.ADM.PROHIITED的ICMP信息

| reject 单纯丢弃该包

| unreachable 丢弃该包, 并发送 NET UNREACHABLE的ICMP信息

]

[ flowid CLASSID ]

TABLE_ID := [ local | main | default | new | NUMBER ]

(2) 查看指定路由表的内容

ip route list table table_id

ip route list table table_name

ip route show table table_id

ip route show table table_name

添加路由
route add -net 192.168.100.0 netmask 255.255.255.0 gw 192.168.100.1

删除一条路由
route del -net 192.168.100.0 netmask 255.255.255.0

(2) 在QNX系统中可以使用route:

route add dest-IP  gateway_ip

netstat 命令详解

netstat 命令详解_IT云清的博客-CSDN博客_netstathttps://blog.csdn.net/weixin_39800144/article/details/80929947

linux中的路由表table和路由策略rule

linux中的路由表table和路由策略rule - 灰信网(软件开发博客聚合)

你可能感兴趣的:(linux,网络,车载以太网)