服务端(Linux)

RPM安装

yum install epel-release.noarch -y
yum install libzstd.x86_64 -y
rpm -ivh n2n-3.1.1-1.x86_64.rpm

编译安装 (https://bugxia.com/336.html)

编译环境

#CentOS
yum install autoconf automake libtool git kernel-headers -y
#Ubuntu
apt-get install autoconf make gcc -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

启动服务器

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

#如果已经通过docker安装n2n则可以通过以下命令启动服务器,docker不使用host网络会导致超级节点无法正确获取普通节点的公网IP影响打洞
docker run -it -d --name n2n --restart=always --net=host --cap-add=NET_ADMIN --device=/dev/net/tun n2n:3.1.1 supernode -p 4567 -f
#在docker中跑普通节点
docker run -it -d --name n2n-client --restart=always --net=host --cap-add=NET_ADMIN --device=/dev/net/tun n2n:3.1.1 edge -c mynetwork -k mysecretpass -a 192.168.100.1 -f -l 127.0.0.1:4567
#--cap-add=NET_ADMIN 授予容器网络管理的权限
#--device=/dev/net/tun 将TUN设备映射到容器中

#如果docker安装时iptables防火墙出现错误,可以执行以下命令重置docker网络
sudo systemctl stop docker
sudo iptables -t nat -F
sudo ifconfig docker0 down
sudo brctl delbr docker0
sudo systemctl start docker

更多启动参数

-p 端口 | Supernode监听端口,默认 7654
-F federation名称 | supernode federation名称,默认为 *Federation
-l 主机:端口 | 和 -F 配合,已知的一台Supernode地址和端口
-M | 关闭非用户名密码认证的群组的MAC和IP地址欺骗保护功能
-V 文本 | 自定义字符串(最长19位),用于在管理输出日志中展示
-c 组名称配置文件路径 | 该配置文件中包含允许使用的组名称
-a IP段 | 用于自动分配IP,格式如 -a 192.168.0.0-192.168.255.0/24
-t 端口 | 用于管理supernode
--management_password 文本 | 管理端的密码
-v | 输出更多日志

客户端(Windows)

https://github.com/happynclient/happynwindows
EasyN2N 容易被杀毒

客户端(Android)

https://github.com/switch-iot/hin2n/tree/dev
下载

最后修改:2024 年 06 月 06 日
如果觉得我的文章对你有用,请随意赞赏