DMVPN
1. 拓扑

2. 预期结果
- 在两台 Xatellite 与 Cisco 路由器之间建立 DMVPN 隧道。
- DMVPN 数据通过动态 IPsec 加密。
- GRE 接口 IP 地址之间可以互相 ping 通。
- Loopback 接口 IP 地址之间可以互相 ping 通。
3. 设备清单
| 设备 | 型号 | 版本 | 备注 |
| Xatellite-A | Xatellite X86 | X86 v1.6.0.240924 | |
| Xatellite-B | Xatellite X86 | X86 v1.6.0.240924 | |
| 路由器 | Cisco |
4. 操作步骤
4.1 准备工作
设置 Xatellite A:
ETH0 IP 地址:
192.168.1.6/30Loopback IP 地址:
2.2.2.2/32设置 Xatellite-B:
ETH0 IP 地址:
192.168.1.10/30Loopback IP 地址:
1.1.1.1/32设置 Cisco 路由器:
GE0/1 IP 地址:
192.168.1.1/30Loopback IP 地址:
3.3.3.3/32注意:请确保 underlay 网络中的设备可以互相通信。
4.2 将 Cisco 配置为 DMVPN Hub
在 Cisco 上配置 IPsec 信息
配置 ISAKMP(IKE Phase 1):
定义 IKE 策略。
设置加密算法、哈希算法和 DH 组。
配置预共享密钥:
指定与 Spoke 端共同使用的共享密钥。
配置 IPsec Transform Set(IKE Phase 2):
使用加密算法和哈希算法定义 transform set。
配置 IPsec Profile:
将 transform set 关联到 IPsec profile。

4.3 创建 GRE 隧道并配置 NHRP
创建 GRE 隧道:
指定隧道接口 IP 地址。
将物理接口指定为隧道源接口。
将隧道模式配置为 multipoint GRE。
配置 NHRP 设置:
配置 NHRP 映射和网络。
配置 OSPF 动态路由协议:
在隧道接口和 Loopback 接口上启用 OSPF。
配置 IPsec 加密:
将 IPsec profile 应用到 GRE 隧道接口。

配置 OSPF
通告接口:
将 Loopback 接口和 GRE 接口加入 OSPF。

4.4 在 Xatellite A 和 Xatellite B 上创建 GRE 接口
Xatellite A
- 步骤 1:登录 Xatellite A 的 WebUI。
- 步骤 2:进入
Network -> Interfaces,点击Add new interface...。 - 步骤 3:将接口命名为
GRE,在Protocol中选择GRE tunnel over IPv4,然后点击Create interface。 - 步骤 4:在设置对话框中配置:
Remote IPv4 address or FQDN:0.0.0.0
This GRE interface IPv4 address:10.0.0.3/24
Bind interface:eth1
- 步骤 5:点击
Save按钮。

Xatellite B(配置方式与 Xatellite A 类似)
步骤:重复 Xatellite A 的相同步骤,仅修改以下内容:
This GRE interface IPv4 address:
10.0.0.2/24

4.5 在 Xatellite A 和 Xatellite B 上创建 IPsec 以保护隧道流量
创建 IKE Phase 1
(Xatellite A 与 Xatellite B 配置相同,以下仅展示 Xatellite A 的配置)
步骤 1:登录 Xatellite A 的 WebUI。
步骤 2:进入
VPN -> IPsec -> Remote,点击ADD...创建新的 IPsec 连接。步骤 3:在配置对话框中设置:
Enable:勾选以启用该连接。
Remote Gateway:
0.0.0.0Pre-Shared Key:输入共享密钥,必须与 Hub 端设置一致。
Key Exchange:选择
IKEv1。Enable Phase 1 Proposal:勾选该选项。
Phase 1 Encryption Parameters:
Encryption Algorithm:
AES128Hash Algorithm:
SHA1Diffie-Hellman Group:
Group 5步骤 4:点击
Save按钮。


4.6 创建 IKE Phase 2
步骤 1:点击之前创建的 IPsec 隧道对应的
EDIT按钮。步骤 2:在顶部选择
Tunnel,然后点击ADD...创建 IPsec Phase 2。步骤 3:在配置对话框中设置:
- Enable:勾选以启用该连接。
- Local Subnet:
0.0.0.0/0 - Remote Subnet:
0.0.0.0/0 - Mode:选择
transport。 - Enable Phase 2 Proposal:勾选该选项。
- Phase 2 Encryption Parameters:
- Encryption Algorithm:
AES128 - Hash Algorithm:
SHA1
步骤 4:点击
Save按钮。

完成后的 IPsec 配置显示
- Xatellite A

- Xatellite B

4.7 将 Xatellite A 和 Xatellite B 设置为 DMVPN Spoke 模式
配置 DMVPN
(Xatellite A 与 Xatellite B 配置相同,以下仅展示 Xatellite A 的配置)
步骤 1:登录 Xatellite A 的 WebUI。
步骤 2:进入
VPN -> IPsec -> DMVPN,点击ADD NEW...创建 DMVPN 配置。步骤 3:在配置对话框中设置:
- Enable:勾选以启用 DMVPN 功能。
- Interface:绑定新创建的 GRE 接口作为 DMVPN 源接口。
- IPSec Tunnel:选择新创建的 IPsec Profile。
- DMVPN Mode:选择
Spoke。 - Map:勾选以启用映射。
- Protocol Address:输入 Hub 的 GRE 接口 IP 地址。
- NBMA Address:输入 Hub 的物理接口 IP 地址。
- 启用以下选项:
- Register
- Cisco Compatible
- Shortcut
- Non-Caching
- Multicast Type:选择
dynamic。
步骤 4:点击
Save按钮。

4.8 完成后的 DMVPN Spoke 配置显示
- Xatellite A

- Xatellite B

4.9 在 Xatellite A 和 Xatellite B 上配置 OSPF
配置 OSPF
(Xatellite A 与 Xatellite B 配置相同,以下仅展示 Xatellite A 的配置)
步骤 1:登录 Xatellite A 的 WebUI。
步骤 2:进入
Advanced Routing -> OSPF -> INSTANCE,点击Enable启用 OSPF。步骤 3:在
Router ID字段中选择或输入 Router ID。步骤 4:在接口声明区域点击
ADD...:- Interfaces to Declare:GRE 接口和 Loopback 接口。
- Area ID:输入
0。 - Network Type:选择
broadcast。 - Cost:输入
0。 - MTU Ignore:勾选该选项。
步骤 5:点击
Save按钮。
GRE 接口:

Loopback 接口:

完成后的 OSPF 配置显示
- Xatellite A

- Xatellite B

5. 测试结果与总结
- 通过
- Loopback IP 地址之间可以成功互相 ping 通。

- OSPF 通告的路由:
- 路由已通过 OSPF 成功交换。

- 当前 VPN 安全关联状态:

- DMVPN 对等体信息:

- 验证 GRE 隧道建立在 IPsec 隧道之上:

总结:
Xatellite A、Xatellite B 与 Cisco 路由器之间的 DMVPN 已成功配置并通过测试。GRE 隧道通过动态 IPsec 加密保护。两台 Xatellite 的 GRE 接口和 Loopback 接口均可互相通信,确认 DMVPN 网络和 OSPF 路由已正确建立。