想和遥远的游戏好友玩局域网游戏怎么办?
引言:
在我不算漫长的游戏生涯中,我不知为什么就成为了朋友们的开服工具。随着时间的积累,我积累了许多关于游戏的宝贵经验。我不希望这些经验白白浪费,因此决定将它们整理成文,以便那些尚未深入研究联机游戏的朋友们能够快速入门。于是,我便着手撰写了这个系列:《如何成为游戏好友们的“牛马”》。
该系列的一切前提都是你有台有公网IP的服务器,或是有一台VPS+无公网IP服务器!!
系列第一篇:只能局域网联机的游戏该怎么办?——Ubuntu搭建N2N服务器不完全指南
在我的游玩体验中,像博得之门这样的游戏远程连接往往不是很稳定,我的一个好友向我推荐了N2N这个工具,但这个工具需要自建,于是我便着手开始了搭建之旅
1.基于N2N搭建
仓库地址:https://github.com/ntop/n2n,这个项目上一次更新已经是21年了,但丝毫不影响它的使用。
在官方文档中说到:
n2n 是一种轻量级的 VPN 软件,使得绕过中间防火墙创建虚拟网络变得容易。
说的这么玄乎,实际上就是把两个客户端拉到同一个局域网下。
搭建过程:
从源码编译,首先我们下载release:
sudo apt-get install autoconf make gcc -y
mkdir n2n
cd n2n
wget https://github.com/ntop/n2n/archive/refs/tags/3.0.tar.gz
tar -zxvf 3.0.tar.gz
cd n2n-3.0
开始编译:
./autogen.sh
./configure --prefix ~/n2n/ # --prefix为可选项
make && make install
随后就可以启动服务了(建议使用screen把程序挂在后台)。
sudo supernode -p 9527 -f
那么如何关闭服务端呢?
ps -ef | grep supernode
sudo kill <PID>
2.基于EasyN2N搭建
在github页面有详细readme教程https://github.com/BSSAMA/easyn2n,
在此直接贴出:
3.客户端的使用
详情可以参考https://bugxia.com/357.html(easyN2N)
4.扩展Screen命令
在Linux系统中,screen是一个非常有用的命令行工具,它允许用户开启多个终端会话,并在它们之间自由切换。这些会话在断开连接后仍然保持活跃,非常适合远程工作和长时间运行的程序。
以下是一些基本的screen命令和操作:
列出当前所有的screen会话:
screen -ls
这个命令会显示所有当前活动的screen会话。
重新连接到一个已存在的screen会话:
screen -r [会话ID或名称]
如果你有多个会话,screen -ls命令会显示它们的列表,包括会话ID和名称。使用这个命令,你可以重新连接到一个已经存在的会话。
创建一个命名的screen会话:
screen -S [会话名称]
这将创建一个带有指定名称的新会话。
在screen会话中创建一个新的窗口:
在screen会话中,你可以创建多个窗口,使用以下命令:Ctrl-A + C
这将在当前会话中创建一个新的窗口。
在窗口之间切换:
使用以下命令在不同的窗口之间切换:Ctrl-A + 数字
其中“数字”是你想要切换到的窗口编号。
分离当前的screen会话:
如果你想要暂时离开screen会话,但不想关闭它,可以使用:Ctrl-A + D
这将使你从当前会话中分离出来,但会话仍然在后台运行。
杀死一个screen会话:
如果你想要结束一个会话,可以使用:screen -X -S [会话名称或ID] quit
这将关闭指定的screen会话。
锁定screen会话:
如果你想要锁定当前的screen会话,可以使用:Ctrl-A + Z
这将暂停当前会话,你可以在之后重新连接并解锁。
比较经常使用到的就是1.3.6 也建议使用-R来创建新的screen,对于frp可以使用:
screen -R frp
./frps -c frps.toml
# ctrl+A+D退出
# 可以使用 screen -R frp 再次进入