不幸的开始…
最近是steam的秋促时间,不幸剁手了深岩银河(我称之为矮人挖矿)。于是这就成为了我和朋友们最近的团建游戏(*‘ v`*)
但是多人模式的矮人挖矿是一款P2P联机游戏,也就是说,是通过玩家的电脑之间互相连接来联机的。如果玩家的电脑都互相很难找到(在赛里斯境内的网络环境很容易导致这一点),那么联机的效果就会很差
偶遇矮人挖矿,多人联机频繁断线,拼尽全力无法战胜(; ・`д・´)
遂搬出绝招之N2N
什么是N2N?
N2N是一款虚拟局域网工具。在网络环境允许下,N2N能使客户端之间实现P2P直连;而若是网络环境不允许,N2N也能通过服务器中转来维持连接
相信敏锐的你已经可以看出,N2N是需要一个公网服务器的。但既然你会看这种莫名其妙地方的博客文章,我假设你已经有一台公网服务器应该也可以(ゝ∀・)
至于客户端,我选用了EasyN2N,这是一个有图形界面的N2N客户端。我相信读文章的你是喜欢且愿意折腾的,但你的朋友们大抵不是。因此,一个简单好操作的客户端能帮助你们更快地开始享受游戏(*‘ v`*)
Fun Fact: 还是会有很多你的朋友觉得配置EasyN2N都很烦
服务端配置
由于EasyN2N的N2N版本是v3,我们也必须选用N2Nv3的服务端。搜索引擎给出的很多N2N服务端配置都是v2的,这会导致连接不上
我在这里选用了qida/n2n
,详细可以查看:qida/n2n – Docker Image | Docker Hub
直接使用他提供的启动命令也没什么问题:
docker run -d \
--name=supernode \
--privileged=true \
--net=host \
qida/n2n supernode -p 7654 -M -f
嗯,完了,就这么简单
客户端配置
首先,你和你的朋友们都需要下载一个EasyN2N,他的官方链接在这里:
由于这货是用易语言写的,所以很可能会被杀毒软件识别为病毒( ¬ _ ¬ ;)。在这里,我选择相信这个软件,虽然我没有仔细研究过他的运行逻辑是否真的不含病毒。但是如果你不愿意相信(这很正常!),你可以选择别的方法,例如自建N2N edge节点,但是会相对复杂一些╮(︶▽︶)╭
在下载并解压后,打开n2n.exe
在红框处填写你部署的N2N服务端的IP:端口
(你也可以通过上面的按钮保存他),然后和你的朋友在右下角填写一样的小组名称,最后点击启动,如果被成功分配了一个公网IP,那么就配置完毕啦!(*‘ v`*)
在这时候,你可以Ping一下你的好朋友的ip,理论上已经是可以连通的啦!
后记
普及了N2N技术后,我的矮人挖矿再也没有唐突掉线过
好吧,有那么一次,出现网络波动的时候,所有没开N2N的全掉了,开了N2N的都留了下来(; ・`д・´)
还是每次都记得开一下吧,别懒( ¬ _ ¬ ;)