第四章:静态路由
转发数据包是路由器的最主要功能。路由器转发数据包时需要查找路由表,管理员可以通过手工的方法在路由器中直接配置路由表,这就是静态路由。虽然静态路由不适合于在大的网络中使用,但是由于静态路由简单、路由器负载小、可控性强等原因,在许多场合中还经常被使用。
4.1静态路由概述
静态路由配置简单,被广泛应用于网络中。另外,静态路由还可以实现负载均衡和路由备份。因此,学习并掌握好静态路由的应用与配置是非常必要的。
- 路由信息获取方式
- 直连路由:直连接口所在网段的路由,由设备自动生成。
- 静态路由:由网络管理员手工配置的路由条目
- 动态路由:路由器通过动态路由协议(如OSPF、IS-IS、BGP等)学习到的路由
RIP:Routing Information Protocol 路由信息协议
OSPF:Open Shortest Path First开放式最短路径优先
IS-IS:Intermediate system to intermediate system 中间系统到中间系统
BGP:Border Gateway Protocol 边界网关协议
- 路由表的参数
- Destination/Mask:表示此路由的目的网络地址与网络掩码。将目的地址和子网掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为1.1.1.1,掩码为255.255.255.0的主机或路由器所在网段的地址为1.1.1.0。
- Proto(Protocol):该路由的协议类型,也即路由器是通过什么协议获知该路由的。
- Pre(Preference):表示此路由的路由协议优先级。针对同一目的地,可能存在不同下一跳、出接口等多条路由,这些不同的路由可能是由不同的路由协议发现的,也可以是手工配置的静态路由。优先级最高(数值最小)者将成为当前的最优路由。
- Cost:路由开销。当到达同一目的地的多条路由具有相同的路由优先级时,路由开销最小的将成为当前的最优路由。
- NextHop:表示对于本路由器而言,到达该路由指向的目的网络的下一跳地址。该字段指明了数据转发的下一个设备。
- Interface:表示此路由的出接口。指明数据将从本路由器的哪个接口转发出去。
- preference
表4-1列出了各种协议的preference
表4-1:各种协议的preference
路由来源 | 路由类型 | 默认优先级 |
直连 | 直连路由 | 0 |
静态 | 静态路由 | 60 |
动态路由 | RIP | 100 |
OSPF | 内部10,外部150 | |
IS-IS | 15 | |
BGP | IBGP255,EBGP255 |
- 最优路由条目优先
当路由器从多种不同的途径获知到达同一个目的网段的路由时,通过比较优先级和度量值来优先路由:
- 比较优先级,优先级越低越优先
- 优先级相同,比较度量值,度量值越小越优先
- 最长匹配原则
当路由器收到一个IP数据包时,会将数据包的目的IP地址与自己本地路由表中的所有路由表项进行逐位(Bit-By-Bit)比对,直到找到匹配度最长的条目,这就是最长前缀匹配机制。
4.2 实验一:静态路由
1、实验需求
① 掌握路由表的概念;
② 掌握route-static命令的使用;
③ 理解根据需求正确配置静态路由。
2、实验拓扑
实验拓扑如图4-1所示:
图4-1 静态路由
3、实验步骤
(1)网络连通性
R1的配置如下:
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
R2的配置如下:
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 12.1.1.2 24
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]ip address 23.1.1.2 24
[R2-GigabitEthernet0/0/0]undo shutdown
[R2-GigabitEthernet0/0/0]quit
R3的配置如下:
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R3
[R3]interface g0/0/1
[R3-GigabitEthernet0/0/1]ip address 23.1.1.3 24
[R3-GigabitEthernet0/0/1]undo shutdown
[R3-GigabitEthernet0/0/1]quit
(2)测试网络连通性
R1访问R2
[R1]ping 12.1.1.2
PING 12.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 12.1.1.2: bytes=56 Sequence=1 ttl=255 time=60 ms
Reply from 12.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 12.1.1.2: bytes=56 Sequence=3 ttl=255 time=50 ms
Reply from 12.1.1.2: bytes=56 Sequence=4 ttl=255 time=40 ms
Reply from 12.1.1.2: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 12.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/48/60 ms
从ping的显示结果可以看到网络连通性没有问题
R2访问R3
[R2]ping 23.1.1.3
PING 23.1.1.3: 56 data bytes, press CTRL_C to break
Reply from 23.1.1.3: bytes=56 Sequence=1 ttl=255 time=70 ms
Reply from 23.1.1.3: bytes=56 Sequence=2 ttl=255 time=40 ms
Reply from 23.1.1.3: bytes=56 Sequence=3 ttl=255 time=60 ms
Reply from 23.1.1.3: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 23.1.1.3: bytes=56 Sequence=5 ttl=255 time=20 ms
--- 23.1.1.3 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/44/70 ms
从ping的结果显示可以看到网络连通性没有问题
【技术要点】
对于初学者来说,每次配置完IP地址以后,最好按以上方式测试网络的连通性。以此来确认IP地址配置是否有问题,如果网络不能访问可能存在以下问题:
- 接口没有打开,显示结果如图4-2所示,Physical下显示为“*down”。
图4-2 接口没有打开
- 拉口没有配置IP地址或者是IP地址配置错误,显示结果如图4-3所示, IP Address/Mask下显示为” unassigned ”
图4-3 没有配置IP地址
(2)配置静态路由
R1的配置:
[R1]ip route-static 23.1.1.0 255.255.255.0 12.1.1.2 //配置静态路由目录网络为23.1.1.0,下一跳为12.1.1.2
【技术要点】
配置静态路由有三种方式
①关联下一跳的方式
[Huawei] ip route-static ip-address { mask | mask-length } nexthop-address
②关联出接口的方式
[Huawei] ip route-static ip-address { mask | mask-length } interface-type interface-number
③关联接口和下一跳的方式
[Huawei] ip route-static ip-address { mask | mask-length } interface-type interface-number [ nexthop-address ]
在创建静态路由时,可以同时指定出接口和下一跳。对于不同的出接口类型,也可以只指定出接口或只指定下一跳。
对于点到点接口(如串口),只需指定出接口。
对于广播接口(如以太网接口)和VT(Virtual-template)接口,必须指定下一跳。
对于以太网,如果要成功封装数据帧,就必须知道下一跳ip地址的mac地址,如果不指定下一跳地址而只指定出接口,设备无法通过arp协议获取到下一跳的mac地址,从而无法完成数据帧的封装。广域网协议封装帧无需mac地址,在后面的课程中会介绍,因此对于以太网接口必须指定下一跳地址。
综上所述,R1上的静态路由理论上有三种配置方法:
[R1]ip route-static 23.1.1.0 255.255.255.0 12.1.1.2 //关联下一跳
[R1]ip route-static 23.1.1.0 255.255.255.0 g0/0/0 //关联出接口
[R1]ip route-static 23.1.1.0 255.255.255.0 g0/0/0 12.1.1.2 //关联出接口和下一跳
R3的配置:
[R3]ip route-static 12.1.1.0 24 23.1.1.2
4、实验调试
(1)在R1上查看路由表
[R1]display ip routing-table //查看路由表
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 5 Routes : 5
Destination/Mask Proto Pre Cost Flags NextHop Interface
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
23.1.1.0/24 Static 60 0 RD 12.1.1.2 GigabitEthernet0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
以上输出可以看一路由表有一条23.1.1.0/24的静态路由
【技术要点】
我们查看23.1.1.0这条路由,各种参数解析如下:
- Destination/Mask:23.1.1.0/24 //目标网络为23.1.1.0,子网掩码为255.255.255.0
- Proto:Static //此路由是通过静态路由学习到的
- Pre: 60 //静态路由的优先级为60
- Cost: 0 //路由的开销为0
- Flags: RD //其中R代表此路由条目为迭代的路由条目,D代表此路由条目下发到FIB表中
- NextHop:12.1.1.2 //路由的下一跳为12.1.1.2
- Interface:GigabitEthernet0/0/0 //路由的出接口为g0/0/0
(2)在R2上查看路由表
<R2>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 6 Routes : 6
Destination/Mask Proto Pre Cost Flags NextHop Interface
12.1.1.0/24 Direct 0 0 D 12.1.1.2 GigabitEthernet0/0/1
12.1.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
23.1.1.0/24 Direct 0 0 D 23.1.1.2 GigabitEthernet0/0/0
23.1.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
【思考】
为什么R2上不用配置静态路由?
解析:因为R2有12.1.1.0/24和23.1.1.0/24的直连路由
【技术要点】
直连路由是由数据链路层协议发现的,是指去往路由器的接口地址所在网段的路径,该路径信息不需要网络管理员维护,也不需要路由器通过某种算法进行计算获得,只要该接口处于激活状态,路由器就会把直连接口所在的网段路由信息填写到路由表中去。链路层只能发现接口所在的直连网段的路由,无法发现跨网段的路由。跨网段的路由需要用其他的方法获得。
(3)在R3上查看路由表
<R3>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 5 Routes : 5
Destination/Mask Proto Pre Cost Flags NextHop Interface
12.1.1.0/24 Static 60 0 RD 23.1.1.2 GigabitEthernet0/0/1
23.1.1.0/24 Direct 0 0 D 23.1.1.3 GigabitEthernet0/0/1
23.1.1.3/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
(4) R1访问R3
<R1>ping 23.1.1.3
PING 23.1.1.3: 56 data bytes, press CTRL_C to break
Reply from 23.1.1.3: bytes=56 Sequence=1 ttl=254 time=70 ms
Reply from 23.1.1.3: bytes=56 Sequence=2 ttl=254 time=60 ms
Reply from 23.1.1.3: bytes=56 Sequence=3 ttl=254 time=80 ms
Reply from 23.1.1.3: bytes=56 Sequence=4 ttl=254 time=50 ms
Reply from 23.1.1.3: bytes=56 Sequence=5 ttl=254 time=50 ms
--- 23.1.1.3 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 50/62/80 ms
从ping的结果我们可以看到R1可以访问R3。
4.3实验二:缺省路由
- 实验目的
① 默认路由的使用场合;
② 默认路由的配置
- 实验拓扑
实验拓扑如图4-4所示
图4-4缺省路由
- 实验步骤
- 配置网络连通性
R1的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
R2的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 12.1.1.2 24
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]ip address 23.1.1.2 24
[R2-GigabitEthernet0/0/0]undo shutdown
[R2-GigabitEthernet0/0/0]quit
[R2]interface g0/0/2
[R2-GigabitEthernet0/0/2]ip address 24.1.1.2 24
[R2-GigabitEthernet0/0/2]undo shutdown
[R2-GigabitEthernet0/0/2]quit
R3的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R3
[R3]interface g0/0/1
[R3-GigabitEthernet0/0/1]ip address 23.1.1.3 24
[R3-GigabitEthernet0/0/1]undo shutdown
[R3-GigabitEthernet0/0/1]quit
R4的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R4
[R4]interface g0/0/1
[R4-GigabitEthernet0/0/1]ip address 24.1.1.4 24
[R4-GigabitEthernet0/0/1]undo shutdown
[R4-GigabitEthernet0/0/1]quit
- 配置静态路由
R1的配置
[R1]ip route-static 0.0.0.0 0.0.0.0 12.1.1.2 //配置缺省路由到任何网段下一跳为12.1.1.2
【技术要点】
在本实验中,如果我们使用静态路由,那么我们要配置两条静态路由,具体配置如下:
[R1]ip route-static 23.1.1.0 255.255.255.0 12.1.1.2
[R1]ip route-static 24.1.1.0 255.255.255.0 12.1.1.2
读者想一想,如果有1000条路由,我们的配置是不是特别复杂,所以针对于下一跳相同的多条静态路由读者可以使用缺省路由来简化配置。
R3的配置
[R3]ip route-static 12.1.1.0 255.255.255.0 23.1.1.2
R4的配置
[R4]ip route-static 12.1.1.0 255.255.255.0 24.1.1.2
- 实验调试
查看R1的路由表
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 5 Routes : 5
Destination/Mask Proto Pre Cost Flags NextHop Interface
0.0.0.0/0 Static 60 0 RD 12.1.1.2 GigabitEthernet0/0/0
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
通过查看R1的路由表,读者可以看到一条缺省路由,虽然简化了配置,读者测试一下网络连通性。
R1访问R3
[R1]ping 23.1.1.3
PING 23.1.1.3: 56 data bytes, press CTRL_C to break
Reply from 23.1.1.3: bytes=56 Sequence=1 ttl=254 time=100 ms
Reply from 23.1.1.3: bytes=56 Sequence=2 ttl=254 time=60 ms
Reply from 23.1.1.3: bytes=56 Sequence=3 ttl=254 time=50 ms
Reply from 23.1.1.3: bytes=56 Sequence=4 ttl=254 time=70 ms
Reply from 23.1.1.3: bytes=56 Sequence=5 ttl=254 time=80 ms
--- 23.1.1.3 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 50/72/100 ms
R1访问R4
[R1]ping 24.1.1.4
PING 24.1.1.4: 56 data bytes, press CTRL_C to break
Reply from 24.1.1.4: bytes=56 Sequence=1 ttl=254 time=60 ms
Reply from 24.1.1.4: bytes=56 Sequence=2 ttl=254 time=90 ms
Reply from 24.1.1.4: bytes=56 Sequence=3 ttl=254 time=60 ms
Reply from 24.1.1.4: bytes=56 Sequence=4 ttl=254 time=80 ms
Reply from 24.1.1.4: bytes=56 Sequence=5 ttl=254 time=80 ms
--- 24.1.1.4 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 60/74/90 ms
通过测试读者可以看到,缺省路由虽然简化了配置,但是不影响访问,所以读者以后在遇到类似的拓扑可以考虑使用缺省路由。
实验视频指南:
课程 - 华为Datacom认证HCIA 系统学习课 - 卓应云课堂https://ke.joinlabs3.com/course/27
4.3实验三:浮动静态路由
- 实验目的
- 浮动静态路由的使用场景
- 浮动静态路由的配置
- 实验拓扑
实验拓扑如图4-5所示
图4-5 浮动静态路由
- 实验步骤
(1)网络连通性
R1的配置
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
[R1]interface g0/0/1
[R1-GigabitEthernet0/0/1]ip address 10.1.1.1 24
[R1-GigabitEthernet0/0/1]undo shutdown
[R1-GigabitEthernet0/0/1]quit
R2的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]ip address 12.1.1.2 24
[R2-GigabitEthernet0/0/0]undo shutdown
[R2-GigabitEthernet0/0/0]quit
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 10.1.1.2 24
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
[R2]interface LoopBack 0 //创建环回口编号为0
[R2-LoopBack0]ip address 8.8.8.8 32 //配置IP地址
[R2-LoopBack0]quit
【技术要点】
Loopback是路由器里面的一个逻辑接口。逻辑接口是指能够实现数据交换功能,但是物理上不存在、需要通过配置建立的接口。Loopback接口一旦被创建,其 物理状态和链路协议状态永远是Up,即使该接口上没有配置IP地址。正是因为这个特性,Loopback 接口具有特殊的用途。在本实验中loopback中的8.8.8.8相当于是公网上的一台服务器。
(2)浮动静态路由
如果实验需求:R1访问8.8.8.8的数据都从g0/0/0口出去,只有当g0/0/0的链路出了问题才会从g0/0/1口出去,我们就可以通过浮动静态路由来配置,其配置如下:
[R1]ip route-static 8.8.8.8 255.255.255.255 12.1.1.2 preference 50 //
[R1]ip route-static 8.8.8.8 255.255.255.255 10.1.1.2 preference 100
【技术要点】
Preference代表一条路由的可信任的程度,越小越优。
- 实验调试
(1)查看R1的路由表
<R1>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
8.8.8.8/32 Static 50 0 RD 12.1.1.2 GigabitEthernet0/0/0
通过以上输出,我们可以看到路由表里面只有一条去往8.8.8.8的静态路由。
(2)查看8.8.8.8这条路由的详细信息
<R1>display ip routing-table 8.8.8.8 verbose
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 2
Destination: 8.8.8.8/32
Protocol: Static Process ID: 0
Preference: 50 Cost: 0
NextHop: 12.1.1.2 Neighbour: 0.0.0.0
State: Active Adv Relied Age: 00h12m54s
Tag: 0 Priority: medium
Label: NULL QoSInfo: 0x0
IndirectID: 0x80000001
RelayNextHop: 0.0.0.0 Interface: GigabitEthernet0/0/0
TunnelID: 0x0 Flags: RD
Destination: 8.8.8.8/32
Protocol: Static Process ID: 0
Preference: 100 Cost: 0
NextHop: 10.1.1.2 Neighbour: 0.0.0.0
State: Inactive Adv Relied Age: 00h12m41s
Tag: 0 Priority: medium
Label: NULL QoSInfo: 0x0
IndirectID: 0x80000002
RelayNextHop: 0.0.0.0 Interface: GigabitEthernet0/0/1
TunnelID: 0x0 Flags: R
通过以上输出,可以看到有两条路由,下一跳为12.1.1.2的路由优先级为50,下一跳为10.1.1.2的路由优先为100,优先级为50的路由被放到了路由表,优先级为100的没有被选中。
(3)关闭g0/0/0接口,造成g0/0/0口链路故障
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]shutdown
[R1-GigabitEthernet0/0/0]quit
(4)查看R1的路由表
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 5 Routes : 5
Destination/Mask Proto Pre Cost Flags NextHop Interface
8.8.8.8/32 Static 100 0 RD 10.1.1.2 GigabitEthernet0/0/1
通过以上输出,可以看到优先级为100的路由出现在路由表中了,这就是浮动静态路由
(5)把R1的g0/0/0接口打开
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
(6)查看R1的路由表
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
8.8.8.8/32 Static 50 0 RD 12.1.1.2 GigabitEthernet0/0/0
通过以上输出可以看到优先级为50的路由又回到了路由表,
4.4静态路由命令汇总
表4-2列出了本章所使用的命令
表4-2 静态路由命令汇总
命令 | 作用 |
ip route-static | 配置静态路由 |
display ip routing-table | 查看全局路由表 |
display ip routing-table x.x.x.x verbose | 查看某条路由条目的详细信息 |
京东链接:
本文出自作者的《华为认证HCIA-datacom认证实验指南》