一、静态路由原理
路由:负责路由器控制层面的工作,决定数据包从来源端到目的端所经过的路由路径(源主机到目标主机之间的最佳传输路径)
路由器上的每个接口是一个广播域;交换机上的每个接口是一个冲突域;
路由表:路由器中维护的路由条目的集合,路由器根据路由表做出路径选择
路由表的形成:直连网段和非直连网段(直接相连和间接相连)
非直连:静态路由和动态路由
静态路由由管理员手工配置,特点是单向的且缺乏灵活性(适合小范围)
默认路由:路由表找不到目标网络的路由条目时,将请求转发到默认路由接口(通向其他网段有且仅有一条路径)
优先级:当路由表中同时存在静态路由和默认路由的时候,静态路由的优先级最高,匹配上了立刻进行转发,如果没有匹配上静态路由,则按照默认路由进行转发。
二、路由器转发数据包的封装过程(三层转发原理)
特点:IP不变,MAC始终在变;路由器是隔离广播的
静态路由原理及配置(超详细实验进行验证)
首先,我们的环境是所有设备都是初始状态,即对外界几乎一无所知,现在要实现主机 A和主机 B之间通信
(1)主机A想要与主机B通信,但是目前只知道主机B的IP地址,所以要先经过网关,而此时主机A并不知道路由器A的MAC地址,所以发送ARP广播请求从而获取路由器A的MAC地址,此时四要素:
源IP地址:192.168.1.2/24
源MAC地址: 00-11-12-21-11-11
目的IP地址:192.168.1.1/24
目标MAC地址:FF-FF-FF-FF
(2)由于是ARP广播,所以路由器A的E0端口接收到这个广播,查看数据帧发现是自己的IP地址,由路由器A的E0端口给出回应,主机A收到回应进行ARP缓存,此时由主机A发送一个ping的数据包,此时四要素(主要内容是):
源IP地址:192.168.1.2/24
源MAC地址: 00-11-12-21-11-11
目的IP地址:192.168.2.2/24
目标MAC地址:00-11-12-21-22-22
(3)路由器A的E0接口发现目标MAC地址是自己,然后拆开数据包(解开MAC头部),发现IP地址是主机B的IP地址,此时路由器A会打开路由表查询是否有该条目信息,匹配目标网段,找到路径是E1方向,此时需要重新封装MAC头部信息,但是现在无法封装,因为没有目标的MAC地址,只能将该ping包丢弃,此时路由器A的E1端口发起一个ARP广播,此时四要素是:
源IP地址:10.1.1.1/8
源MAC地址:00-11-12-21-33-33
目的IP地址:10.1.1.2/8
目标MAC地址:FF-FF-FF-FF
(4)此时路由器B的E1端口接收到此广播,发现是目标IP是自己,将给出回应,于是将(路由器B的E1端口)自己的MAC地址(00-11-12-21-44-44)告诉路由器A的E1端口,那么路由器A的E1端口缓存路由器B的E1接口的MAC地址,此时主机A的ping包可以到达路由器B的E1端口,路由器B发现找的是自己,此时开始拆包,查询路由表,找到要经过路由器B的E0端口将数据封装后发送出去,但是此时不知道目标(主机B)的MAC地址,将该ping 包丢弃,那么此时路由器B的E0端口将发起一个ARP广播,从而获取主机B的MAC地址,此时四要素是:
源IP地址:192.168.2.1/24
源MAC地址:00-11-12-21-55-55
目的IP地址:192.168.2.2/24
目标MAC地址:FF-FF-FF-FF
(5)此时主机B收到该广播,拆包发现目标IP是自己的,将对路由器B的E0接口给出回应,告诉它自己的MAC的地址,此时路由器B的E0接口缓存该回应的信息,此时主机A的ping包数据再次过来,此时四要素:
源IP地址:192.168.2.1/24
源MAC地址:00-11-12-21-55-55
目的IP地址:192.168.2.2/24
目标MAC地址:00-11-12-21-66-66
此后主机A和主机B就可以正常互相通信,从而不再需要进行ARP的广播过程。注意上述过程中的斜体部分,是否验证了前面所说的“IP不变,MAC始终在变”的转发特点。
三、两台路由互通的配置实验操作
结合上述的原理过程,通过一个简单的实验验证这一过程。
1.在华为模拟器ensp上设置静态路由
先打开ensp ,新建2个路由器和2个pc用户,分别用网线连接,如下图
2. 将设备全部开启,并双击各个设备进行配置
首先R1,进入接口模式,配置g0/0/1 g0/0/0
4.配置R1静态路由,R2默认路由并输入命令查看路由表是否配置成功
四、三台路由互通的配置实验操作
1.在华为模拟器ensp上设置静态路由
先打开ensp ,新建3个路由器,分别用网线连接,如下图
4.配置sa三台静态路由,并输入命令查看路由表是否配置成功,再查看三台路由的互通性。
按照顺时针方向配置,要指定方向,防止回环
R1:
ip route-static 3.3.3.3 32 192.168.20.2
ip route-static 2.2.2.2 32 192.168.20.2
R2:
ip route-static 1.1.1.1 32 192.168.10.1
ip route-static 3.3.3.3 32 192.168.10.1
R3:
ip route-static 1.1.1.1 32 192.168.30.1
ip route-static 2.2.2.2 32 192.168.30.1