使用N2N搭建虚拟局域网联机游戏(EasyN2N\小黄鸭)

N2N, 折腾 2018/08/02

最近在折腾的一件事:朋友天南海北,如何进行局域网游戏?

若干年前,一伙同学约战网吧,CS、红警之类的联机游戏玩的不亦乐乎,如今再想找回当年的感觉已经非常不容易。其中一个比较直接的原因是,不在一个局域网内。

捣鼓了一些很古老的虚拟局域网软件Hamachi和LAN Bridger。问题很多,延迟奇高,放弃……

接着就是各种尝试不同的方案,最终找到了一个比较完美的解决方案:N2N

相对于其他虚拟局域网方案,N2N在网络环境良好的情况下,能够实现P2P直连,有效的降低虚拟局域网的延迟,即便无法直连,通过服务器中转,也能获得不错的延迟

只要支持局域网的联机游戏,N2N几乎都支持。目前我个人已测试成功的有:

CS、红警2、红警3、星际争霸1、魔兽争霸3、DOTA、方舟生存进化、文明6、群星Stellaris

流星蝴蝶剑、人类一败涂地、百战天虫、求生之路1&2、我的世界、火炬之光2、帝国时代2……

下载客户端

EasyN2N

Windows Defender 可能误报,可以选择 关闭Defender ,用 火绒 替代它

首次运行可能会弹出Windows防火墙的提示,请放行

使用方法

1.解压上述下载的压缩包

2.运行EasyN2N.exe(部分版本为n2n.exe)

初次运行时,启动器会自动安装所需要的虚拟网卡驱动

如果安装失败,请手动执行程序toolkit\tap-windows\目录下的.exe文件进行安装

手动安装虚拟网卡的最后一步有可能会报错,请根据安装日志进行搜索解决

3.启动

需要选择或输入的几个选项

服务器:提供N2N组网的服务器(EasyN2N内置,请根据软件内指引免费获取)

小组名称:使用预设的名称或自定义一个虚拟网小组名称(可点击问号查阅更多说明)

虚拟IP:使用自动分配或自定义一个虚拟的局域网IP(可点击问号查阅更多说明)

准备就绪后,点击启动

4.查看状态

如果勾选了自动分配IP,连接成功后会自动分配一个虚拟局域网IP,界面上出现绿色对勾

其他客户端

当需要让更多朋友加入你的虚拟小组时,可以使用以下方法

方法1:快捷加入

点击分享图标,EasyN2N将把当前连接的服务器、虚拟IP、小组名称等导出为专用分享链接

如:easyn2n://bjJuLnMxLmJ1Z3hpYS5jb206OTUyN0B6U213VUg0VldiQGF1dG9A

将上述链接复制粘贴给朋友,在朋友的客户端上,点击菜单导入

注:如果导出端为手动指定虚拟IP,则导入端需要手动填写虚拟IP的最后一位

方法2:手动加入

新加入的客户端,

如果是自动分配IP,只需要保持服务器和小组名称一致即可

如果是自定义虚拟IP,除虚拟IP的最后一位不同而外,其他设置均需保持一致即可

朋友A:IP地址:192.168.66.1,组名称:zSmwUH4VWb,服务器:n2n.test.com
朋友B:IP地址:192.168.66.2,组名称:zSmwUH4VWb,服务器:n2n.test.com
朋友C:IP地址:192.168.66.3,组名称:zSmwUH4VWb,服务器:n2n.test.com
……

测试

关于延迟

目前常见的N2N传输,有两种方式

中转

当参与方网络环境相对复杂(比如校园网,或存在多层交换),无法建立P2P连接时,所有的数据传输都会经过服务器中转

中转模式下,A到B的延迟 ≈ A到服务器的延迟 + B到服务器的延迟

直连

当组网参与方网络环境比较纯净,NAT状态良好的情况下,N2N会在参与方之间建立P2P连接

此时所有的数据传输不会经过服务器中转,延迟能够极大程度降到最低

常见问题

常见问题汇总

 

本文标签:


402 条评论

  • Train澈影 评论于 回复

    ping不通呀,防火墙都关了,也显示连接服务端成功了,就是俩人谁也ping不通谁

  • xt 评论于 回复

    博主,s1一直erro,一直失败是什么问题

    • Bug侠 评论于 回复

      @xt
      请选择s1而外的其他内置服务器,s1服务器在维护 :笑哭:

  • 111的321 评论于 回复

    大佬,现在做了新的实验,发生了如下的问题。
    同一局域网里面可以很容易的建立P2P连接,但是不同局域网不行。好奇是否是需要设置路由器的端口映射?如果需要,可以指导一下吗?
    该工具对应的客户端上的通信端口是什么?

    • Bug侠 评论于 回复

      @111的321
      N2N的P2P组网原理,简单来说就是【NAT打洞】,它和组网双方的网络环境复杂程度有很大的关系。
      具体的东西可以参考本文上面的【关于延迟】部分,也可以自行搜索相关的东西深入了解一下。
      edge.exe默认走的随机端口,有可以使用 -p 参数 来自定义端口,见:https://bugxia.com/n2n_launcher_param

  • Yuzu 评论于 回复

    作者大大好~,报告一个现象,现在客户端默认识别虚拟网卡不是安装的,而是UU等加速器的虚拟网卡,不知道这个现象会带来什么后果,所以报告一下

    • Bug侠 评论于 回复

      @Yuzu
      如果电脑里已存在Tap-Windows Adapter虚拟网卡,就不会安装一个新的了,免得重复引起其他问题 :咧嘴:

    评论(本站已开启评论回复邮件通知功能,请如实填写邮箱以便及时收到回复)关闭回复