一.路由器的工作原理
首先我们知道路由器是工作在网络层的,那就是三层设备。网络层的功能主要为:不同网段之间通信、最佳路径选择也就是逻辑地址(ip地址)寻址、转发数据。
1.路由器是什么
路由器是能将数据包转发到正确的目的地,并且在转发过程中选择最佳路径的设备,用于不同网络之间的通信。(这跟网络层的功能一样)
2.路由器的工作原理
跨网段通信把数据交给网关,ARP请求目标主机MAC地址,数据封装、解封装后通过路由表选择最佳路径然后转发。
第一步:主机1.1段要发送数据包给主机4.1端,因为IP地址不在同一段,主机会将数据包发送给本网段的网关路由器A。
第二步:路由器A接收到数据包,查看数据IP首部中的目标地址,再查找自己的路由表,数据包的目标IP地址是4.1端,属于4.0网段,路由器A在路由表中查到4.0网段对应的是S0接口,然后将数据从S0口转发出去。
第三步:网络中的每一个路由器都是按这样的步骤进行转发数据,直达了路由器B,用同样的转发方法从E0口转发出去,4.1主机就可以收到这个数据。
二.路由表结构
1.路由表是什么
它是路由器中维护的路由条目的集合,路由器根据路由表做路径选择,里面记录了网段ip地址和对应下一跳接口的接口地址。
2.路由表的原理和形成
2.1原理
根据路由表转发数据
2.2形成
直连网段:跟路由器直接相连接的网段,配置IP地址,端口UP状态,形成直连路由。
非直连网段:跟路由器不直连相连的网段,需要静态路由或者动态路由,将网段添加到路由表中。
3.静态路由
3.1静态路由
由管理员手工配置,是单向的,并且缺乏灵活性,静态路由需要管理员逐条写入,而且不能对网络的改变做出反应,因此一般来说,静态路由用于规模不大、拓扑图相对固定的网络中,如果拓扑图变了,管理员又要手动配置了。
注意:它是单方向的,如果要在路由器上配置静态路由,它也是只能往一个方向传输,如果对面需要回访,那就需要在路由器上也配置静态路由。
3.2默认路由 (特殊的静态路由 )
当路由器在路由表中找不到目标的路由条目时,路由器把请求转发到默认路由接口,它是一种特殊的静态路由,同时它的优先级也是最低的,如果同时存在静态路由,它会优先匹配静态路由。
使用场景:
这个网络只有一个唯一的路径能够到达其它网络,默认路由在某些时候非常有效,当存在末梢网络(Stub Network)时,默认路由会大大简化路由器的配置减轻管理员的工作负担,提高网络性能。
①企业的出口路由器
②末梢网络
什么是末梢网络:就是靠近用户主机的最近的一个路由器。
三.路由器转发数据包的封装过程
1.交换机和路由器的区别
交换机:先查看MAC地址缓存表是否有MAC地址,有—>转发,没有—>广播(泛洪)
工作在数据链路层,根据“MAC地址表”转发数据,硬件转发。
路由器:先查看路由表中是否有接口,有—>转发,没有–>丢弃。(路由器封装过程中:IP地址不变,MAC地址随着封装在变动)
2.路由器转发数据包的封装过程
①明确:
源IP地址:192.168.1.2
目标IP地址:192.168.2.2
②前提:
当Host A主机ping Host B主机,此时中间因为跨网段了,所以需要通过路由器来进行转发。但是传输的时候需要知道目标的MAC地址,点到点进行传输时就需要通过MAC地址来识别下一个设备的位置。
第一步:
Host A首先进行广播,使用ARP协议解析出路由器A的MAC地址,然后将路由器A的MAC地址存在自己的ARP缓存表中,再然后将源IP(192.168.1.2)、源MAC(11-11),目标IP(192.168.2.2)、目标MAC(22-22)进行封装,然后送到路由器A的E0接口。
第二步:
当路由器A的E0接口收到数据包后,先进行解封装,再查看目标IP地址,然后根据对应自己的路由表,查询到对应的转发路线,转发路由为E1,将数据送到接口E1。
第三步:
到达路由器A的E1口后再次使用ARP协议解析出路由器B的MAC地址,然后将路由器B的MAC地址存在自己的ARP缓存表中,再然后将源IP(192.168.1.2)、源MAC(33-33),目标IP(192.168.2.2)、目标MAC(44-44)进行封装,送到路由器B的E1接口。
第四步:
到达路由器B的E1接口进行解封装,查看源IP地址,再查看自己的路由表,查找到对应的路线为E0,然后将数据转发至路由器的E0接口。
第五步:
到达路由器B的E0接口,再次进行ARP解析出Host B的MAC地址,并将MAC地址存到自己的ARP缓存表中,然后将源IP(192.168.1.2)、源MAC(55-55),目标IP(192.168.2.2)、目标MAC(66-66)进行封装,封装之后送达到Host B主机中。
③小结:路由器的封装过程中,IP地址不变,MAC地址一直在变。