使用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

使用方法

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

2.运行

请以管理员权限运行n2n.exe(小黄鸭图标右键 —— 以管理员身份运行

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

注:安装驱动时如果出现Windows安全提示,请信任即可

3.启动

需要选择或操作的几个选项

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

小组名称:指定一个虚拟网小组名称(请尽量复杂,以便和公共N2N服务器上其他小组区分开)

虚拟IP:指定一个虚拟的局域网IP(或者让软件自动分配,但可能存在一些未知问题)

准备就绪后,点击启动

注:可能会弹出Windows防火墙的提示,请放行

4.查看状态

其他客户端

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

方法1:快捷加入

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

如:easyn2n://bjJuLnMxLmJ1Z3hpYS5jb206OTUyN0B6U213VUg0VldiQGF1dG9A

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

注:

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

方法2:手动加入

新加入的客户端,除虚拟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
……

注:

1.若选择自定义虚拟IP(比如192.168.66.1),则需要所有客户端均在该IP段内(如192.168.66.x)

2.虚拟小组的服务器、组名称均需保持一致,每个客户端虚拟IP最后一位均需独立设置

测试

同理,也可以在两个客户端间建立TCP、UDP连接进行测试

关于延迟

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

中转

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

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

直连

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

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

如何让N2N虚拟局域网走P2P?简单测试

常见问题

一些常见的问题汇总

本文标签:


381 条评论

  • 樱丘绯夜梨 评论于 回复

    大佬一直显示正在安装虚拟网卡
    安装不上怎么办

    • 樱丘绯夜梨 评论于 回复

      @樱丘绯夜梨
      现在手动安装显示TAP UPDATE (TAP0901) (MAY REQUIRE CONFIRMATION) 咋解决

  • 快乐柠萌茶 评论于 回复

    我逐渐发现了问题 ,如果我和一个朋友(win7)的链接在一个组里 然后我点击启动Ping他就很有可能会出现立马停止的问题 ,不知道是不是win7造成的问题 ,我和另一个朋友(win10)联机基本没出现过这种情况 ,但和win7的那位朋友联机,用测试工具Ping过去之后就立马停止,就像我点了停止一样。

  • 快乐柠萌茶 评论于 回复

    22/May/2023 13:32:35 [edge.c:1258] created local tap device IP: 172.20.207.9, Mask: 255.255.255.0, MAC: 00:FF:A5:DC:05:64
    22/May/2023 13:32:35 [edge.c:1356] edge started
    22/May/2023 13:32:35 [edge_utils.c:1154] successfully joined multicast group 224.0.0.68:1968
    22/May/2023 13:32:35 [edge_utils.c:2515] [OK] edge <<>> supernode
    22/May/2023 13:32:37 [n2n_port_mapping.c:373] WARNING: NAT-PMP invalid response type 0
    22/May/2023 13:32:37 [n2n_port_mapping.c:404] WARNING: NAT-PMP local TCP port 51527 mapping failed
    22/May/2023 13:32:37 [n2n_port_mapping.c:373] WARNING: NAT-PMP invalid response type 0
    22/May/2023 13:32:37 [n2n_port_mapping.c:412] WARNING: NAT-PMP local UDP port 51527 mapping failed
    22/May/2023 13:32:45 [n2n_port_mapping.c:102] WARNING: no IGD UPnP device found on the network
    这是什么问题?我打开群星,一点击开始游戏小黄鸭就立马自动停止,变成要启动的状态。
    这是调试模式的信息

  • Jayczee 评论于 回复

    大佬 同求docker或者debian/ubuntu版本 centos已经要不维护了 我debian很想装但就是没办法装 :害羞: :害羞: :害羞:

  • potten 评论于 回复

    请问能开发一个docker版本的吗,谢谢

  • eirl 评论于 回复

    你好,我获取服务器的时候显示密码错误是什么情况啊

    • Bug侠 评论于 回复

      @eirl
      获取密码会不定时更新,请重新获取~ :萌:

      • eirl 评论于 回复

        @Bug侠
        我重新获取的密码还是那个密码,使用还是错误的怎么般呢 :害羞:

  • CrazyEvilZhang 评论于 回复

    大神请教一下关于N2N联机帝国时代2征服者的问题
    我们联机的时候只有A建房B才找得到,B建房A找不到,而且A建房后B进不来。我们之前用N2N连MC测试过是通的,到了帝国就处理这个问题。请问如何解决,还请不吝赐教

  • 972 评论于 回复

    博主可以加一下我的QQ 小白虚心求教

  • 栗子 评论于 回复

    你好啊站长,我想问下n2n的Linux服务端能直接同时开两个端口吗。

    • Bug侠 评论于 回复

      @栗子
      可以的,同时运行两个supernode,分别制定不同的端口

  • aaaadeng 评论于 回复

    博主你好,我用了n2n和两个朋友联机游戏,其中一个朋友用了服务器以后可以和我流畅联机,另一个朋友在用完测试工具确定ping通以后玩游戏在我和先前那个朋友流畅的情况下却和这个朋友连不上(依旧卡顿),像这样是要怎么解决? :可爱:

    • Bug侠 评论于 回复

      @aaaadeng
      假设你们分别是A、B、C,大概是某个朋友的网络不稳定(跨运营商、到服务器延迟不稳定、无线wifi等),导致你们三个之间的数据传输不稳定。可以尝试:
      1.单独测试AB\AC\BC之间的延迟情况,判断到底是谁的问题
      2.ABC强制使用服务器中转 https://bugxia.com/2071.html

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