Note
N2N组网
利用n2n组网,在Linux系统设置主机,Windows利用小黄鸭作为客机连接
发布于 更新于
linux
❗下列以Ubuntu的命令为例
配置N2N需要的依赖和内核头文件
RHEL系linux( CentOS 7/8、Rocky Linux、AlmaLinux 等)
yum install autoconf automake libtool git kernel-headers -y
Debian/Ubuntu系linux
sudo apt install autoconf automake libtool git linux-headers-$(uname -r) -y
获取N2N
-
进入opt目录
这一步的目的是把n2n文件下载到opt目录下
-
获取n2n
wget https://github.com/ntop/n2n/archive/refs/tags/3.0.tar.gz -
解压获取的n2n并进入其根目录
# 解压
tar xzvf 3.0.tar.gz
# 进入源码目录
cd n2n-3.0
- 手动编译
./autogen.sh
./configure
make -j4
make install
- 验证是否安装成功
# 成功会显示版本
edge -v
# 目前遇到的情况是什么都不显示,但是确实是安装成功了
supernode -v
启动超级节点(主机)
启动
# -p 节点端口,自定义,服务器要开放该端口
# -c 社区名称,自定义
# -k 社区秘钥,自定义
# -a 虚拟网段,192.168.100.0/24,代表允许边缘节点(客机)使用 192.168.100.1~254 整个网段的 IP
# & 运行在后台,关掉 SSH 也不停止。不加&就只会运行在前台,Ctrl+C可停止在前台的运行
nohup supernode -p 9527 -c NBG_NET -k NBG_PASSWD -a 192.168.100.0/24 &
# 验证是否启动成功
# 1.检查端口监听。成功会显示0.0.0.0:9527的tcp/udp 协议
netstat -tulpn | grep 9527
# 2.检查进程。成功可以看到supernode进程,会显示你刚执行的带参数的命令
ps aux | grep supernode
# 注意:由于supernode版本问题,可能不支持-c -k -a这些,这种情况可以不配置
nohup supernode -p 9527 &
# 可以直接配置supernode文件
边缘节点接入(客机连接)
连接主机
# 客机也需要安装n2n。Windows可以安装小黄鸭(带图形界面的Windows版n2n),直接在小黄鸭里连接就行了
# 通过小黄鸭连接(3.12版本)
# 在"服务器"里输入"主机的公网ip:9527","小组名称"自定义,需要组网的客机之间的小组名称相同就可以匹配上
# 连接成功"服务器"旁边会有绿点
# 通过命令行连接
# 每台客机的虚拟网段必须不一样且必须在主机的网段里,所以客机的网段只能在192.168.100.2 ~ 192.168.100.254选择
edge -c NBG_NET -k NBG_PASSWD -a 192.168.100.2 -l 服务器公网ip:9527
# 连接成功会有提示信息
检查客机之间是否匹配(通ping)
# 小黄鸭验证
# 点击小组名称旁的图标可以查看该小组下连接的客机
# 命令行验证
# 如果得到回复,表示两客机通过n2n组网成功,可以互相访问
ping 其他客机连接主机时的虚拟ip
# 示例
# 客机A连接主机输入
edge -c NBG_NET -k NBG_PASSWD -a 192.168.100.2 -l 服务器公网ip:9527
# 客机B连接主机输入
edge -c NBG_NET -k NBG_PASSWD -a 192.168.100.3 -l 服务器公网ip:9527
# 客机A输入客机B的虚拟ip
ping 192.168.100.3 # 得到回复说明成功