使用N2N搭建虚拟局域网联机游戏(服务端)

N2N, 分享, 折腾 2018/04/14

客户端

本站已搭建免费公益N2N服务端,并制作了N2N的启动器,如需直接联机游戏,请移步:

使用N2N搭建虚拟局域网联机游戏(客户端)

服务端(Linux)

以下安装编译基于CentOS 7 64bit,版本为n2n 3.0.0尽量使用同版本服务端和客户端,避免发生兼容性问题,导致无法连接

注:以下安装方式二选一

RPM安装

yum install libzstd -y
wget https://github.com/ntop/n2n/releases/download/3.0/n2n-3.0.0-1038.x86_64.rpm
rpm -i n2n-3.0.0-1038.x86_64.rpm

编译安装

yum install autoconf automake libtool git kernel-headers -y
wget https://github.com/ntop/n2n/archive/refs/tags/3.0.tar.gz
tar xzvf 3.0.tar.gz
cd n2n-3.0
./autogen.sh
./configure
make && make install

启动服务端

详细的服务端参数见这里 EasyN2N 服务端(Supernode)附加参数

#实际使用时,可以去掉 -f 参数,使其后台运行
supernode -p 9527 -f

若服务器开启了如iptables\firewalld\ufw等防火墙,需要放行supernode所设置的端口,否则客户端无法连接

#firewalld
firewall-cmd --zone=public --add-port=9527/udp --permanent
firewall-cmd --reload
#iptables
iptables -I INPUT -p udp --dport 9527 -j ACCEPT
service iptables save
service iptables restart
#ufw
ufw allow 9527/udp

另外,如果使用的阿里云、腾讯云等云服务器,还需要单独再在安全组中放行使用的端口(UDP)

服务端(Windows)

下载 EasyN2N,界面菜单中打开服务端

选择服务端的版本(默认v3,推荐v3),一键启动

详细的服务端参数见这里 EasyN2N 服务端(Supernode)附加参数

和Linux端类似,开启了Windows防火墙的机器需要注意放行指定的端口,或关闭防火墙

另外,如果使用的阿里云、腾讯云等云服务器,还需要单独再在安全组中放行使用的端口(UDP)



165条评论

  • Greed 评论于 回复

    Hi

    我想询问一下N2N对于单网卡多IP的情况的支持
    比如我edge边缘节点 用内网IP 连接到 supernode 但是这台edge和 supernode都是具有公网IP的
    那么其他的边缘节点可以通过edge的公网IP P2P 连接到这台edge吗

  • 唐子峻 评论于 回复

    作者大大,easyn2n能不能支持ipv6建服务器呢,没有ipv4公网IP,想和朋友直连

  • 飞天橘猫 评论于 回复

    小黄鸭得 -k 参数怎么用? -k是给服务器加密码吗 如果加了密码 其他人怎么输入密码?

  • Akola 评论于 回复

    [2022-10-08 21:26:22] shutting down…
    [2022-10-08 21:26:22] ok, I am leaving now
    [2022-10-08 21:26:25] adding supernode = 43.143.155.49:1919
    [2022-10-08 21:26:25] starting n2n edge 3.1.1-16-g23e168b-dirty-r1200 x64_static May 8 2022 23:45:52
    [2022-10-08 21:26:25] using compression: none.
    [2022-10-08 21:26:25] using null cipher.
    [2022-10-08 21:26:25] number of supernodes in the list: 1
    [2022-10-08 21:26:25] supernode 0 => 43.143.155.49:1919
    [2022-10-08 21:26:25] WARNING: encryption is disabled in edge
    [2022-10-08 21:26:25] successfully created resolver thread
    [2022-10-08 21:26:25] successfully created port mapping thread
    [2022-10-08 21:26:25] automatically assign IP address by supernode
    [2022-10-08 21:26:25] send REGISTER_SUPER to supernode [43.143.155.49:1919] asking for IP address
    [2022-10-08 21:26:28] send REGISTER_SUPER to supernode [43.143.155.49:1919] asking for IP address
    [2022-10-08 21:26:31] send REGISTER_SUPER to supernode [43.143.155.49:1919] asking for IP address
    [2022-10-08 21:26:34] send REGISTER_SUPER to supernode [43.143.155.49:1919] asking for IP address
    [2022-10-08 21:26:37] send REGISTER_SUPER to supernode [43.143.155.49:1919] asking for IP address
    请问一下大佬出现这种情况怎么解决,

  • 小菜鸟 评论于 回复

    你好!如何设置supernode参数,只允许自己的edge连接

  • marco 评论于 回复

    Bug侠大佬您好,我跟着步骤完成了,并启动了supernode,n2n填入自定义服务器,服务器地址+端口后, 点n2n的【启动】 但是不分配地址,请问要怎么做

    • Bug侠 评论于 回复

      @marco
      无法自动分配IP的问题我也不太清楚,可以试着自定义虚拟IP吧 :doge:

  • 小张 评论于 回复

    你好大佬 按照教程执行了
    编译安装
    yum install autoconf automake libtool git kernel-headers -y
    wget https://github.com/ntop/n2n/archive/refs/tags/3.0.tar.gz
    tar xzvf 3.0.tar.gz
    cd n2n-3.0
    ./autogen.sh
    ./configure
    make && make install
    这条命令显示执行成功

    ——————————–
    然后开启服务器
    06/Sep/2022 20:54:13 [supernode.c:588] WARNING: using default federation name; FOR TESTING ONLY, usage of a custom federation name (-F) is highly recommended!
    06/Sep/2022 20:54:13 [sn_utils.c:136] calculated shared secrets for edge authentication
    06/Sep/2022 20:54:13 [supernode.c:604] supernode is listening on UDP 7654 (main)
    06/Sep/2022 20:54:13 [supernode.c:613] supernode opened TCP 7654 (aux)
    06/Sep/2022 20:54:13 [supernode.c:620] supernode is listening on TCP 7654 (aux)
    06/Sep/2022 20:54:13 [supernode.c:629] supernode is listening on UDP 5645 (management)
    06/Sep/2022 20:54:13 [supernode.c:641] dropping privileges to uid=99, gid=99
    06/Sep/2022 20:54:13 [sn_utils.c:807] successfully created resolver thread
    06/Sep/2022 20:54:13 [supernode.c:659] supernode started

    之后呢怎么操作?
    是在客户端服务器那栏输入我的公网ip地址:7654就行了嘛? 为什么在客户端输入这一串之后 点击启动 没有给我分配虚拟IP? 希望大佬能抽出时间解答一下 我也学习一下 谢谢 :二哈:

    • Bug侠 评论于 回复

      @小张
      1.对,看日志,supernode已经运行正常了
      2.如果客户端运行不正常,需要分析日志,是不是客户端没连上supernode?

      • 小张 评论于 回复

        @Bug侠
        感谢作者回复,我查询了一下日志,显示如下:
        [2022-09-07 15:55:49] shutting down…
        [2022-09-07 15:55:55] adding supernode = 118.31.12.101:7654
        [2022-09-07 15:55:55] starting n2n edge 3.1.1-16-g23e168b-dirty-r1200 x64_static May 8 2022 23:45:52
        [2022-09-07 15:55:55] using compression: none.
        [2022-09-07 15:55:55] using null cipher.
        [2022-09-07 15:55:55] number of supernodes in the list: 1
        [2022-09-07 15:55:55] supernode 0 => 118.31.12.101:7654
        [2022-09-07 15:55:55] WARNING: encryption is disabled in edge
        [2022-09-07 15:55:55] successfully created resolver thread
        [2022-09-07 15:55:55] successfully created port mapping thread
        [2022-09-07 15:55:55] automatically assign IP address by supernode
        [2022-09-07 15:55:55] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        [2022-09-07 15:55:58] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        [2022-09-07 15:56:01] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        [2022-09-07 15:56:04] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        [2022-09-07 15:56:07] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        [2022-09-07 15:56:10] send REGISTER_SUPER to supernode [118.31.12.101:7654] asking for IP address
        一直在询问ip 不分配ip地址,请问这是怎么回事?如何解决呢?麻烦作者大大了。

        • Bug侠 评论于 回复

          @小张
          之前也有朋友反映过asking for IP address的问题,有几个疑惑:
          1.sn端参数有没有指定分配的IP段?如果有,分配IP段是否配置正确?
          2.不使用自动分配IP的话,edge端自定义虚拟IP是否成功?

        • 玄冥 评论于 回复

          @小张
          那个,我也是遇到这个问题,然后搞了一个小时,原因是因为云服务端口放行默认的是TCP协议把TCP改成UDP即可

  • da 评论于 回复

    -bash: supernode: command not found
    这是怎么回事

  • 达达 评论于 回复

    大佬,服务器报ERROR: n2n_seed faced error errno=38 from getrandom syscall.是啥错误啊

  • mxld 评论于 回复

    请问一下 WINDOW V3版本 服务端开启不了怎么办 点击开启之后马上停止了

    • Bug侠 评论于 回复

      @mxld
      命令行执行,看看是否报错
      “你的EasyN2N路径\n2n_client\x64\supernode_v3_bugxia_n2n.exe” “你的EasyN2N路径\n2n_client\supernode.conf”

  • 若然 评论于 回复

    请问我使用提供的服务器,使用自动获取IP,
    一直卡最后这个Asking for IP Address,这是什么原因呢?
    [2022-06-19 17:39:06] adding supernode = mc13.starmc.cn:9527
    [2022-06-19 17:39:06] starting n2n edge 3.1.0-54-g45520f3-dirty-r1127 x64_static Jan 22 2022 12:10:15
    [2022-06-19 17:39:06] using compression: none.
    [2022-06-19 17:39:06] using null cipher.
    [2022-06-19 17:39:06] number of supernodes in the list: 1
    [2022-06-19 17:39:06] supernode 0 => mc13.starmc.cn:9527
    [2022-06-19 17:39:06] WARNING: encryption is disabled in edge
    [2022-06-19 17:39:06] successfully created resolver thread
    [2022-06-19 17:39:06] successfully created port mapping thread
    [2022-06-19 17:39:06] automatically assign IP address by supernode
    [2022-06-19 17:39:06] send REGISTER_SUPER to supernode [mc13.starmc.cn:9527] asking for IP address
    [2022-06-19 17:39:09] send REGISTER_SUPER to supernode [mc13.starmc.cn:9527] asking for IP address
    [2022-06-19 17:39:12] send REGISTER_SUPER to supernode [mc13.starmc.cn:9527] asking for IP address
    [2022-06-19 17:39:15] send REGISTER_SUPER to supernode [mc13.starmc.cn:9527] asking for IP address

    • Bug侠 评论于 回复

      @若然
      服务端制定了分配的IP段?
      Asking for IP Address是指客户端没有指定虚拟IP,需要从服务端获取,但是服务端一直分配不下来IP,所以不停的在ask :笑哭:

      • IAQ 评论于 回复

        @Bug侠
        请问遇到这种情况,有什么解决方法吗。

      • da 评论于 回复

        @Bug侠
        我也是这样要这么解决呀

      • 小张 评论于 回复

        @Bug侠
        大佬你好,就和这楼兄弟一样的情况 服务器是阿里云的 请问这种具体怎么解决?

  • 门刀臣 评论于 回复

    大佬您好,我用云服务器搭建了一个服务器以供连接,但是请问我该如何设置超级节点呢?看了大佬发的指令输入后会导致客户端连接需要几分钟才能连上,服务端那边则会一直报错

    • Bug侠 评论于 回复

      @门刀臣
      不太懂你的意思,不管Windows还是Linux,服务端启动后,客户端直接连接“服务端IP:端口”就行。至于你说的“需要几分钟才能连上”,不知道是咋回事,另外报错内容是啥呢?

      • 门刀臣 评论于 回复

        @Bug侠
        谢谢大佬回复,是这样的,我租了一个云服务器用来做服务端,然后客户端这边使用-S1附加代码会隔很久才能连上服务端,服务端这边报错:authentication failed. 过了一会虽然能够连上但是和朋友一起进游戏过后互相看不见房间(不使用-S1则可以互相看见)。

        • Bug侠 评论于 回复

          @门刀臣
          客户端下 -S1 参数表示不使用P2P,强制使用服务器中转(UDP),一般情况下很少用到这个,我不太理解……
          根据你的情况,结合:https://bugxia.com/2518.html,我猜测是第二条报错吧,需要服务端添加 -M 参数启动

          • 门刀臣 评论于 回复

            @Bug侠
            谢谢大佬回复,因为我们P2P联机会很卡所以才尝试服务器中转,服务端的指令添加有-v和
            -m,但仍然会出现上面说的问题,使用服务器中转会导致互相看不到房间

            • Bug侠 评论于 回复

              @门刀臣
              1.那需要贴出完整的服务端日志了,不知道是哪里报错。
              2.什么游戏?我这边顺手测试了文明6和CS1.6,不管是中转还是P2P,都是正常看见并加入房间的。

              • 门刀臣 评论于 回复

                @Bug侠
                感谢大佬回复
                [2022-06-25 01:12:20] assign IP 172.26.2.157/24 to tap adaper of edge
                [2022-06-25 01:12:21] authentication failed
                [2022-06-25 01:12:25] authentication failed
                [2022-06-25 01:12:29] authentication failed
                [2022-06-25 01:12:33] authentication failed
                [2022-06-25 01:12:37] authentication failed
                服务端是这样的日志,然后过一小会就连上了,但是看不到房间,游戏是英灵神殿

                • Bug侠 评论于

                  @门刀臣
                  这个问题我还没遇到过,分别贴一下吧
                  1.supernode和edge版本
                  2.supernode、edge配置

              • 门刀臣 评论于 回复

                @Bug侠
                谢谢大佬那么耐心,服务端客户端都是v3.1版本.配置的话我不太懂是指电脑配置还是软件配置?
                客户端这边只有一个-I B6D7A548FA7E 附加参数 ,服务端的话只有-v -m, 因为我是第一次接触此类软件和技术,所以很多东西不懂还请见谅

  • 门刀臣 评论于 回复

    大佬您好,我用云服务器搭建了一个服务器以供连接,但是我的另外一个朋友A使用这个服务器和我联机游戏会很卡,于是想尝试您说的-S指令,请问是该用-S还是-S1呢

  • zhaixianyu 评论于 回复

    作者大大你好,windows服务端可以用TCP吗。我没有找到设置方法

    • Bug侠 评论于 回复

      @zhaixianyu
      Windows不管服务端还是客户端暂时不支持直接TCP连接~
      但是可以用其它方法将UDP转为TCP连接,坏处是就客户端没法P2P了

  • XJG 评论于 回复

    站长你好,我使用的一台win2012服务器作为服务端但是,客户机连接获取不到IP该如何解决

    • Bug侠 评论于 回复

      @XJG
      自定义IP可以用吗?几个排查:
      1.服务端指定IP段要正确(符合规则)
      2.服务端及客户端均使用建议v3

  • Minzia 评论于 回复

    请问这个服务端开了之后,在客户端上服务器那一栏填入的就是自己的服务端ip嘛

    • Bug侠 评论于 回复

      @Minzia
      对的,本机作为服务端的话,客户端服务器那里就是127.0.0.1:你的端口,或者公网IP:你的端口

  • 小黄 评论于 回复

    你好,不知N2N能否实现一台云服务器搭建虚拟局域网,两台手机不在同一个地方连上一起联机游戏呢,那款手机游戏有局域网联机模式

    • Bug侠 评论于 回复

      @小黄
      什么手机呢?N2N有安卓端,iOS的也有,我未测试。
      N2N虚拟网下的客户端,不限于所处的网络或设备等,只要在一个虚拟网内,都是可以互通的

      • 小黄 评论于 回复

        @Bug侠
        是安卓手机,就是我云服务器是CentOs的,按照本文步骤搭建完后 手机应该怎么连这台服务器呢 不知小组名啥的

        • Bug侠 评论于 回复

          @小黄
          已经写了教程了:https://bugxia.com/2601.html
          就记住一句话:联机双方,除了IP不一样,其他都一样

  • ShayInoue 评论于 回复

    大佬你好,我想请问一下,我可以在我唯一一台电脑上开启服务器,之后也在这台电脑上使用游戏端和朋友进行联机吗

    • Bug侠 评论于 回复

      @ShayInoue
      可以的,客户端同时也可以作为服务端

  • 评论于 回复

    您好,我想请问一下使用N2N进行我的世界联机,如果我的这个联机地图游玩世界较长肯定游戏里面的内容会越来越多,在加上其他玩家跑图,或者使用红石科技,到后期用这个来进行联机会变得非常卡顿。

    • 评论于 回复

      @杨
      用N2N联机后期会不会变得很卡顿

      • Orz 评论于 回复

        @杨
        这个是主机的问题,和N2N并无任何关联

        • 评论于 回复

          @Orz
          意思是说,和朋友建立连接之后,开启的联机网络是基于主机电脑配置和主机网络为基础吗。因为以前我用的是内网穿透游戏一到后期就卡的不行。

          • Bug侠 评论于 回复

            @杨
            瞎猜一下:
            1.不太确定你是联机卡顿还是电脑卡顿;
            2.我大概搜了一下相关的资料:可以确定的是,红石太多确实会影响联机卡顿。参考这篇:https://tieba.baidu.com/p/7779598993

          • Bug侠 评论于 回复

            @杨
            大概明白了,MC里所有方块的状态更新频率要同步,也就相当于实时的会有很多数据在传输,如果是像你的内网穿透,或者没有走P2P的N2N,就必须得经过服务器中转,服务器的带宽太小的,承受不了这么的并发量,所以卡顿。

  • iwantplay 评论于 回复

    你好,我想问下胡闹厨房这种可以用吗

    • Bug侠 评论于 回复

      @iwantplay
      不好意思,理论上是可以的,但是我没有测试胡闹系列 :害羞:

  • 萌大 评论于 回复

    大佬我想问,n2n跟lanplay其实哪个更好呢,因为最近了解到n2n多用于端游直接联机,而lanplay则是需要另一台PC处理IP数据

    • Bug侠 评论于 回复

      @萌大
      不好意思,你说的这个lanplay我没用过,不知其原理,所以没法比较这两者区别 :萌:

  • WeiHY 评论于 回复

    @Bug侠 RPM安装和编译安装是二选一,还是都需要安装?

    • Bug侠 评论于 回复

      @WeiHY
      不好意思,忘了标注,二选一即可

  • 高6晨 评论于 回复

    从哪里能获取到 2.7.0_r525 的zip 文件 wget GitHub的地址太慢了

  • 高6晨 评论于 回复

    Debian 10 安装n2n v2 所有的安装都很顺利 但运行的时候 提示 edge 未找到该命令

    • Bug侠 评论于 回复

      @高6晨
      可能是最后一步,编译成功后,没有将可执行文件安装到/usr/bin这些目录下吧

      • 高6晨 评论于 回复

        @Bug侠
        我还怎么办?

        • Bug侠 评论于 回复

          @高6晨
          找到你n2n源码目录,假设是/root/n2n,下面应该有编译好的可执行文件 edge
          cp /root/n2n/edge /usr/bin/edge
          chmod 755 /usr/bin/edge

        • Bug侠 评论于 回复

          @高6晨
          再或者就是,确认已经编译好的情况下,cd到你的n2n源码目录,执行
          make install

          • 高6晨 评论于 回复

            @Bug侠
            执行过了,没有效果,所以才留言的

  • Hellaugh 评论于 回复

    您好,我朋友n2n在开启之后,控制面板的网络连接中,n2n的那个网卡仍然是网络电缆被拔出的状态,请问这该如何解决呢?

  • 评论于 回复

    :二哈: 站长,你好,首先感谢你的提供的启动器,让我和朋友们可以联机打游戏。
    这边看了站长的服务端搭建,我也跟着教程一步步搭建了自己的服务器,supernode节点启动成功,但是在easyn2n添加服务的时候,获取失败,请问这是什么原因呢?
    (vps系统:debian 9,默认不带防火墙)

  • 高6晨 评论于 回复

    有Linux 版的客户端吗? 我的服务器是Linux 的 N2N服务端在阿里云

  • zheng 评论于 回复

    站长,你好。我想问一下N2N服务端,服务器在内网通过端口映射到公网地址。然后客户端连公网地址这样能够建立的吗?还是说公网地址一定要在服务器上。

    • CyiceK 评论于 回复

      @zheng
      端口映射到公网,你可以ping一下是否连通。我也是用服务器通过端口映射出去,公网ip可以连接

      • zheng 评论于 回复

        @CyiceK
        嗯,知道了。谢谢!

        • Jeff 评论于 回复

          @zheng
          老哥你的测试结果怎么样啊?能用吗?分享一下配置的细节可以吗?

          • zheng 评论于 回复

            @Jeff
            服务器在内网,在路由器上做端口映射就好了。

            • Jeff 评论于 回复

              @zheng
              嗯,了解了,非常感谢 :咧嘴:

  • 酒井美纪 评论于 回复

    mmj手机版citra模拟器,支持本地多人联机了,怪物猎人走起!

  • 评论于 回复

    大佬,有没有在openwet上使用的n2n教程,想实现直接通过路由器连接,以前有n2n的插件但都是很老的版本了,尝试按照liunx的办法安装不上,还要相关界面就更不会玩了。

    • Bug侠 评论于 回复

      @魂
      这一篇呢:https://bugxia.com/2217.html

  • 猫头 评论于 回复

    :二哈: 站长联系一下我,我想建立一个服务器,但是你的服务器看了一下好复杂。

    • Bug侠 评论于 回复

      @猫头
      已经很简洁……启动器里有群,群里有我 :汗:

      • august 评论于 回复

        @Bug侠
        我自己就建立一个服务器,不能链接,是什么原因?防火墙关闭了,端口使用的是10088,使用的是阿里云的云服务器进行架设的,不知道哪儿错了!

        • ll 评论于 回复

          @august
          请问你这个问题解决了么,我也是你这种情况

  • mcxiaoji 评论于 回复

    搭建好以后 两个小组 还是在一个网段

  • mcxiaoji 评论于 回复

    请问怎么做到 不同的虚拟网(组) 有不同的IP段

    • Bug侠 评论于 回复

      @mcxiaoji
      目前自动分配IP有bug,还是建议自定义虚拟局域网IP

  • wjk 评论于 回复

    有没有玩文明6的,找不到房间

    • jock 评论于 回复

      @wjk
      测试了一下可以看见局域网房间,就是要不断退到菜单重进才能看到,不一定什么时候刷出来

  • GH 评论于 回复

    站长你好,我在自己服务器上搭建完以后,客户端连接会一直跳出WARNING: Supernode not responding, now trying ****(我的服务器ip),在服务端也会重复Purging old registrations; Remove 0 registrations 实际上好像没有连接成功 这该怎么办

    • Bug侠 评论于 回复

      @GH
      客户端提示 Supernode not responding 表示没有连接到N2N服务端,需要检查服务端supernode端口是否放行或者关闭防火墙等组建再试试

      • GH 评论于 回复

        @Bug侠
        重装了一遍,解决了,谢谢站长。还有一个问题就是虚拟网卡名字如果带下划线的话,启动器会报warning:Unable to set device IP address 和 MTU,文件名、目录名或卷标语法不正确。不知道是n2n 还是启动器的问题(似乎对联机没影响)

  • msty 评论于 回复

    提示:“找不到接受实际参数“-1”的位置形式参数”咋办啊,GitHub下载的

    • Bug侠 评论于 回复

      @msty
      啊?这么还有中文的提示?

      • msty 评论于 回复

        @Bug侠
        是的啊 我是Windows server 2012r2的系统,百度云的服务器,用的cmd窗口,下载了官网的链接。但是没有用呢

        • Bug侠 评论于 回复

          @msty
          哦哦,明白了,我以为是n2n提示的,原来是windows cmd窗口提示的。
          检查一下运行路径有没有带空格,有的话,用双引号括起来
          比如 cd “C:\Program Files\n2n\”

  • Yuzu 评论于 回复

    非常感谢巨佬的文章以及工具,终于找到个饥荒也能用的联机工具,感激不尽!!!!!!

    • Bug侠 评论于 回复

      @Yuzu
      不用客气,能帮到你就是我荣幸~ :咧嘴:

  • 小小崽 评论于 回复

    站长好,请问cmd客户端下的操作,能做到一个程序里填点基本参数直接傻瓜运行吗?没有电脑基础的表示有很大的困难。。。

    • Bug侠 评论于 回复

      @小小崽
      本站做的N2N启动器就是edge命令行的傻瓜式操作……不知道是不是你想要的……https://bugxia.com/357.html

  • 小小崽 评论于 回复

    楼主你好,请问有windows版的N2N服务器吗?我处于公司的内网环境下,想跟其他的处于内网环境下的同事一起游戏,但是找不到方法。我们没有Linux的电脑、、、

    • Bug侠 评论于 回复

      @小小崽
      有的啊,就在本页,请往上翻翻……

      • 小小崽 评论于 回复

        @Bug侠
        今天的网站怎么回事,图片都打刷不开了,已经刷新N次了。。。想看看图片教程的。。

  • 扇子 评论于 回复

    Bug侠 你好(听说你能立刻收到通知,,)
    我准备用N2N联机星际争霸1,游戏局域网采用UDP联机
    WIN7用V1 网络搭建并能 PING通,和实现共享文件
    无法搜索到游戏(双方均关闭防火墙,无第三方防御软件)

    • Bug侠 评论于 回复

      @扇子
      不好意思,这两天没注意到消息……
      星际我还没试过,但是理论上来说,一般没有N2N搞不定的联机游戏,出问题基本都是客户端这边的问题。
      我晚上下个星际1,试试以后再回复你 :笑哭:

      • 扇子 评论于 回复

        @Bug侠
        :笑哭: 谢谢大哥,等你消息啦

        • Bug侠 评论于 回复

          @扇子
          晚上记录一篇折腾的教程……

          • 扇子 评论于 回复

            @Bug侠
            如果需要我可以配合你 测试

    • Bug侠 评论于 回复

      @扇子
      嗨~我这边测试了,两个版本,一个3G多的什么官方原版(可以选择UDP和IPX),和一个100多M的那个1.08中文版(只可以选IPX),配和【Win10免IPX补丁】,前者无论UDP和IPX都无法搜索到对方,后者打上补丁,就可以使用IPX方式搜到对方,可以正常联机。

      • 扇子 评论于 回复

        @Bug侠
        3G 是重置版,,1.09版本可以用UDP 连吗 ? 什么补丁有链接吗,WIN7 有相关补丁吗?

        • Bug侠 评论于 回复

          @扇子
          UDP协议后续我再折腾看看,我这边试了,也是无法搜到
          不过IPX协议已成功,请参阅 https://bugxia.com/1749.html

  • 墨绿 评论于 回复

    你好站长 我想问一下能ping通对方而且防火墙也关了 但在 无主之地3 还是搜不到对方,其他游戏又可以

    • Bug侠 评论于 回复

      @墨绿
      不好意思啊,我也没细研究过无主之地3的联机,我猜想很多游戏联机机制可能不太一样,导致无法搜到。如果其他游戏可以的话,那说明n2n组虚拟网是没有问题的,所以还得从游戏这边排查一下。 :害羞:

  • Hosigus 评论于 回复

    站长好,首先感谢您的教程,非常有用。
    想向您询问一个特殊情况:我的服务端是ubuntu,启动了服务。客户端是windows。两个都是我自己用ntop/n2n的dev分支编译(交叉编译)的。服务端端口能正常通信(使用nc测试连接),服务端启动服务后客户端连接在”edge started”过后没有日志输出,即没有正常连接,也没有报错信息。当客户端连接一个错误的端口时,有错误信息输出。
    请问您可以给我一些提示或建议吗?

    • Bug侠 评论于 回复

      @Hosigus
      唉,我也是一知半解,所以只能是盲猜一番了。
      =============
      1.有没有尝试使用其他人编译的?或者是meyerd的n2n?同样是没有输出吗?
      2.拿着你编译的edge,换到别人的电脑或者其他网络环境再测试一次呢?
      3.nc是通的,应该是只能说明端口没有问题,问题还是发生在edge和supernode通信的过程中导致打洞不成功,这个得翻源代码逐行分析。

  • 有信 评论于 回复

    站长你好,问题是这样的,能ping通,我的外网ip是192.168.0.105,在本机上创建游戏服务器,房间名称是192.168.0.105:7777,我设的n2n是192.168.10.4,小伙伴是192.168.10.1,小伙伴搜不到服务器。

    • Bug侠 评论于 回复

      @有信
      有几个不太明白的地方:
      1.外网ip是192.168.0.105?是你的路由器给的地址对吧,192.168.10.4是N2N指定的地址,然后房间名称是192.168.0.105:7777?7777是什么端口?这里有点不太明白
      2.你和朋友在不同的网络环境下,需要通过N2N联机对吧

      • 有信 评论于 回复

        @Bug侠
        1.是路由器ip,7777是游戏的端口,应该可以忽略,感觉上猜测需要connect 192.168.0.105才能连上游戏
        2.不在同一个地方,他家和我家的样子。

        • Bug侠 评论于 回复

          @有信
          明白了,也就是使用N2N组网的时候无法搜到对方,我把问题好像想复杂了。
          几个排查步骤:
          1、确认双方的N2N客户端均出现” Rx REGISTER_SUPER_ACK myMAC=……“的字样,表示连接上supernode服务器
          2、尝试ping对方的虚拟IP,如果确认已连上supernode服务器,并且双方都在同一个虚拟局域网网段内,但无法ping通,建议关闭windows防火墙再试。
          3、如果能ping通,但搜不到,可以尝试使用CS之类的自带调试台的游戏,使用connect命令手动连接到对方房间

          • 有信 评论于 回复

            @Bug侠
            1,2没问题,能ping通的,有一些其他游戏可以玩。
            3,问题在于不是所有游戏都能调出控制台,connect。假如可以connect,猜测这个游戏需要connect 192.168.0.105才可以。
            4,有没有可能让游戏只使用n2n的虚拟网卡
            (war3搜不到房间,晚上用cs试试。)

            • Bug侠 评论于 回复

              @有信
              我也不清楚有些游戏搜寻房间的机制
              之前有个评论和你的情况类似,当时我对war3也测试了一下,情况如下:
              ============
              我这边和朋友下了魔兽3测试了一下,同时也测试了CS、流星,都是可以正常联机的。见图:
              https://s2.ax1x.com/2019/02/07/ktQu4J.png
              https://s2.ax1x.com/2019/02/07/ktQmEF.png
              https://s2.ax1x.com/2019/02/07/ktQnN4.png
              不过测试过程中,发现一个问题:
              A建立的房间,B能看见也能加入;而B建立的房间,A无法看见也无法加入,但是双方都能ping通。
              于是就尝试把B的电脑防火墙关闭,重启游戏,再次建立房间,A就可以看见B的房间并成功加入游戏。
              ============

              • 有信 评论于 回复

                @Bug侠
                我想知道你用的是什么系统测试的,win7还是win10。
                可以确定不是防火墙的问题,试过双方都关闭防火墙,war3依旧搜不到房间,互相看不见
                cs是connect连上的,不是搜到的
                有没有可能让电脑以虚拟网卡为主

                • Bug侠 评论于

                  @有信
                  这是当时的截图,Win10 1803,我和我朋友都是Win10。
                  自定义程序使用指定网卡,这个路子我还没研究过,不过我这边确实是折腾了半天防火墙、路由器什么的就能搜到了,具体是不是防火墙导致的,还不能下定论。
                  不过既然能connect连上,说明N2N是通的,服务端是没问题的,更多的还得从客户端这边下手研究研究。

                • Bug侠 评论于

                  @有信
                  对了,还有一位博主对N2N有很深的研究,你可以参考参考他博客里的文章:http://www.lucktu.com/archives/783.html

  • 阿杜 评论于 回复

    站长你好,我的意思是V2版本的那个管理端口怎么用(默认是5645),如何管理?这个端口能否修改?

    • Bug侠 评论于 回复

      @阿杜
      不好意思,这个参数我也没细研究过 :笑哭:

  • 阿杜 评论于 回复

    您好,请问这个服务端在WIN7 命令行下如何运行?能详细说下吗?本人菜鸟,您上文只说了一句很简单带过,不懂:((

      • 阿杜 评论于 回复

        @Bug侠
        非常感谢,!!测试成功。另外问下如果我要自己定义管理端口的话,是不是就需要自己重新编译服务端,自己定义端口了?

        • Bug侠 评论于 回复

          @阿杜
          -l 可以指定端口,比如上面命令的9527,可以任意替换其他未被占用的端口

  • 许彪 评论于 回复

    客户端是win10 1903系统,服务端centos7,端口无误,防火墙已关,都是用的V2。centos7启动成功了,windows客户端一直报WARNING: Supernode not responding – moving to 0 of 1

    • Bug侠 评论于 回复

      @许彪
      其他win客户端呢?出现这个提示,表示客户端连不上服务端,要么就是服务端的防火墙(iptables\firewalld),要么就是客户端win的防火墙,或者就是运营商UDP封锁,不过这个可能性较小,建议再多排查,我这边无法给你一个准确的解决方法,抱歉了~

      • 许彪 评论于 回复

        @Bug侠
        感谢站长~找到一个原因了,服务端开放的端口不能走TCP,走UDP就连接上了,但是很奇怪,服务端明明是编译的V2版本,客户端要用V2s才能连接上,下班试试能不能愉快游戏。再次感谢站长创作的优质内容!祝好

        • Bug侠 评论于 回复

          @许彪
          不用客气,找到原因就好,N2N只有v1和v2存在大版本的差异,V2s只是其一个分支 :萌:

  • Gene 评论于 回复

    你好,我想问一下。不关闭windows防火墙的话,开放哪些端口才能ping通

    • Bug侠 评论于 回复

      @Gene
      单独设置放行ping的话可以参考:https://blog.csdn.net/wy_bk/article/details/85013933
      =====
      p.s 放行ping而外,如果还要联机游戏,还需要再新建游戏的tcp\udp入站出站规则,略微麻烦

  • 林半仙 评论于 回复

    你好想问一下 centos可以用客户端吗? 有具体方法吗?

    • Bug侠 评论于 回复

      @林半仙
      可以的,CentOS下使用n2n比Windows下还简单。不过很抱歉,我这边没有教程。

      • 林半仙 评论于 回复

        @Bug侠
        我自己试过 总是PING不通

        • Bug侠 评论于 回复

          @林半仙
          是两个edge之间不通吗?有没有检查防火墙firewalld或者iptables相关的设置。我这边不太方便,明晚回去可以折腾折腾CentOS下的客服端。

      • 林半仙 评论于 回复

        @Bug侠
        两台win 一台centos 用V2所有都ping不通 V1两台win可以ping通 CENTOS所有都不通。。

        • Bug侠 评论于 回复

          @林半仙
          好吧,这个情况我也没遇到过,所以暂时没法帮到你。明天我先在我这边部署一下Win和CentOS下v1和v2的环境,再分析分析,这会儿电脑没在手边……

        • Bug侠 评论于 回复

          @林半仙
          我这边搭建了2台Win和2台CentOS,都没有出现Win和CentOS无法互通的问题。
          https://bugxia.com/1342.html
          :笑哭:

  • shrek 评论于 回复

    您好,我的情况是双方都能ping通,防火墙没有关闭,但是minecraft局域网游戏服务器搜寻不到对方,请问这可能是哪方面的原因呢?

    • Bug侠 评论于 回复

      @shrek
      不好意思,我的世界我没尝试过。不过如果双方都能ping通对方的话,可以试试用其他游戏测试连通性。
      比如我之前在联机CS时也是出现搜不到对方的问题,但是通过cs内置的控制台命令connect 192.168.*.* 就可以连接到对方建立的游戏里。

      • shrek 评论于 回复

        @Bug侠
        好的,谢谢您了。实在不行的话我直接用游戏对战平台了。

  • linmo 评论于 回复

    能不能出个关于手机hin2n的配置教程呢,

  • whitedew 评论于 回复

    老哥我的debug窗口没有东西https://i.loli.net/2019/01/01/5c2acff3a1e78.jpg
    ,ping不通朋友防火墙都关了

    • Bug侠 评论于 回复

      @whitedew
      不好意思,目前 win10 1809 下会有这个bug,正在修复

  • 帝国 评论于 回复

    我参考您的文章和其他一些教程搭建好了n2n,连接信息也是成功的,但是游戏里还是看不到对方。游戏是文明6,steam正版,有局域网模式。

    • Bug侠 评论于 回复

      @帝国
      双方都能ping通对方吗?

  • 冰皇 评论于 回复

    emmmm,我在联机工具上好像出现了些问题,一个人连进房间另外一个人就进不去了,只要那个人退出,这个进不去的人就可以进去,ip没有冲突,不知道为什么

  • 大头 评论于 回复

    你这个还是两两连接啊?怎么组成局域网呢?

    • Bug侠 评论于 回复

      @大头
      怎么是两两连接呢……不同的客户端(edge)自定义同段但不同的IP,加入相同的小组,再连接相同的中心节点(supernode),就可以组网了啊。

      • 大头 评论于 回复

        @Bug侠
        必须连接相同的小组才行啊? 用这个吗?
        -c 用于区分节点的社区(组)名

        • Bug侠 评论于 回复

          @大头
          对,同IP段不同IP、同小组、同密码、同中心节点,否则即使连上中心节点,也是无法互通的。

          • 大头 评论于 回复

            @Bug侠
            谢谢大牛牛,有qq吗

            • Bug侠 评论于 回复

              @大头
              QQ万年不在线一次,有事直接留言就行,我能立刻收到通知。 :二哈:

  • 猫头鹰 评论于 回复

    您好,请问N2N是否可以帮助电信和网通的玩家顺利的p2p联机(一款叫做欧陆风云的游戏,通过steam联机,全国各地共19个人)?我是个新手,在挑选工具上犹疑不决,N2N跟Softethen VPN哪个更合用呢?

    • Bug侠 评论于 回复

      @猫头鹰
      欧陆风云有局域网联机模式吗?如果有的话,N2N就可以帮助你和其他朋友组成一个虚拟的局域网。
      softether v*p*n和n2n的原理不一样,n2n组成的虚拟局域网数据传输可以不经过中转服务器,所以能获得更好的延迟,并且部署比较简单。
      如果只是为了联机游戏,还是推荐n2n

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