树莓派搭建虚拟局域网进行游戏联机,省下两份加速器

2020-12-23 18:28:55 20点赞 129收藏 13评论

如何才能快速换一种生活方式?参加#牛年Flag#征稿活动,征集你2021年的购物学习生活计划!>>点击查看活动详情<<本次征稿活动欢迎你的敢出敢买Flag、学习Flag以及各种生活Flag,优秀的投稿文章能获得优厚的大奖,让我们一起努力实现目标吧!

创作立场声明:与文章中提到的品牌均无利益相关


现在很多单机游戏都向着好友联机的方向发展,例如育碧的远哭系列、2K的无主之地3、B社的德军总部。毕竟加入这样的功能可以卖出更多的游戏。和好友线上联机,最麻烦的地方在于需要两个加速器。不然游戏中途掉线、丢包、高ping是家常便饭。

为啥是两个?因为加速器只能同时登陆一个设备(钱包-10086)。花钱买了游戏还要继续花钱才能玩上游戏,这河里吗?这不河里。

掉线丢包的原因在于,如果两个玩家的设备不在同一个环境下,所有数据交互就只能通过服务器进行(令人回想起被全境封锁垃圾网络支配的恐惧)。延迟取决于玩家A-土豆服务器-玩家B是否通畅。不过厂家也进行了一些优化——当玩家可以p2p联机时,大多数数据交互就不走育碧服务器了,毕竟游玩的是单机游戏而不是网游(再一次想起被全境封锁垃圾网络支配的恐惧)。

很多单机游戏支持多人合作很多单机游戏支持多人合作

多人不借助加速器联机的解决方案也很简单——两个玩家通过虚拟专用网络(VPN)连接到同一个局域网下,就可以享受和加速器体验一致的联机体验。搭建服务器只需要三样东西:公网IP、支持端口映射的路由器、服务器(树莓派、软路由、nas都可以)

论树莓派的100种用法论树莓派的100种用法

搭建Wireguard

配置公网ip

首先打运营商电话要求给公网ip(各地政策不同,直接和客服说家里想装监控摄像头,需要公网ip)。如果可以的话,最好能固定ip地址。如果不能固定ip地址,你可以设置dynamic dns(在树莓派上配置duckdns,可选),或者使用可以从app上看到WAN口地址的路由器:

以Linksys路由器为例,可以app上看到拨号获得的ip以Linksys路由器为例,可以app上看到拨号获得的ip

当然不嫌麻烦的话,每次家里停电重启后让家人打开手机百度一下“IP”也可以获取到。

配置Wireguard

最简单的搭建wireguard的方法是使用秋水逸冰的一键脚本。

root$ wget https://raw.githubusercontent.com/teddysun/across/master/wireguard.sh && chmod 755 ./wireguard.sh && ./wireguard.sh

如果wget下载不下来的话,你可以给终端配置proxy,或者直接电脑下载好后传到树莓派上。(提示:使用三大运营商的DNS服务可能会出现问题)

首次运行这个脚本会安装wireguard(debian系建议直接下载二进制文件,不编译),随后选择让脚本生成第一个客户端配置。注意每一个配置最好同时只给一台机器用,因此为了和好友联机,需要稍后再生成第二个配置。脚本运行中任何选项直接选默认的即可(针对普通用户),默认的监听端口是6151,记住这个端口。最终生成的wireguard服务器配置文件如下:

一个interface以及两个peer一个interface以及两个peer

第二行的Address是用于VPN的虚拟网段,树莓派(服务器)IP固定为10.88.88.1。之后各个客户端依次用2, 3, 4这么排列。(因此你同时也能掌握客户端的内网ip)

获得的配置文件命名为wg0_client,并保存在/etc/wireguard目录下。进入该目录需要root权限,将其弄到Windows电脑上。然后在Windows电脑上安装wireguard客户端。(我使用的是chocolatey管理软件,其他用户直接去GitHub下载即可)

choco install wireguard -y

安装完后打开软件,提示要导入配置文件。将wg0_client重命名为wg0_client.conf后即可导入:

wireguard客户端软件界面wireguard客户端软件界面

DNS服务器地址以及Endpoint都是可以直接修改不需要改动树莓派的。针对游戏使用,DNS建议选择客户端的主路由地址,其次是114.114.114.114。

设置端口转发

wireguard监听的是192.168.1.xxx:6151端口,因此我需要把175.xxx.xxx.xxx:6151(公网)映射到内网,进入路由器管理页面,查看树莓派的局域网地址之后进行设置:

Linksys管理界面上配置好端口转发Linksys管理界面上配置好端口转发

运营商会封锁公网ip的部分端口,通常来说6151这样的端口不会出问题。设置好之后用手机4G进行测试即可。

运行联机游戏有如下两种方法:自己和朋友都通过wireguard组建局域网;朋友走wireguard进入子网,自己在家里做host。这两个方式都可以实现高质量的p2p连接。

总结

游戏体验——只要对方用的不是什么长城宽带,国内三大运营商之间的丢包和延迟都没问题。另外wireguard的性能毫无疑问可以跑满家用宽带的上限,实测在全国多地都能吃满30M的上传。某些局域网联机游戏,如Minecraft也可以通过这种方式进行。

这种方法获取到的ip地址为10.88.88.x的内网地址,需要注意默认设置下客户端是无法访问192.168.1.x的各类服务的,而且NAT也并没有实现转发(开启wireguard后NAT直接从open变成restrict)

不过这些都不是什么大问题:无法访问192.168网段的各类服务——直接全都映射到公网ip上即可(虽然更加危险但个人用户勤更新系统+密码保护就好);NAT会变成restrict——同一个网段下NAT再差也能联上(厂家考虑到了这种情况,至于还要对外p2p的话,朋友的机器走wireguard自己机器在家里做host就好)

至于如何解决这两个问题,那就是如何用wireguard做内网穿透甚至是异地组网的事情了。树莓派搭建虚拟局域网进行游戏联机,省下两份加速器 家用环境不需要这么复杂的配置,轮子能转就行。

范围局域网需要修改Allowed IPs为“0.0.0.0/1, 128.0.0.0/2, 192.0.0.0/9, 192.128.0.0/11, 192.160.0.0/13, 192.169.0.0/16, 192.170.0.0/15, 192.172.0.0/14, 192.176.0.0/12, 192.192.0.0/10, 193.0.0.0/8, 194.0.0.0/7, 196.0.0.0/6, 200.0.0.0/5, 208.0.0.0/4, 224.0.0.0/3” 这样才能访问局域网ip段


展开 收起

H3C TX1801 Plus 千兆双频路由器

H3C TX1801 Plus 千兆双频路由器

198元起

华为路由器Q2pro千兆分布式子母路由5G智能Mesh全屋wifi家用IPV6无线路由 Q2pro 3母旗舰

华为路由器Q2pro千兆分布式子母路由5G智能Mesh全屋wifi家用IPV6无线路由 Q2pro 3母旗舰

894元起

360全屋路由器V6单只AX1800高通五核wifi6全千兆端口5G双频无线速率大户型mesh组网家庭防火墙穿墙王家用

360全屋路由器V6单只AX1800高通五核wifi6全千兆端口5G双频无线速率大户型mesh组网家庭防火墙穿墙王家用

319元起

HONOR 荣耀 X3 Pro 双频1200M 家用路由器 Wi-Fi 6+ 白色

HONOR 荣耀 X3 Pro 双频1200M 家用路由器 Wi-Fi 6+ 白色

135元起

HUAWEI 华为 Q2S 双频1000M 家用路由器 Wi-Fi 5 白色 单个装

HUAWEI 华为 Q2S 双频1000M 家用路由器 Wi-Fi 5 白色 单个装

229元起

TP-LINK 普联 TP5660B 双频1200M家用路由器 Wi-Fi 5 黑色 单个装

TP-LINK 普联 TP5660B 双频1200M家用路由器 Wi-Fi 5 黑色 单个装

111元起

TP-LINK 普联 TL-WDR5620易展版 双频1200M 家用路由器 Wi-Fi 5 白色 单个装

TP-LINK 普联 TL-WDR5620易展版 双频1200M 家用路由器 Wi-Fi 5 白色 单个装

112元起

TP-LINK 普联 WDR7661千兆版 双频1900M 家用路由器 Wi-Fi 5 黑色 单个装

TP-LINK 普联 WDR7661千兆版 双频1900M 家用路由器 Wi-Fi 5 黑色 单个装

196元起

360 安盾系列 V5S增强版 双频1200M 家用路由器 Wi-Fi 5 白色 单个装

360 安盾系列 V5S增强版 双频1200M 家用路由器 Wi-Fi 5 白色 单个装

165元起

TP-LINK 普联 TL-WDR8690千兆版 双频450M家用路由器 Wi-Fi 5 红色 单个装

TP-LINK 普联 TL-WDR8690千兆版 双频450M家用路由器 Wi-Fi 5 红色 单个装

315元起

TP-LINK 普联 TL-WDR5620千兆版 双频1200M 家用路由器 Wi-Fi 5 黑色 单个装

TP-LINK 普联 TL-WDR5620千兆版 双频1200M 家用路由器 Wi-Fi 5 黑色 单个装

179元起

TP-LINK 普联 TL-WDR5660千兆版 双频1200M家用路由器 Wi-Fi 5 黑色 单个装

TP-LINK 普联 TL-WDR5660千兆版 双频1200M家用路由器 Wi-Fi 5 黑色 单个装

175元起

NETGEAR 美国网件 Orbi Pro 3000M 企业级路由器 Wi-Fi 5 2只装

NETGEAR 美国网件 Orbi Pro 3000M 企业级路由器 Wi-Fi 5 2只装

1697.42元起

360 安盾系列 V5P 双频2100M 家用路由器 Wi-Fi 5 白色 单个装

360 安盾系列 V5P 双频2100M 家用路由器 Wi-Fi 5 白色 单个装

179元起

MI 小米 4A 双频1200M 家用路由器 Wi-Fi 6 白色 单个装

MI 小米 4A 双频1200M 家用路由器 Wi-Fi 6 白色 单个装

139元起

TP-LINK 普联 TL-XDR1850易展版套装 双频1800M 家用路由器 Wi-Fi 6 黑色 单个装

TP-LINK 普联 TL-XDR1850易展版套装 双频1800M 家用路由器 Wi-Fi 6 黑色 单个装

476元起

文中相关商品

天猫精选 树莓派 Raspberry Pi4 开发板 Python学习套件
13评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
129
扫一下,分享更方便,购买更轻松