这里是普通文章模块栏目内容页
华为设备静态路由的配置

静态路由

一种手动配置的路由方式,各厂商对静态路由的优先级处理不同。

优先级

在实验开始之前,首先了解一下华为设备的路由优先级(值越大优先级越小)

协议/种类 优先级
direct 0
OSPF 10
IS-IS 15
Static 60
RIP 100
IBGP 130
OSPF ASE/import 150
EBGP 170
UNKNOWN 255

可以看到华为设备的静态路由优先级是低于ospf与isis的(不算直连路由)

实验设备

实验中使用的设备:HUAWEI AR2220 & PC

实验拓扑&规划

实验目的

利用默认路由以及配置静态路由使PC1与PC2之间可以互通

实验过程

  1. 给PC配置相应的IP

  2. 给R1,R2,R3配置对应接口IP(以R1为例)

R1:

[R1]interface g 0/0/2 
[R1-GigabitEthernet0/0/2]ip add 172.10.0.254 24
[R1-GigabitEthernet0/0/2]q
[R1]interface g 0/0/0
[R1-GigabitEthernet0/0/0]ip add 10.1.1.1 30
[R1-GigabitEthernet0/0/0]q
[R1]q
<R1>save

现在我们去看路由表(以R1为例),命令display ip routing-table

Routing Tables: Public
         Destinations : 10       Routes : 10       
Destination/Mask    Proto  Pre Cost Flags NextHop      Interface

       10.1.1.0/30  Direct  0    0    D   10.1.1.1      GigabitEthernet 0/0/0
       10.1.1.1/32  Direct  0    0    D   127.0.0.1     GigabitEthernet 0/0/0
       10.1.1.3/32  Direct  0    0    D   127.0.0.1     GigabitEthernet 0/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
127.255.255.255/32  Direct  0    0    D   127.0.0.1     InLoopBack0
     172.10.0.0/24  Direct  0    0    D   172.10.0.254  GigabitEthernet 0/0/2
   172.10.0.254/32  Direct  0    0    D   127.0.0.1     GigabitEthernet 0/0/2
   172.10.0.255/32  Direct  0    0    D   127.0.0.1     GigabitEthernet 0/0/2
255.255.255.255/32  Direct  0    0    D   127.0.0.1     InLoopBack0

可以看到配置了IP的接口和所在网络都拥有了一条路由,这就是前面提到的直连路由,也就是默认路由

那么,想要实现我们的目标,可以分为两个流程来理解

所以,在R1,R2上配置前往PC2网段的路由,在R2,R3上配置前往PC1网段的路由,即可实现网络互通。
3. #### 配置静态路由
R1:

[R1]ip route-static 172.10.10.0 24 GigabitEthernet0/0/0 10.1.1.2
[R1]q
<R1>save

查看R1路由表,多了一条这样的路由

172.10.10.0/24  Static  60   0   D   10.1.1.2  GigabitEthernet 0/0/0

可以看到优先级,下一跳,出接口等信息

R2:

[R2]ip route-static 172.10.10.0 24 GigabitEthernet 0/0/2 10.1.1.6
[R2]q
<R1>save

R3:

[R3]ip route-static 172.10.0.0 24 GigabitEthernet 0/0/2 10.1.1.5
[R3]q
<R1>save

验证

接下来,由从PC1pingPC2检查网络是否相通

实验结果

PC1 与 PC2 互通

浮动静态路由

静态路由优先级的一种使用方式,通过配置不同优先级的静态路由实现备用链路
Q:静态路由应该也可以通过和其他路由协议(ospf等)之间的优先级差距,实现备用链路吧?

实验设备

HUAWEI AR2220 & PC

实验拓扑&规划

实验目的

配置不同优先级的静态路由实现当R2出现故障时,切换为前往R3的路由,保持网络通畅

实验过程

相对于上一个实验环境,只多了两条静态路由,所以,直接使用了上一个实验环境进行配置

增加连线,并配置接口ip

[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]ip add 10.1.1.9 30
[R1-GigabitEthernet0/0/1]q
[R1]q
<R1>save

当前的路由路径(PC1pingPC2):

PC>tracert 172.10.10.1

traceroute to 172.10.10.1, 8 hops max
(ICMP), press Ctrl+C to stop
 1  172.10.0.254   16 ms  15 ms  16 ms
 2  10.1.1.2   16 ms  31 ms  15 ms
 3  10.1.1.6   32 ms  31 ms  31 ms
 4  172.10.10.1   31 ms  32 ms  31 ms

配置浮动静态路由(优先级不同的静态路由)

R1:

[R1]ip route-static 172.10.10.0 24 GigabitEthernet 0/0/1 10.1.1.10 preference 100
<R1>save

优先级配置为100,低于之前配置的缺省值60

此时使用display ip routing-table查看路由表,并没有看到这条路由,猜测是因为没有生效的原因

R3:

[R3]ip route-static 172.10.0.0 24 GigabitEthernet 0/0/0 10.1.1.9 preference 100
[R3]q
<R3>save

#### 验证&排错
关闭R2
查看R1路由表,发现并没有之前配置的那条优先级为100的路由条目

去翻书,发现需要用这条命令去查display ip routing-table protocol static

结果还是没有,可以看到已配置的路由数量是两条,但是Inactive部分并没有路由条目

把这条备用路由undo了,重新配置!

[R1]undo ip route-static 172.10.10.0 24 10.1.1.10 preference 100

再去用display ip routing-table protocol static看路由表

没有了
-重新配置,查看路由表,还是没有!
猜测:书上使用的命令并没有配置出接口,我怀疑是这里的问题

重新配置,并且不指定出接口

~~[R1]ip route-static 172.10.10.0 24 10.1.1.10 preference 100~~
~~[R1]q~~
~~<R1>save~~

R3同理,undo了原来的条目,重新配置

[R3]undo ip route-static 172.10.0.0 24 GigabitEthernet 0/0/0 10.1.1.9 preference100
[R3]ip route-static 172.10.0.0 24 10.1.1.9 preference 100

加了新的物理连接要记得配IP!
收获:当静态路由的出接口配在未配置IP的接口上时,不会显示在路由表上,这时候,就可以去检查接口IP是否有问题

验证

  • 关闭R2的GE 0/0/0接口

    [R2]interface GigabitEthernet 0/0/0
    [R2-GigabitEthernet0/0/0]shutdown

  • PC1pingpc2 失败

对R3的GE 0/0/0 0/0/1 0/0/2 同时进行抓包

可以看出来,PC1发出的包到达了PC2,PC2返回的包却被R3发往了优先级为60的R2,R2随之丢弃

  • 当我关闭R2设备时

链路是成立的

负载均衡

通过条优先级相同,下一跳不同的静态路由实现负载均衡

修改之前优先级为100的路由

[R1]ip route-static 172.10.10.0 24 GigabitEthernet 0/0/1 10.1.1.10 preference 60

完成

总结

在配置静态路由时,需要注意整个链路的状态,通常源网络与目的网络中间的每一台设备都要配置对应指向的静态路由,就想接力一样。