IP路由的搜索过程:
1)搜索路由表,寻找能与目的IP地址完全匹配的表目(网络号和主机号都要匹配)。如果找到,则把报文发送给该表目指定的下一站路由器或直接连接的网络接口(取决于标志字段的值)。
2)搜索路由表,寻找能与目的网络号相匹配的表目。如果找到,则把报文发送给该表目指定的下一站路由器或直接连接的网络接口(取决于标志字段的值)。目的网络上的所有主机都可以通过这个表目来处置。例如,一个以太网上的所有主机都是通过这种表目进行寻径的。这种搜索网络的匹配方法必须考虑可能的子网掩码。关于这一点我们在下一节中进行讨论。
3)搜索路由表,寻找标为“默认(default)”的表目。如果找到,则把报文发送给该表目指定的下一站路由器。如果上面这些步骤都没有成功,那么该数据报就不能被传送。如果不能传送的数据报来自本机,那么一般会向生成数据报的应用程序返回一个“主机不可达”或 “网络不可达”的错误。
查看路由表可以用下面的命令:
route 或者 netstat -nr
1、为某主机添加路由,参数是-host
$ sudo route add –host 192.168.29.128 dev eth1
//所有通向192.168.29.128这个IP地址的数据都是用eth1网卡
$ sudo route add –host 192.168.29.128 gw 192.168.29.1
//通向192.168.29.128的数据使用网关192.168.29.1
2、为某网络地址添加路由,参数是-net
$ sudo route add –net 220.181.8.0/24 dev eth0
所有通向网络220.181.8.0/24的数据,都通过俄eth0转发。既发向IP地址为220.181.8.1~220.181.8.254的数据包,都通过eth0转发。
$ sudo route add –net 220.181.8.0/24 gw 192.168.10.1
所有通向网络220.181.8.0/24的数据,都通过网关192.168.10.1转发。既发向IP地址为220.181.8.1~220.181.8.254的数据包,都通过网关192.168.10.1转发。
3、添加默认网关
$ sudo route add default gw 192.168.10.1
4、删除路由,
$ sudo route del –host 192.168.168.110
$ sudo route del -net 220.181.8.0/24 (因为是网络地址,所以后面一定要跟上24,或16等掩码长度)
$ sudo route default
阅读(1716) | 评论(0) | 转发(0) |