一、MGRE(多点GRE):
- 属于 NBMA 网络类型;
- 在所有要连通的网络之间仅需要构建一个MA网段即可;
- 且仅可以存在一个 固定的 IP地址,看作中心站点;
- 其他分支站点可以是动态的 IP地址,节省成本,便于管理;
思考:
若多个网络需要通过VPN互联,使用点到点的普通GRE,必须两两间建立隧道,两两间编辑路由,导致网段数量和路由条目数量成指数上升,所以出现了多点GRE;
举例拓扑图:
创建好MGRE之后的图可以看成这样:
二、NHRP(下一跳发现协议):
- 至少存在一个中心站点;中心站点的 IP 地址必须固定;所有分支站点,在启动后将本地当下的物理接口 IP 地址发送到中心站点;中心站点生成 MAP(MAP中记录分支站点的公有 IP 与 Tunnel 接口的 IP 地址对应关系); 其他分支站点也可以到中心站点下载该 MAP;
- 存在服务端和客户端;服务端需要固定公有ip地址,客户端ip地址可变;客户端在本地公有ip变化后,主动向服务端进行注册;服务端生成 MAP,MAP 中记录客户端的公有 IP 与 Tunnel 接口的 IP 地址对应关系;若其他客户端需要访问另一个客户端,可以到服务端下载该 MAP;
三、配置命令:
配置思路:
1. 将拓扑图转化为 MGRE 图(自己取的名字,大家自行理解)
2. 创建 Tunnel 接口并配置 IP
3. 选择 MGRE 点到多点的封装类型
4. 中心站点的源 IP写固定的,分支站点写出接口
5. 中心站点要开启伪广播,分支站点要向中心站点注册
6. 设置 NHRP 的工作 id
(1)中心站点的配置:
[r1]interface Tunnel 0/0/0 //创建隧道接口
[r1-Tunnel0/0/0]ip address 192.168.4.1 24 //隧道接口ip地址
[r1-Tunnel0/0/0]tunnel-protocol gre p2mp //定义该隧道为多点gre隧道
[r1-Tunnel0/0/0]source 14.1.1.1 //该隧道加封装的报头源IP
//地址通过NHRP协议来获取加封装的目标IP地址
[r1-Tunnel0/0/0]nhrp entry multicast dynamic //本地成为NHRP服务端,开启伪广播
[r1-Tunnel0/0/0]nhrp network-id 100 //NHRP的工作编号,该网段所有设备必须在同一id
(2)分支站点的配置:
[r2]interface Tunnel 0/0/0
[r2-Tunnel0/0/0]ip address 192.168.4.2 24
[r2-Tunnel0/0/0]tunnel-protocol gre p2mp
//加封装的源IP地址,为本地的隧道实际通过接口的IP地址,填写接口编号,而不是接口IP,原因在于该接口IP地址可变
[r2-Tunnel0/0/0]source GigabitEthernet 0/0/0
//加封装的目标ip地址,需要到NHRP中心站点获取
[r2-Tunnel0/0/0]nhrp entry 192.168.4.1 14.1.1.1 register
[r2-Tunnel0/0/0]nhrp network-id 100