1. 组网需求

Switch ASwitch BSwitch C连接了20.1.1.0/2430.1.1.0/24两个网段在交换机上配置静态路由以实现两个网段的互通并配置路由备份以提高网络的可靠性。

Switch A作为20.1.1.0/24网段内主机的缺省网关,在Switch A上存在两条到达30.1.1.0/24网段的静态路由,下一跳分别为Switch BSwitch C。这两条静态路由形成备份,其中:

· 下一跳为Switch B的静态路由优先级高,作为主路由。该路由可达时,Switch A通过Switch B将报文转发到30.1.1.0/24网段。

· 下一跳为Switch C的静态路作为备份路由。

· Switch A上通过静态路由、TrackBFD联动,实时判断主路由是否可达。当主路由不可达时,BFD能够快速地检测到路由故障,使得备份路由生效,Switch A通过Switch CSwitch B将报文转发到30.1.1.0/24网段。

同样地,Switch B作为30.1.1.0/24网段内主机的缺省网关,在Switch B上存在两条到达20.1.1.0/24网段的静态路由,下一跳分别为Switch ASwitch C。这两条静态路由形成备份,其中:

· 下一跳为Switch A的静态路由优先级高,作为主路由。该路由可达时,Switch B通过Switch A将报文转发到20.1.1.0/24网段。

· 下一跳为Switch C的静态路作为备份路由。

· Switch B上通过静态路由、TrackBFD联动,实时判断主路由是否可达。当主路由不可达时,BFD能够快速地检测到路由故障,使得备份路由生效,Switch B通过Switch CSwitch A将报文转发到20.1.1.0/24网段。

2. 组网图

图1-6 静态路由、TrackBFD联动配置组网图

 

3. 配置步骤

(1) 按照1-6创建VLAN,在VLAN中加入对应的端口,并配置各VLAN接口的IP地址,具体配置过程略。

(2) 配置Switch A

# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.2.1.2,优先级为缺省值60,该路由与Track1关联。

system-view

[SwitchA] ip route-static 30.1.1.0 24 10.2.1.2 track 1

# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.3.1.3,优先级为80

[SwitchA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80

# 配置BFD echo报文的源地址为10.10.10.10

[SwitchA] bfd echo-source-ip 10.10.10.10

# 创建和BFD会话关联的Track1,检测Switch A是否可以与静态路由的下一跳Switch B互通。

[SwitchA] track 1 bfd echo interface vlan-interface 2 remote ip 10.2.1.2 local ip 10.2.1.1

(3) 配置Switch B

# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.2.1.1,优先级为缺省值60,该路由与Track1关联。

system-view

[SwitchB] ip route-static 20.1.1.0 24 10.2.1.1 track 1

# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.4.1.3,优先级为80

[SwitchB] ip route-static 20.1.1.0 24 10.4.1.3 preference 80

# 配置BFD echo报文的源地址为1.1.1.1

[SwitchB] bfd echo-source-ip 1.1.1.1

# 创建和BFD会话关联的Track1,检测Switch B是否可以与静态路由的下一跳Switch A互通。

[SwitchB] track 1 bfd echo interface vlan-interface 2 remote ip 10.2.1.1 local ip 10.2.1.2

(4) 配置Switch C

# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.4.1.2

system-view

[SwitchC] ip route-static 30.1.1.0 24 10.4.1.2

# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.3.1.1

[SwitchB] ip route-static 20.1.1.0 24 10.3.1.1

(5) 验证配置结果

# 显示Switch ATrack项的信息。

[SwitchA] display track all

Track ID: 1

Status: Positive

Duration: 0 days 0 hours 0 minutes 32 seconds

Notification delay: Positive 0, Negative 0 (in seconds)

Reference object:

BFD Session:

Packet type: Echo

Interface : Vlan-interface2

Remote IP : 10.2.1.2

Local IP : 10.2.1.1

# 显示Switch A的路由表。

[SwitchA] display ip routing-table

Routing Tables: Public

Destinations : 9 Routes : 9

Destination/Mask Proto Pre Cost NextHop Interface

10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2

10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0

10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3

10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0

20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5

20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0

30.1.1.0/24 Static 60 0 10.2.1.2 Vlan2

127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0

127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0

以上显示信息表示,BFD检测的结果为下一跳地址10.2.1.2可达(Track项状态为Positive),主路由生效,Switch A通过Switch B将报文转发到30.1.1.0/24网段。

# Switch B上删除VLAN接口2IP地址。

system-view

[SwitchB] interface vlan-interface 2

[SwitchB-Vlan-interface2] undo ip address

# 显示Switch ATrack项的信息。

[SwitchA] display track all

Track ID: 1

Status: Negative

Duration: 0 days 0 hours 0 minutes 32 seconds

Notification delay: Positive 0, Negative 0 (in seconds)

Reference object:

BFD Session:

Packet type: Echo

Interface : Vlan-interface2

Remote IP : 10.2.1.2

Local IP : 10.2.1.1

# 显示Switch A的路由表。

[SwitchA] display ip routing-table

Routing Tables: Public

Destinations : 9 Routes : 9

Destination/Mask Proto Pre Cost NextHop Interface

10.2.1.0/24 Direct 0 0 10.2.1.1 Vlan2

10.2.1.1/32 Direct 0 0 127.0.0.1 InLoop0

10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3

10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0

20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan5

20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0

30.1.1.0/24 Static 80 0 10.3.1.3 Vlan3

127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0

127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0

以上显示信息表示,BFD检测的结果为下一跳地址10.2.1.2不可达(Track项状态为Negative),备份路由生效,Switch A通过Switch CSwitch B将报文转发到30.1.1.0/24网段。

# 主路由出现故障后,20.1.1.0/24网段内的主机仍然可以与30.1.1.0/24网段内的主机通信。

[SwitchA] ping -a 20.1.1.1 30.1.1.1

PING 30.1.1.1: 56 data bytes, press CTRL_C to break

Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms

Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms

Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms

Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms

Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms

--- 30.1.1.1 ping statistics ---

5 packet(s) transmitted

5 packet(s) received

0.00% packet loss

round-trip min/avg/max = 1/1/2 ms

# Switch B上的显示信息与Switch A类似。主路由出现故障后,30.1.1.0/24网段内的主机仍然可以与20.1.1.0/24网段内的主机通信。

[SwitchB] ping -a 30.1.1.1 20.1.1.1

PING 20.1.1.1: 56 data bytes, press CTRL_C to break

Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms

Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms

Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms

Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms

Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms

--- 20.1.1.1 ping statistics ---

5 packet(s) transmitted

5 packet(s) received

0.00% packet loss

round-trip min/avg/max = 1/1/2 ms