目录
前言
路由表作用是跨网段的数据转发,通过查询路由表实现数据包转发(就是从源主机到目标主机的转发过程)。
一、路由原理
路由器工作在网络层,它的重要作用是为数据包选择最佳路径(最佳路径是指路由器的某个接口或下一跳路由器的地址),最终送达目的地。为了尽可能的提高网络访问速度,就需要一种方法来判断从源主机到达目标主机所经过的最佳路径,从而进行数据转发,这就是路由技术。
1.1 路由器的工作原理
路由器是根据路由表进行转发的。
如下图所述,主机1.1要发送数据包给主机4.1,工作步骤如下:

1) 主机1.1 要发送数据包给主机4.1 ,因为IP地址不在同一网段,所以主机会将数据包发送给本网段的网关 路由器A。
2) 路由器A 接收到数据包,先查看数据包IP首部中的目标IP地址,再查找自己的路由表。数据包的目标IP地址是4.1,属于4.0网段,路由器A在路由表中查到4.0 网段转发的接口是S0接口。于是,路由器A 将数据包从S0 接口转发出去。
3) 网络中的每个路由器都是按这样的步骤转发数据的,直到到达路由器B, 再用同样的转发方法从E0接口转发出去,最后主机4.1 接收到这个数据包。
在转发数据包的过程中,如果在路由表中没有找到数据包的目的地址,则根据路由器的配置转发到默认接口或者给用户返回 “目标地址不可达” 的信息。
注:PC上所设置的默认网关就是路由器以太口的IP地址。
1.2 路由表的形成
路由表是:
- 在路由器中维护路由条目的集合
- 路由器根据路由表做路径选择
(路由表格式见上图)
路由表的网段又分为直联网段和非直连网段两种:
- 直连网段: 网关接口是在路由器的两边,配置IP地址,端口UP状态。当启动路由器时,会自动配置路由表,形成直连路由;
- 非直连网段:跨网段的,需要手动配置路由表
二、静态路由和默认路由
2.1 静态路由
静态路由(Static routing),一种路由的方式,路由项由网络管理员手动配置加入路由表。
与动态路由不同,静态路由是固定的,不会改变,即使网络状况已经改变或是重新被组态。
是单向的,要是想要ping通,就要通信双方的路由表都要配置。
2.2 默认路由
默认路由是一种特殊的静态路由,使用时有条件的,一般用于末梢网络。
两个相邻路由最好只将一个设置默认路由,因为默认路由只配置了上一跳。
出现默认路由的原因:路由得查看路由表而决定怎么转发数据包,用静态路由一个个的配置,繁琐易错。如果路由器有个邻居知道怎么前往所有的目的地,可以把路由表匹配的任务交给它,省了很多事。
2.3 浮动路由(备份路由)
原理:静态路由默认优先级是 60,只要另一条路优先级比60大(优先级比60低)即可。 即路由选择首先根据优先级来选走哪条路,浮动路由其实就是把一条路径的优先级设置大于60,使其优先级比60小就行。
浮动路由指的是配置两条静态路由,默认选取链路质量优(带宽大)的作为主路径,当主路径出现故障时,由带宽较小的备份路由顶替,保持网络的不中断。
优先级参照:
优先级参照表:
| 路由协议或路由种类 | 优先级 |
|---|---|
| Direct | 0 |
| OSPF | 10 |
| IS-IS | 15 |
| Static | 60 |
| RIP | 100 |
| OSPF ASE | 150 |
| BGP | 255 |
2.4 路由器转发数据包的封装过程

Host A向Host B发送数据,路由器对数据包的封装过程如下图所示:
1)Host A在网络层将来自上层的报文封装成IP数据包,其首部包含了源地址和目的地址。源地址即本机IP地址192.168.1.2,目的地址为HostB的IP地址 192.168.2.2。Host A会用本机配置的24位掩码与目的地址进行“与”运算,得出目的地址:与本机地址不在同一网段,因此发往HostB的数据包需要经过网关路由器A转发。
2)HostA通过ARP请求获得默认网关路由器A的EO接口MAC地址00-11- 12-21-22-22。在数据链路层Host A将IP数据包封装成以太网数据帧,在以太网帧首部的源MAC地址为00-11-12-21-11-11,目的MAC地址为网关E0接口的MAC地址00-11-12-21-22-22。
3)路由器人从E0接口接收到数据帧,把数据链路层的封装去掉。路由器A认为这个IP数据包是要通过自己进行路由转发,所以路由器A会查找自己的路由表, 寻找与目标IP地址192. 16.2.2相匹配的路由表项,然后根据路由表的下一跳地址将数据包转发到E1接口。
4)在EI接口路由器A重新封装以太网帧,此时源MAC地址为路由器A的E1接口MAC地址00-11-12-21-33-33,目的MAC地址为与之相连的路由器B的E1接口MAC地址00-11-12-21-44-44。
5)路由器B从E1接口接收到数据帧,同样会把数据链路层的封装去掉,对目的IP地址进行检查,并与路由表进行匹配,然后根据路由表的下一跳信息将数据包转发到E0接口。路由器B发现目的网段与自己的E0接口直接相连,通过ARP广播, 路由器B获得Host B以太口的MAC地址00-11-12-21-66-66。路由器B再将IP数据包封装成以太网帧,源MAC地址为路由器B的E0接口的MAC地址00-11-12-21-55-55,目的MAC地址为Host B的MAC地址00-11-12-21-66-66。封装完毕,将以太网帧从E0接口发往HostB。
第一次封装:主机A把上层数据封装成IP数据包,目的地址B,源地址A
第一次ARP解析:主机A通过ARP获得E0口的MAC地址
第一次解封装:路由A解封装
第二次封装:
第二次ARP解析:
第二次解封装:路由B解封装
第三次封装:
第三次ARP解析:
路由转发过程中IP不变 MAC一直在变
三、静态路由和默认路由实验
路由配置基本命令:
###默认路由 目的网段 子网掩码 下一跳网关接口IP
[Huawei]ip route-static 0.0.0.0 0.0.0.0 192.168.12.1
###静态路由 目的网段 子网掩码 下一跳网关接口IP
[Huawei]ip route-static 192.168.10.0 255.255.255.0 192.168.12.1
###查看路由表
[Huawei]display ip routing-table
//<主>优先级默认值60(越小越优先)
[R1]ip route-static 192.168.10.0 24 11.0.0.2
//配置浮动路由用于备份
[R1]ip route-static 192.168.10.0 24 12.0.0.2 preference 70
3.1 静态路由实验
使用静态路由使下图中PC之间通信。

实操:切换系统用户
执行 永不超时 命令
[Huawei]user-interface console 0
[Huawei-ui-console0]idle-timeout 0 0
不然会提示超时退出系统模式
【R1】
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.1.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 10.0.0.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1-GigabitEthernet0/0/1]int g0/0/0
[R1-GigabitEthernet0/0/0]un sh
[R1-GigabitEthernet0/0/0]q
/添加静态路由
[R1]ip route-static 192.168.2.0 24 10.0.0.2
【R2】
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 10.0.0.2 24
[R2-GigabitEthernet0/0/0]un sh
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.2.2 24
[R2-GigabitEthernet0/0/1]un sh
[R2-GigabitEthernet0/0/1]q
/添加静态路由
[R2]ip route-static 192.168.1.0 24 10.0.0.1
PC1 IP 192.168.1.10 网关 192.168.1.1
PC2 IP 192.168.2.20 网关 192.168.2.2
实验结果:
PC之间可以相互ping通。
可以执行 dis ip routing-table 命令查看路由器路由表,得到结果:

由proto是 static 知道是静态路由配置的。
3.2 默认静态路由实验
在3.1 静态路由试验的基础上,因为 R2路由上层就连接一个路由器,所以是末梢网络(R1也是,用R2来举例)。可以执行命令,对R2进行配置默认路由,使PC间能通信。
display current-configuration
[R2] un ip route-static 192.168.1.0 255.255.255.0 10.0.0.1
/添加默认静态路由
[R2]ip route-static 0.0.0.0 0.0.0.0 10.0.0.1
dis ip routing-table
//结果 0.0.0.0/0 Static 60
实验结果:
PC之间还能够ping通。
3.3 浮动路由实验
实验内容:实现下图中主机间的通信,R3做浮动路由。

分析:
浮动路由用作备份路由,也用 ip route-static。连接了浮动路由的路由无法使用默认路由。
优先级值越大,优先级越低,静态路由默认的优先级是60,浮动路由优先级配的比60大就行。
只有R1和R2在走R3网段的时候需要配置浮动路由,R3只有一条路可走,直接配置静态路由即可。
命令如下:
【R1】
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.1.1 24
[R1-GigabitEthernet0/0/0]un sh
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 10.0.0.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1-GigabitEthernet0/0/1]int g0/0/2
[R1-GigabitEthernet0/0/2]ip add 20.0.0.1 24
[R1-GigabitEthernet0/0/2]un sh
[R1-GigabitEthernet0/0/2]q
/配置静态路由 和 浮动路由
[R1]ip route-static 192.168.2.0 24 10.0.0.2
/R1到R2有两条路 20 网段是辅路
[R1]ip route-static 192.168.2.0 24 20.0.0.3 preference 70
【R2】
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 10.0.0.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.2.2 24
[R2-GigabitEthernet0/0/1]un sh
[R2-GigabitEthernet0/0/1]int g0/0/2
[R2-GigabitEthernet0/0/2]ip add 30.0.0.2 24
[R2-GigabitEthernet0/0/2]un sh
[R2-GigabitEthernet0/0/2]q
/配置静态路由 和 浮动路由
[R2]ip route-static 192.168.1.0 24 10.0.0.1
/R2到R1有两条路 30 网段是辅路
[R2]ip route-static 192.168.1.0 24 30.0.0.3 preference 70
【R3】
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 20.0.0.3 24
[R3-GigabitEthernet0/0/0]un sh
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ip add 30.0.0.3 24
[R3-GigabitEthernet0/0/1]un sh
[R3-GigabitEthernet0/0/1]q
/配置静态路由
[R3]ip route-static 192.168.1.0 24 20.0.0.1
[R3]ip route-static 192.168.2.0 24 30.0.0.2
实验结果:
PC之间可以ping通。
这时候 R1 int g0/0/1 shutdown
使10网段断开,这时候继续ping,还是能通,因为走的R3备用线路。
执行命令 dis current-configuration 能看到浮动路由的配置过程。
dis ip routing-table 看不到浮动路由。
本文介绍了路由原理,重点讲解了静态路由和默认路由的工作方式,包括路由器如何选择最佳路径、静态路由的配置及优先级,以及默认路由在末梢网络中的应用。此外,还详细阐述了浮动路由作为备份路由的机制,并通过实验验证了静态路由、默认路由和浮动路由的配置和效果。
1623

被折叠的 条评论
为什么被折叠?



