配置Windows和Linux之间的WireGuard对接

今天简单测试一下WireGuard在Windows系统和Linux系统之间的对接情况。首先下载Windows安装包,这个安装包的轻量化程度让我大为震惊,可以说是第一次看见这么小的安装包,只有85.3 KB。

图片

双击即可自动安装,不会询问任何事项,直接默认安装到C盘的Program Files路径下,占用磁盘空间8.97 MB,这个文件大小还稍微正常点;但是是下载安装的还是编译安装的没看到过程。

新建隧道有两种方式,一是从文件导入隧道,二是新建空隧道。

我们暂时没有配置文件,就先新建一个空隧道,正好看一下配置文件长什么样。

好像也看不出来配置长什么样,先保存一下,这时隧道接口竟然就创建好了。

点击连接竟然还连上了,这是连到哪里去了?

在网络连接里面出现了一个新的名为“tietou”的网络连接,很明显,就是刚才创建的。夸张的是,速率写的100 Gbps,但是没有接口地址。

我们先简单回顾一下Linux的配置过程。

可以看到,目前Windows和Linux相比,虚拟接口有了,但是没有IP地址;公钥和私钥有了,但是本地监听接口不知道,每次启动都会更改,可以手工指定一下。对比Linux,在Windows中增加几行配置。

然后在网络连接中配置网卡的IP地址为10.1.1.2/24。

对等的,在Linux系统上配置好邻居信息。
wg set wg0 listen-port 10086 peer af5sz8nDrH663fBh2HFH1LKUwGvin1hmKRz3sMiGMns= allowed-ips 10.1.1.2/32 endpoint 12.1.1.2:40846
测试连通性,状态正常,访问正常。

在Windows上可以通过窗口查看状态信息。

还可以通过命令行进行查看。

但是好像有个小问题,那就是断开隧道和重连隧道时隧道口的IP地址会丢失,手工配置的也没用。

是哪里出的问题呢?能不能设置一下IP地址呢?很遗憾,百度没能解决我的问题,那就只能自己尝试了。最后发现只要在配置文件中增加一条Address配置就可以了。这个时候感觉没有指导手册就很烦躁。

再次测试一下。

可以了,那前面的没有地址应该不是重启丢失了,是配置文件没有,所以把接口IP地址删掉了。
然后就是转发性能了,应答一下第一篇文章(使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网)中小伙伴的问题。

可以看到,使用VPN隧道访问时的带宽是730 Mbps;而不走VPN隧道转发的性能是2.06 Gbps,大概差了60%多。只有为什么多核不能增加性能,看下面这张图应该就比较明显了。

可以看到CPU0工作强度还是比较大,其他核心有点摸鱼的嫌疑。
然后我们把Linux端作为服务器端再反向测试一下。

可以看到,不走VPN隧道转发的性能是1.99 Gbps,使用VPN隧道访问时的带宽是530 Mbps,大概差了75%。

而在发送时CPU压力好像不大,不知道Linux那边是怎样的,我不会看,有没有高手来指点我一下?

声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/412592.html

联系我们
联系我们
分享本页
返回顶部