配置GRE使用动态路由协议
应用环境
使用GRE可以将运行某动态路由协议的不连续子网连接起来,组成一个完整的网络。例如两个子网络(Group A和Group B)分别在距离较远的两个城市。都运行OSPF。Group A和Group B配置GRE,并在GRE接口上运行OSPF,可以将Group A和Group B连接起来,组成一个完整的OSPF网络。
此外,使用GRE可以解决路由协议的步跳数受限问题。例如,运行RIP的网络中,如果两台设备之间的步跳数超过15,它们将无法通信。使用GRE,并在GRE接口上运行RIP,可以隐藏一部分步跳,使这两台设备正常通讯。
配置思路
在配置GRE使用动态路由协议时,采用如下的配置思路:
1. 在骨干网上各路由器间运行IGP协议实现互通。
2. 在两端用户接入的路由器之间建立GRE隧道,使其之间所有的数据都通过GRE隧道传输。
3. 在用户网络运行IGP协议。
组网需求
如下图,RouterA、RouterB、RouterC属于VPN骨干网,它们之间运行OSPF。
RouterA和RouterC之间使用三层隧道协议GRE,实现PC1和PC2互联。
PC1和PC2上分别指定RouterA、RouterC为自己的缺省网关。
Tunnel接口启用动态路由协议OSPF。VPN骨干网上使用OSPF进程1,用户接入部分使用OSPF进程2。
GRE动态路由协议配置组网图
适用产品和版本
路由器可以使用任意一款NE产品。版本为VRP5.30及后续版本。
配置步骤
步骤 1 配置各接口IP地址
按照上图配置各接口的IP地址,具体配置过程略。
步骤 2 配置VPN骨干网的IGP
# 配置RouterA。 [RouterA] ospf 1 [RouterA-ospf-1] area 0 [RouterA-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255 [RouterA-ospf-1-area-0.0.0.0] quit [RouterA-ospf-1] quit # 配置RouterB。 [RouterB] ospf 1 [RouterB-ospf-1] area 0 [RouterB-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255 [RouterB-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255 [RouterB-ospf-1-area-0.0.0.0] quit [RouterB-ospf-1] quit # 配置RouterC。 [RouterC] ospf 1 [RouterC-ospf-1] area 0 [RouterC-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255 [RouterC-ospf-1-area-0.0.0.0] quit [RouterC-ospf-1] quit
配置完成后,在RouterA和RouterC上执行display ip routing-table命令,可以看到它们能够学到去往对端接口网段地址的OSPF路由。
以RouterA的显示为例。
[RouterA] display ip routing-table
Routing Tables: Public
Destinations : 8 Routes : 8
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.2 GigabitEthernet2/0/0
10.1.1.2/32 Direct 0 0 127.0.0.1 InLoopBack0
20.1.1.0/24 Direct 0 0 20.1.1.1 Pos1/0/0
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoopBack0
20.1.1.2/32 Direct 0 0 20.1.1.2 Pos1/0/0
30.1.1.0/24 OSPF 10 3124 20.1.1.2 Pos1/0/0
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoopBack0
步骤 3 配置Tunnel接口
# 配置RouterA。 [RouterA] interface tunnel 1/0/1 [RouterA-Tunnel1/0/1] ip address 40.1.1.1 255.255.255.0 [RouterA-Tunnel1/0/1] source 20.1.1.1 [RouterA-Tunnel1/0/1] destination 30.1.1.2 [RouterA-Tunnel1/0/1] quit # 配置RouterC。 [RouterC] interface tunnel 1/0/1 [RouterC-Tunnel1/0/1] ip address 40.1.1.2 255.255.255.0 [RouterC-Tunnel1/0/1] source 30.1.1.2 [RouterC-Tunnel1/0/1] destination 20.1.1.1 [RouterC-Tunnel1/0/1] quit
配置完成后,Tunnel接口状态变为Up,Tunnel接口之间可以Ping通。
[RouterA] ping -a 40.1.1.1 40.1.1.2
PING 40.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 40.1.1.2: bytes=56 Sequence=1 ttl=255 time=24 ms
Reply from 40.1.1.2: bytes=56 Sequence=2 ttl=255 time=33 ms
Reply from 40.1.1.2: bytes=56 Sequence=3 ttl=255 time=48 ms
Reply from 40.1.1.2: bytes=56 Sequence=4 ttl=255 time=33 ms
Reply from 40.1.1.2: bytes=56 Sequence=5 ttl=255 time=36 ms
--- 40.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 24/34/48 ms
步骤 4 配置Tunnel接口的OSPF协议
# 配置RouterA。 [RouterA] ospf 2 [RouterA-ospf-2] area 0 [RouterA-ospf-2-area-0.0.0.0] network 40.1.1.0 0.0.0.255 [RouterA-ospf-2-area-0.0.0.0] network 10.1.1.0 0.0.0.255 [RouterA-ospf-2-area-0.0.0.0] quit [RouterA-ospf-2] quit # 配置RouterC。 [RouterC] ospf 2 [RouterC-ospf-2] area 0 [RouterC-ospf-2-area-0.0.0.0] network 40.1.1.0 0.0.0.255 [RouterC-ospf-2-area-0.0.0.0] network 10.2.1.0 0.0.0.255 [RouterC-ospf-2-area-0.0.0.0] quit [RouterC-ospf-2] quit
配置完成后,在RouterA和RouterC上执行display ip routing-table命令,可以看到经过Tunnel接口去往对端用户侧网段的OSPF路由,并且,去往Tunnel目的端物理地址(30.1.1.0/24)的路由下一跳不是Tunnel接口。
以RouterA的显示为例。
[RouterA] display ip routing-table
Routing Tables: Public
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.2 GigabitEthernet2/0/0
10.1.1.2/32 Direct 0 0 127.0.0.1 InLoopBack0
10.2.1.0/24 OSPF 10 2 40.1.1.2 Tunnel1/0/1
20.1.1.0/24 Direct 0 0 20.1.1.1 Pos1/0/0
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoopBack0
20.1.1.2/32 Direct 0 0 20.1.1.2 Pos1/0/0
30.1.1.0/24 OSPF 10 2 20.1.1.2 Pos1/0/0
40.1.1.0/24 Direct 0 0 40.1.1.1 Tunnel1/0/1
40.1.1.1/32 Direct 0 0 127.0.0.1 InLoopBack0
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoopBack0
PC1和PC2可以相互Ping通。





