searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

基于WireGuard实现多数据中心的Full-Mesh网络互通

2023-09-25 06:13:52
254
0

1、需求背景

在数据中心之间未有专有的DCI网络的情况下,需要打通不同数据中心之间的网络,在对整体网络质量要求不高的情况下,通过虚拟专用网络的方式是一种快速实现的方式,且可以根据后续的需求来灵活的添加和减少。

2、技术分析

常用的用于数据中心之间网络互通的隧道技术为IPsec虚拟专用网络,IPsec 虚拟专用网络适合于site-to-site和hub-spoke的组网方式,若需要互通的数据中心的数量相对比较少,使用IPsec虚拟专用网络可配置,但若数据中心达到一定的数量,需要在这些数据中心之间实现Full-Mesh网络,则使用IPsec 虚拟专用网络在组网管理和维护上都难以适应,且IPsec虚拟专用网络的配置复杂。

针对多数据中心的Full-Mesh网络,使用WireGuard 能快速的实现组网,其具备如下优势:

a、高性能:在 Full-Mesh 网络中,每个 WireGuard 节点都直接与其他节点建立连接,无需经过中心化的路由器或服务器,其可以实现最短路径直接传输,减少延迟和网络拥塞;

b、简化管理:推荐使用netmaker作为WireGuard的编排管理,无需单独配置和管理每个节点之间的路由,简化网络管理和维护,减少配置错误和故障排除的复杂性;

c、连续性和可用性:Full-Mesh 网络中的任何节点都可以直接与其他节点通信,即使其中一个节点发生故障,数据仍然可以通过其他可用的路径传输;

d、网络安全:Full-Mesh 网络中的每个连接都使用 WireGuard 的加密功能进行安全通信,节点之间的数据传输是加密的,保护了数据的机密性和完整性。

3、组网介绍和配置

推荐使用netmaker作为WireGuard的编排管理,便于实现快速组网和完成路由配置。

该组网为验证组网,基于云上3个云虚拟机来组件一个WireGuard网络,其中每个云虚拟机代表一个数据中心,在云虚拟机中基于网络network namespace的方式搭建对应的数据中心内部网络,且该网络为在公网IPv4的网络上搭建IPv6的虚拟专用网络网络,并实现数据中心之间的IPv6网络互通。

netmaker的学习和部署可以参考官网链接(docs.netmaker.io)。

在netmaker上创建虚拟专用网络,填入对应的IPv4网段,并开启对应的IPv6和填入IPv6网段,创建对应的Enrollment key(注册密钥)并关联到已创建的虚拟专用网络,在对应的WireGuard 云虚拟机上安装netclient并使用“netclient join -t <token>”的方式把云虚拟机加入到netmaker上创建的虚拟专用网络中,成功添加后,该云虚拟机上会创建netmaker网口,并配置对应的IPv4和IPv6的虚拟专用网络虚拟地址,不同云虚拟机之间的虚拟地址默认互通,至此WireGuard的Full-Mesh组网搭建完成,后续需要把数据中心的路由加入到WireGuard网络中。

把数据中心的路由加入到WireGuard中,本质上为把数据中心的目标地址加入虚拟专用网络的兴趣流中,数据中心网络为对应虚拟专用网络节点后端的网络,在netmaker上在对应的虚拟专用网络中基于每个虚拟专用网络节点创建Egress Gateway,并把该虚拟专用网络后端的数据中心目标地址添加到Egress Gateway的Input中,即通过该方式对应的目标地址会在该虚拟专用网络的其他节点中把目标地址写入到兴趣流中,同时也会写入到系统路由中到netmaker网口。至此基于Egress Gateway中写Input的方式把对应数据中心的路由发布到虚拟专用网络中,从而实现不同数据中心的网络通过WireGuard的Full-Mesh互通。

0条评论
0 / 1000
技术成就未来
8文章数
0粉丝数
技术成就未来
8 文章 | 0 粉丝
原创

基于WireGuard实现多数据中心的Full-Mesh网络互通

2023-09-25 06:13:52
254
0

1、需求背景

在数据中心之间未有专有的DCI网络的情况下,需要打通不同数据中心之间的网络,在对整体网络质量要求不高的情况下,通过虚拟专用网络的方式是一种快速实现的方式,且可以根据后续的需求来灵活的添加和减少。

2、技术分析

常用的用于数据中心之间网络互通的隧道技术为IPsec虚拟专用网络,IPsec 虚拟专用网络适合于site-to-site和hub-spoke的组网方式,若需要互通的数据中心的数量相对比较少,使用IPsec虚拟专用网络可配置,但若数据中心达到一定的数量,需要在这些数据中心之间实现Full-Mesh网络,则使用IPsec 虚拟专用网络在组网管理和维护上都难以适应,且IPsec虚拟专用网络的配置复杂。

针对多数据中心的Full-Mesh网络,使用WireGuard 能快速的实现组网,其具备如下优势:

a、高性能:在 Full-Mesh 网络中,每个 WireGuard 节点都直接与其他节点建立连接,无需经过中心化的路由器或服务器,其可以实现最短路径直接传输,减少延迟和网络拥塞;

b、简化管理:推荐使用netmaker作为WireGuard的编排管理,无需单独配置和管理每个节点之间的路由,简化网络管理和维护,减少配置错误和故障排除的复杂性;

c、连续性和可用性:Full-Mesh 网络中的任何节点都可以直接与其他节点通信,即使其中一个节点发生故障,数据仍然可以通过其他可用的路径传输;

d、网络安全:Full-Mesh 网络中的每个连接都使用 WireGuard 的加密功能进行安全通信,节点之间的数据传输是加密的,保护了数据的机密性和完整性。

3、组网介绍和配置

推荐使用netmaker作为WireGuard的编排管理,便于实现快速组网和完成路由配置。

该组网为验证组网,基于云上3个云虚拟机来组件一个WireGuard网络,其中每个云虚拟机代表一个数据中心,在云虚拟机中基于网络network namespace的方式搭建对应的数据中心内部网络,且该网络为在公网IPv4的网络上搭建IPv6的虚拟专用网络网络,并实现数据中心之间的IPv6网络互通。

netmaker的学习和部署可以参考官网链接(docs.netmaker.io)。

在netmaker上创建虚拟专用网络,填入对应的IPv4网段,并开启对应的IPv6和填入IPv6网段,创建对应的Enrollment key(注册密钥)并关联到已创建的虚拟专用网络,在对应的WireGuard 云虚拟机上安装netclient并使用“netclient join -t <token>”的方式把云虚拟机加入到netmaker上创建的虚拟专用网络中,成功添加后,该云虚拟机上会创建netmaker网口,并配置对应的IPv4和IPv6的虚拟专用网络虚拟地址,不同云虚拟机之间的虚拟地址默认互通,至此WireGuard的Full-Mesh组网搭建完成,后续需要把数据中心的路由加入到WireGuard网络中。

把数据中心的路由加入到WireGuard中,本质上为把数据中心的目标地址加入虚拟专用网络的兴趣流中,数据中心网络为对应虚拟专用网络节点后端的网络,在netmaker上在对应的虚拟专用网络中基于每个虚拟专用网络节点创建Egress Gateway,并把该虚拟专用网络后端的数据中心目标地址添加到Egress Gateway的Input中,即通过该方式对应的目标地址会在该虚拟专用网络的其他节点中把目标地址写入到兴趣流中,同时也会写入到系统路由中到netmaker网口。至此基于Egress Gateway中写Input的方式把对应数据中心的路由发布到虚拟专用网络中,从而实现不同数据中心的网络通过WireGuard的Full-Mesh互通。

文章来自个人专栏
云网络技术架构和产品
8 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0