搜集整理N2N使用中的一些经验(会不断更新)

10、我想进一步提升 N2N 的速度,我该怎么办?
看看 这篇文章,因为一些参数的调整,速度可以提升 22 倍,可见正确的设置,也很重要。

提升速度的主要方法,(A)尽量创造直连;(B)用 V2、v3 加上 -A4/A5 参数;(C)提升两端设备的 CPU 计算能力(看两端的 CPU 有没有100%);(D)针对 v2、v3 和 v2s,你还可以取消 -k 参数(就是不加密传输),有人说这样修改以后的速度是原来的 2.5 倍,你不妨试试。

不要密码(-k)操作的安全性:针对 N2N 直连,与你使用域名与远程电脑建立的通讯是一样的;如果 N2N 是转发,并且你用坏人的中心节点,那么你的数据有被窃听的可能。所以,自己看着办吧(一般照片、小姐姐,不是敏感的东西,我觉得无所谓;很重要的东西,可以运行第二个 edge,可以走另外一根线,并加上密码运行)。

11、怎么设置 supernode 为我所独用?
假设自己使用的 n2n 是这样运行的(以 n2nabc 账号)

edge -d edge0 -c n2nabc -k pwd -a 10.10.10.1 -l ip:10086

那么在 supernode v2 服务器上增加一条防火墙,监视 10086 端口通过的字符串,只准账号中含有 n2nabc 字符的通过即可。v3 有专门的参数控制,见帮助信息。

iptables -I INPUT 1 -p udp --dport 10086 -m string ! --string "n2nabc" --algo bm -j DROP

12、N2N的网卡是 10M 的吗?会受限于这个 10M 的带宽限制吗?
本人做过这样的测试,edge A 端(在网吧),windows7X64,安装的是那个100M的驱动;edge B端,搬瓦工,Ubuntu 16.04 x86_64,10M驱动(用 ethtool XX 查看),通过n2n隧道,实现了A、B两端的直连,FTP的最大速度已经达到了3MB/s,相当于是24M带宽。
第二天,A端windows的网卡装成10M,测试的结果一样,上传速度最大达到了3.XMB/s。记得有人说过,n2n的那个虚拟网卡虽然是10M的,但是实际上是随硬件网卡而变化的,可能是10M,也可能是100M、1000M。windows、linux都是这样的。当然,有最新的,你完全可以试试,windows的驱动现在已经支持 1G 了。
另外一个测试,我将刷过 padavan 的路由器(路由宝)作为一个edge端(利用上面的TF卡),通过 FTP 传输文件(本地edge是windows下的10M网卡),速度可以达到 15Mb/s (通过路由器上的流量图来看到的)。

13、域名型中心节点,你真的会用吗?
使用 n2n.lucktu.com:10086 这样的域名型节点时,必须使用"-b"参数,否则域名所对应的 IP 发现改变时,你的 edge 还连向的是旧的 IP,因此你的 edge 也就失联了(最新的 v2,以及 v3,已经不需要这个参数了,它会自动处理了)。正常的使用方法如下:

edge -d f1 -a 172.0.1.100 -c n2n -k test1 -l n2n.lucktu.com:10086 -b &

14、ping 值很小很流畅,访问却很慢,这是为什么?(mtu 值有什么用,windows下该怎么用?)
我在windows(win7X32)下,运行一个 n2n_v1,与远端的设备(路由器,使用的是padavan固件)组成一个n2n局域网,然后输入远端的 n2n ip,登录管理页面,发现很慢很慢,几分钟,半个小时都出不来页面。而此时 ping 远端的 n2n ip,ping 值才50ms,很顺畅。我本地的网络是移动宽带,大家都说很垃圾,远程的是电信宽带(本条经验针对直连,如果是转发,还需选一个上传带宽大的中心节点)。

为什么访问一个管理页面就这么慢呢,慢得可以说不能用。后来受群友的影响,注意到了mtu,是不是它的问题呢?

搜索网页,看到 这一篇教程,我按照上面的方法,首先看看当前的 mtu 是多少:

netsh interface ipv4 show subinterfaces

结果在dos下看到的所有网卡的 mtu 都是1500,而我在n2n设置界面里设置的mtu值无效,看来得用另外的方法修改。

先看看怎么得到合适的mtu吧(假设远程的 n2n IP 是 172.0.0.100)

ping -f 172.0.0.100 -l 1472

根据提示修改,数字太大会显示“需要拆分数据包但是设置DF。”,逐渐改小,直到得到能这样 ping 通的最大值为止,我最后得到的最大值是1328我ping baidu.com 最后得到的却是1412,不管它我这个网卡不是为了分百度的,而是为了访问 172.0.0.100 用的,所以不关百度什么事,加上28,就是1356。使用下面的命令修改 n2n 网卡的 mtu 值:

netsh interface ipv4 set subinterface "N2N连接" mtu=1356 store=persistent

修改过后,再用下面的语句查看时,

netsh interface ipv4 show subinterfaces

得到新的 mtu 值是这样的:

MTU   MediaSenseState    传入字节     传出字节    接口
---   ---------------    --------    --------   ----------
1500         1           24776337    3937550    无线网络连接
1500         5           0           0          本地连接
1356         1           5391552     883502     N2N连接

此时,再次访问远程的路由器管理页面,就顺畅了,没有先前的半天出不来的情况。由此可见,windows下的 MTU 设置参数无效(我测试的是win7X32),需要这样手工判断和设置。

linux类系统下的测试方法就比较简单,使用下面的语句即可求得(已经加28;有时也不灵):

ping -c 4 -s 1472 -M do n2n.lucktu.com

15、直连成功率与中心节点有关吗?经过实践验证,确实是有关的。
我使用 n2n_v2s,移动(在光猫wifi下的电脑)连接电信(直接 PPPoE 拨号的路由器,有外网 IP),使用这个中心节点(167.88.162.244:10088,也就是我目前共享的中心节点 n2n.lucktu.com:10088,ping 值 200~250,美国的 vps),基本上每次都是直连。而使用某国内的VPS(223.87.179.191:10088,ping 值 35 左右)时,基本上就没有直连过,同样的线路,同时测试。难道是因为国内的比较近,转发也不错,国外的太远,只能谋求直连?这就是编程者的逻辑?后来中心节点换成国内的腾讯云(ping 值 40 左右),也是不能直连的,即使长 ping,也不改变。

16、padavan 固件下开放 n2n 访问 samb(by 逆风飞翔)。
将下面的信息加入路由器启动后执行

#监视端口
sed -i '/interfaces = br0/s/interfaces/#interfaces#/g' /etc/smb.conf
#杀了进程重启
killall -9 nmbd
killall -9 smbd
/sbin/smbd -D -s /etc/smb.conf
/sbin/nmbd -D -s /etc/smb.conf

再将下面的信息加入防火墙里

#放行SAMBA端口
logger -t "【SAMBA服务器】" "允许SAMBA访问"
iptables -I INPUT 1 -p udp -m multiport --dport 137,138 -j ACCEPT
iptables -I INPUT 1 -p tcp -m state --state NEW -m multiport --dport 139,445 -j ACCEPT

17、N2N 的监控端口怎么用?(by 如风)
首先你要保证你的系统中有 NC 命令,没有你就装吧。或者安装一个全功能的 busybox(windows 不行啊)也行,可以从 这里 去下载,把它放入到 /bin/ 目录,然后执行 busybox --install -s 进行安装,安装好以后就可以使用下面的命令来查看监控端口了。输入下面的命令以后,不停的回车,就不停的显示新的状态。 suoernode 的监控端口是固定的 5645,edge 的监控端口可以用 -t XXX 来自定义,默认是 5644。

nc -u 127.0.0.1 5645 # 监控 supernode,有时前面需加 busynox
nc -u 127.0.0.1 5644 # 监控 edge,有时前面需加 busynox

另外一个命令就是 netcat,安装比较简单,(在padavan上)可以只安装这一个文件
,使用方法与上面的完全一样,用netcat代替nc即可。我觉得n2n这个没有什么好看的,对于supernode,只能看到多少个edge与之连接,其他信息就是一些流量什么的,真的没啥价值。

有新的了再加,。。。


85.48%(53)

14.52%(9)
上一页 1 2

发表评论

*