查看: 189|回复: 1

终端路由表详解

1

主题

11

回帖

902

积分

中级会员

Rank: 3Rank: 3

积分
902

主机,服务器和网络设备一样,也存在一张路由表,这张表在数据转发时,起着非常重要的作用,今天通过一个案例,和大家一起认识一下主机路由表。

认识主机路由表

服务器(终端)通过双网卡接入网络:无线网卡接入互联网,配置有默认网关;VMnet8接入公司内网,没有配置默认网关,每块网卡的地址配置如图所示。

在主机上,通过命令netsh int ipv4 show route可以查看路由表信息,

主机路由表和网络设备的路由表组织结构基本一样,

【类型,跃点数,路由前缀/前缀长度,索引,网关/输出接口】,

其中跃点数(1-9999)相当于网络设备路由表的Metric值;网卡索引是系统为不同网卡分配的编号,在配置静态路由的时候引用;网关/输出接口为路由的下一跳IP地址或输出转发接口。

我们给网卡配置的IP地址,子网掩码,实际上是在主机路由表中添加对应网段的直连路由。

主机路由表的作用

通常我们认为终端在转发数据时,首先用源,目IP分别与网卡配置的子网掩码做逻辑“与”操作,看二者结果是否相同:

相同,说明源,目IP在同一子网,然后发送ARP报文,直接请求目标IP对应的MAC地址;

不同,说明源,目IP不在同一子网,然后发送ARP报文,请求网关IP对应的MAC地址。

然后完成数据的二层封装,进行转发。


Note:主机网卡上配置的默认网关实际上是在路由表中,添加一条默认路由。如果网卡上没有配置网关IP,则可以通过在路由表中手动配置默认路由实现相同功能。

其实不然,实际上终端在转发数据时,也会基于目标IP地址查找本地路由表:

如果匹配路由的【网关/接口名称】是具体网卡,说明匹配直连网段路由,发送ARP报文,直接请求目标IP对应的MAC地址;

如果匹配路由的【网关/接口名称】是具体IP地址,发送ARP报文,请求该IP地址对应的MAC地址,

然后为数据包添加二层以太网头部,进行转发。


案例中,办公内网使用的是172.16.100.0/24的IP地址段,由于在连接内网的网卡上没有配置默认网关,因此需要在主机上手动添加内网网段的路由信息,以管理员身份运行CMD,具体命令如下:

route add 172.16.100.0 mask 255.255.255.0 192.168.234.254 -p

其中192.168.234.254是内网网卡的网关IP地址,-p表明添加的路由是永久路由,即使主机重启,该路由依然存在。

我们再次查看服务器的路由表,刚才添加的路由条目已经存在。


现在在主机上访问172.16.100.100,可以正常通信,说明刚才手动添加的路由信息可以指导数据的转发。

回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
谢谢分享,讲得实用
回复

使用道具 举报

本版积分规则

Copyright   ©2015-2024  EmulatedLab  Powered by Discuz!©   ( 浙ICP备2021010423号-1 )
快速回复 返回列表 返回顶部