利用Veeam PN 做 Site to Site PNV
admin
2023-03-02 18:42:44
0

对于一般企业要做Site to Site PNV 一般配置比较麻烦和有点复杂,

但是 Veeam 为了方便备份到Azure 上,在2017年出了一下能够打通企业内网到Azure云 的通信,

推出了一个免费的产品:Veeam PN

利用它可以方便的做 Site to Site /point to Site 的PNV

veeam PN 从2.0 开始 可以在ubuntu 18.04上直接安装,而不用下载他的OVA的虚拟机文件了。

接下来,我就来在ubuntu 上直接安装Veeam PN 来实现 site to site PNV

以下是我测试的环境:

SiteA: 10.11.12.0/24

SiteB: 172.16.8.0/24

VeeamPN Hub 部署在 Site A (有公网IP)

VeeamPN Hub 内网IP: 10.11.12.9

VeeamPN Gateway 部署在 Site B (无公网IP)

VeeamPN Gateway 内网IP:172.16.8.8

 

VeeamPN System Requirements

  • Ubuntu 18.04
  • 1 vCPU (Minimum)
  • 1 GB vRAM (Minimum)
  • 16 GB of Hard Drive space
  • External Network Connectivity

1.在ubuntu 18.04 VeeamPN

登录site A ubuntu 配置hostname : ni-pnv 配置静态IP :10.11.12.9

vi /etc/hostname

vi /etc/netplay/01-necfg.yaml

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

netplan apply 应用配置:

利用Veeam PN 做 Site to Site PNV

下载并添加Veeam Software Repository Key:

curl -k http://repository.veeam.com/keys/veeam.gpg | apt-key add -

利用Veeam PN 做 Site to Site PNV

出错了,原因是gnupng2 没有安装

利用Veeam PN 做 Site to Site PNV

apt install gnupg gnupg2 gnupg1

利用Veeam PN 做 Site to Site PNV

添加VeeamPN 的 APT source list 文件:

vi /etc/apt/sources.list.d/veeampn.list

或:

echo "deb [arch=amd64] http://repository.veeam.com/pn/public pn stable" > /etc/apt/sources.list.d/veeampn.list

然后运行 apt update

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

添加 WireGuard apt Repository:

apt-add-repository ppa:wireguard/wireguard

利用Veeam PN 做 Site to Site PNV

apt install software-properties-common -y

安装完后,重新运行apt-add-repository ppa:wireguard/wireguard

利用Veeam PN 做 Site to Site PNV

接下来就可以正式安装 VeeamPN:

apt  install veeam-pnv-ui veeam-pnv-svc

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

直到安装完成:

利用Veeam PN 做 Site to Site PNV

在浏览中打开Veeam PN web Portal:

利用Veeam PN 做 Site to Site PNV

更改root密码:

利用Veeam PN 做 Site to Site PNV

正式开始部署Veeam PN Hub:

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

将这个配置文件保存下来,将在配置Site B 端的Veeam PN 时要用到的。

利用Veeam PN 做 Site to Site PNV

完成Site A 端的 Veeam PN的配置,

然后在Site A 端的防火墙上配置到Site B 端的默认路由。

利用Veeam PN 做 Site to Site PNV

到这里,Site A 端就全部配置完毕。

 

接下来在Site B 端 的Ubuntu 上安装Veeam PN

方法和Site A 完全一样。这里省略….

 

安装Veeam PN 完后,在 浏览器中打开 Veeam PN web portal:

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

利用Veeam PN 做 Site to Site PNV

找到在Site A 配置 Client 时下载的xml配置文件:

利用Veeam PN 做 Site to Site PNV

点击 :finish 完成配置。

接下来看到 server Connected :

利用Veeam PN 做 Site to Site PNV

接下来我们看看,从site A 到 site B 是否能连通:

在Site A 的系统上运行cmd

利用Veeam PN 做 Site to Site PNV

到这里为止,从Site A 到 Site B 是可以通信的。

最后我们要看一下从Site B 到 Site A是否能通信?

在site B 端的防火墙上添加一条 到site A 的静态路由:

利用Veeam PN 做 Site to Site PNV

然后看看,在site B 的系统上ping Site A 是否能通:

利用Veeam PN 做 Site to Site PNV

这样看来,site B 到 Site A 是无法通信的。

通过对比 site A 和 B 的 Veeam PN上的路由表,我们发现在 Site B 的 Veeam PN 上没有到 Site A的路由:

Site A 的路由表:

 利用Veeam PN 做 Site to Site PNV

Site B 的路由表:

利用Veeam PN 做 Site to Site PNV

现在试着在Site B 上手工添加一条到 site B 的路由是不是可以呢:

利用Veeam PN 做 Site to Site PNV

结果是:

利用Veeam PN 做 Site to Site PNV

之前是请求超时,加了路由后是 无法访问目标该机

利用Veeam PN 做 Site to Site PNV

跟踪路由发现应该是site B 端的 veeam pn  无法转发 到 site A 的通信。

此问题暂时无解,后续再看看应该是wireguard 的配置问题。

这个问题在官方的文档里都没有体现,Veeam 在这上面有点过分,

记得 veeam PN 1.0 出现同样的问题,手工添一条路由就可以相互通信的。

现在Veeam PN 2.0 同样的问题还是没有在官方的文档上提到,

https://helpcenter.veeam.com/docs/veeampn/userguide/how_to_local_sites.html?ver=20

官方论坛里有人提到:https://forums.veeam.com/veeam-tools-for-microsoft-azure-f36/veeampn-working-but-only-in-one-direction-t62278.html

 

附:

解决方法:

通过对比Site A 和 Site B 上的 Wireguard的配置发现:

site A :

利用Veeam PN 做 Site to Site PNV

Site B:

利用Veeam PN 做 Site to Site PNV

发现在site B 配置中的allowed ips 中并示包括 site A 的地址段:10.11.12.0/24

所以我们要在site B 的WireGuard 的allowed ips配置中添加 10.11.12.0/24 这段地址:

wg set wg.veeampn peer  ************  allowed-ips 10.11.12.0/24,10.211.0.0/16,10.210.0.0/16

 

利用Veeam PN 做 Site to Site PNV

现在来看看 site B 到 Site A是否能正常通信:

利用Veeam PN 做 Site to Site PNV

这样现在是可以正常通信的。

所以,从这件事可以看出有时候完全按官方文档来操作也是会出问题,

而且像veeam PN 这样的在连续几个版本的更新都存在同样问题视而不见,

直不知写那个官方文档的人是否真正做过测试,还是想当然的凭空来写的文档。

 

通过测试发现手动添加的路由和修改,系统重启后会消失的。

可以考虑让这几条命令在系统启动时自动加载

由于Ubuntu 18.04 默认不启用rc.local,因些先得启用:

ubuntu18.04不再使用 inited 管理系统,改用 systemd,

systemd 默认会读取 /etc/systemd/system 下的配置文件,该目录下的文件会链接 /lib/systemd/system/ 下的文件。一般系统安装完 /lib/systemd/system/ 下会有 rc-local.service 文件,将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来:

ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

vim /etc/systemd/system/rc-local.service

在文件末尾增加:

[Install]

WantedBy=multi-user.target
Alias=rc-local.service

编辑/etc/rc.local

vim /etc/rc.local

内容为:

#!/bin/bash

sleep 90

wg set wg.veeampn peer ************ allowed-ips 10.11.12.0/24,10.211.0.0/16

route add -net 10.11.12.0/24 dev wg.veeampn

exit 0

利用Veeam PN 做 Site to Site PNV

这样就实现真正的site to site 之间的相互通信了。

相关内容

热门资讯

世界遗产+1!景德镇打卡地图,... 北京时间7月25日,在韩国釜山举行的第48届世界遗产大会上,由我国申报的“景德镇手工瓷业遗存”项目经...
有人呼吁白宫“封杀”中国开源大... 未来一段时间,将有多款中国开源模型发布。Kimi K3定于7月27日正式开源,阿里即将开源2.4万亿...
20名“高考状元”选择学医!此... 2026年香港高考的24名“状元”中,有20人明确表示将留港攻读医科。多年来,香港最顶尖的“学霸们”...
“抢人大战”,风向有变? 各地一场“抢老人”的大战,已然徐徐拉开大幕。最近,有着人口净流出压力的吉林,计划拿出3亿元发展旅居康...
石家庄一家不限量的爱心素食面馆... 7月24日正午时分,记者来到位于石家庄市新华区东明家居西二环店北门旁的“素面”小店,不大的店面里坐满...
中材科技申请风电叶片外补强辅助... 国家知识产权局信息显示,中材科技(伊吾)风电叶片有限公司申请一项名为“风电叶片外补强辅助固化装置”的...
为人工智能治理提供重要公共产品 图为2026世界人工智能大会暨人工智能全球治理高级别会议举办期间,在世博展览馆灵心巧手展位,参观者观...
泽连斯基称俄对乌多地发动大规模... 当地时间25日,乌克兰总统泽连斯基通报称,俄军于当日凌晨对乌克兰多地发动大规模空袭,使用2枚导弹、近...
不怕没水!武汉科学家找到水稻身... 干旱来了,水稻启动"抗旱模式",可一启动就长不大、结得少——这是困扰育种界几十年的老难题。7月23日...
多款手机涨价超1000元,大存... 今年暑期消费旺季,国内智能手机市场迎来一轮显著的价格上调。第一财经记者走访深圳多家品牌门店发现,以v...