1.路由器的工作原理
当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到。而要送给不同IP子网上的主机时,它要
选择一个能到达目的子网上的路由器,把IP分组送给该路由器,由路由器负责把IP分组送到目的地。如果没有找到这样的路由器,主机就把IP分组送给一个称
为“缺省网关(default gateway)”的路由器上。“缺省网关”是每台主机上的一个配置参数,它是接在同一个网络上的某个路由器端口的IP地址。
路由器转发IP分组时,只根据IP分组目的IP地址的网络号部分,选择合适的端口,把IP分组送出去。同主机一
样,路由器也要判定端口所接的是否是目的子网,如果是,就直接把分组通过端口送到网络上,否则,也要选择下一个路由器来传送分组。路由器也有它的缺省网
关,用来传送不知道往哪儿送的IP分组。这样,通过路由器把知道如何传送的IP分组正确转发出去,不知道的IP分组送给“缺省网关”路由器,这样一级级地
传送,IP分组最终将送到目的地,送不到目的地的IP分组则被网络丢弃了。
目前TCP/IP网络,全部是通过路由器互
连起来的,Internet就是成千上万个IP子网通过路由器互连起来的国际性网络。这种网络称为以路由器为基础的网络(router based
network),形成了以路由器为节点的“网间网”。在“网间网”中,路由器不仅负责对IP分组的转发,还要负责与别的路由器进行联络,共同确定“网间
网”的路由选择和维护路由表。
路由动作包括两项基本内容:寻径和转发。寻径即判定到达目的地的最佳路径,由路由选择算法来实现。由于涉及到不同的路由选择协议和路由选择算法,要相对复
杂一些。为了判定最佳路径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的
不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关系告诉路由器。路由器间互通信息进行路由更新,更新维护路由表使之正确反映
网络的拓扑变化,并由路由器根据量度来决定最佳路径。这就是路由选择协议(routing protocol),例如路由信息协议(RIP)、开放式最短路径优先协议(OSPF)和边界网关协议(BGP)等。
转发即沿寻径好的最佳路径传送信息分组。路由器首
先在路由表中查找,判明是否知道如何将分组发送到下一个站点(路由器或主机),如果路由器不知道如何发送分组,通常将该分组丢弃;否则就根据路由表的相应
表项将分组发送到下一个站点,如果目的网络直接与路由器相连,路由器就把分组直接送到相应的端口上。这就是路由转发协议(routed
protocol)。
路由转发协议和路由选择协议是相互配合又相互独立的概念,前者使用后者维护的路由表,同时后者要利用前者提供的功能来发布路由协议数据分组。下文中提到的路由协议,除非特别说明,都是指路由选择协议,这也是普遍的习惯。
2.查看主机路由表
这是route命令的第一个参数的输出,首先是最上方给出了接口列表,一个本地循环,一个是无线网卡,最后一个网卡接口,网卡接口给出了网卡的mac地址。
再说说每一列的内容吧,从做到右依次是:Network Destination(目的地址),Netmask(掩码),Gateway(网关),Interface(接口),Metric(是一个度量值或是管理距离)。
下面说说每一行内容代表的内容,首先是
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.103 20
这表示发向任意网段的数据通过本机接口192.168.0.103被送往一个默认的网关:192.168.0.1 ,它的管理距离是20,这里对管理距离说说,管理距离指的是在路径选择的过程中信息的可信度,管理距离越小的,可信度越高。
再看看第二行
Network Destination Netmask Gateway Interface Metric
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
A类地址中127.0.0.0留住本地调试使用,所以路由表中所以发向127.0.0.0网络的数据通过本地回环127.0.0.1发送给指定的网关:127.0.0.1,也就是从自己的回环接口发到自己的回环接口,这将不会占用局域网带宽。
第三行
Network Destination Netmask Gateway Interface Metric
192.168.0.0 255.255.255.0 192.168.0.103 192.168.0.103 20
这里的目的网络与本机处于一个局域网,所以发向网络192.168.0.0(也就是发向局域网的数据)使用本机: 192.168.0. 103 作为网关,这便不再需要路由器路由或不需要交换机交换,增加了传输效率。
第四行
Network Destination Netmask Gateway Interface Metric
192.168.0. 103 255.255.255.255 127.0.0.1 127.0.0.1 20
表示从自己的主机发送到自己主机的数据包,如果使用的是自己主机的IP地址,跟使用回环地址效果相同,通过同样的途径被路由,也就是如果我有自己的站点,我要浏览自己的站点,在IE地质栏里面输入localhost与192.168.0.103是一样的,尽管localhost被解析为127.0.0.1。
第五行
Network Destination Netmask Gateway Interface Metric
192.168.0.255 255.255.255.255 192.168.0.103 192.168.0.103 20
这里的目的地址是一个局域广播地址,系统对这样的数据包的处理方法是把本机192.168.0.103作为网关,发送局域广播帧,这个帧将被路由器过滤。
第六行
Network Destination Netmask Gateway Interface Metric
224.0.0.0 240.0.0.0 192.168.0.103 192.168.0.103 20
这里的目的地址是一个组播(muticast)网络,组播指的是数据包同时发向几个指定的IP地址,其他的地址不会受到影响。系统的处理依然是适用本机作为网关,进行路由。这里有一点要说明的组播可被路由器转发,如果路由器不支持组播,则采用广播方式转发。
第八行
Network Destination Netmask Gateway Interface Metric
255.255.255.255 255.255.255.255 192.168.0.103 192.168.0.103 1
目的地址是一个广域广播,同样适用本机为网关,广播广播帧,这样的包到达路由器之后被转发还是丢弃根据路由器的配置决定。
还有个半行没有解释
Default Gateway: 192.168.0.1
这是一个缺省的网关,要是发送的数据的目的地址根前面例举的都不匹配的时候,就将数据发送到这个缺省网关,由其决定路由。
3.windows server 2008 r2路由器
通过抓包工具看数据包的传递
目前我还没有装路由远程访问,此时当192.168.3.1ping192.168.2.2此时首先客户端发送一个广播只有是路由器收到该广播数据包后才会将其转发。
在装了路由远程访问后
此时启用LAN路由后此时可以ping192.168.2.2时可以ping通但ping192.168.2.1时却不通
当192.168.3.2ping192.168.2.2的数据包不是192.168.2.2回复的而是192.168.3.1网卡回复的。首先该数据包会被广播,此时该网络中的路由器收到该广播数据包后,计算机会查看其路由表发现有目标网络的路由,而且此时目标计算机恰好自己,因此该网就直接回复该ping的请求了。
但是ping192.168.2.1同样数据包会被路由到192.168.2.0网络但此时,目标计算机的IP地址不是本计算机因此会转发到另一台路由器此时另一路由器中并没有收到192.168.3.0网络的路由请求因此无法响应客户端来自192.168.3.0的请求
添加永久静态路由
查看添加静态路由的server的路由表
同理配置另一台路由器
从192.168.3.2的客户端ping192.168.1.2的客户端数据包走向情况
通过命令来添加静态路由
通过命令添加永久的静态路由
本地连接(数据包出站)
数据包进站
同理在另一台路由器上添加永久的静态路由
测试客户端能否相互访问