ER系列路由器配置uPnP提高迅雷和NAS的效率

很多童鞋在坛子里和群里多次提及迅雷下载速度低、NAS里Transmission显示PT不可连接或LowID.

这里我总结了一下以往童鞋们踩过的坑:

  1. 使用uPnP1协议,很多设备并不支持或支持得不咋样,比如迅雷、渣渣晖,所以必须要开uPnP2协议;
  2. 前期用了uPnP1后发现不咋地,又去开了uPnP2,但是未关闭uPnP1,造成冲突;
  3. uPnP是有严格端口配置的,需要配置到正确的端口上才会起作用;

那么上述问题都有了,解决之道也就出来了:

configure
delete service upnp
set service upnp2 listen-on switch0
set service upnp2 wan eth0
set service upnp2 nat-pmp enable
set service upnp2 secure-mode enable
commit;save;exit

上述的命令行集再敷述一下缘由:

  • configure :进入配置模式「很多小朋友搬抄配置的时候漏了这个,导致没在配置模式下输入命令当然得到的都是些无此命令……」

  • delete service upnp :关闭uPnP1协议,因为uPnP1和uPnP2同时开启是有冲突的,因此需要关闭uPnP1;

  • set service upnp2 listen-on switch0:在switch0端口上侦听uPnP2的请求,如果是ER3L需要调整到对应的LAN端口上「类似eth1或eht2」;

  • set service upnp2 wan eth0 :指定uPnP2的出口路由在eth0上,如果童鞋们是PPPoE拨号的,那么请把最后的eht0换成你配置里拨号的那个端口,一般是pppoe0或pppoe1;

  • set service upnp2 nat-pmp enable :开启NAT-PMP协议功能;

  • set service upnp2 secure-mode enable :开启安全模式;「好像听说内网多人玩星际战甲会有提示端口被占用的问题,家里没这个问题吧 :stuck_out_tongue:

  • commit;save;exit :这个还要解释嚒?不过还是有很多童鞋设置完成后抱怨说重启就要重新配置啥的,所以“提交、保存、退出”这素质三连还是必要的 :bangbang:

2赞

这个教程USG可用吗?

要做脚本……看你动手能力了……
编辑config.gateway.json文件:

{
	"service": {
		"upnp2": {
			"listen-on": [
				"eth1"
			],
			"nat-pmp": "enable",
			"secure-mode": "enable",
			"wan": "eth0"
		}

	}
}

这样就算是成功开启了吗? json文件放到UCK里面

在确认uPnP1关闭的情况下,可以用命令行show upnp2 rules 查询当前uPnP2注册的条目状态
*此命令并不适用于UPnP
ECHO eg.

Firewall pin holes
pkts bytes target     prot opt in     out     source               destination    
0     0    ACCEPT     udp  --  *      *       0.0.0.0/0            192.168.1.X          udp dpt:xxxxx
NAT port forwards 
pkts bytes target     prot opt in     out     source               destination    
0     0    DNAT       udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:xxxxx to:192.168.1.X:xxxxx 
pkts bytes target     prot opt in     out     source               destination

如果觉得不对需要刷新,可以用clear connection-tracking来清空当前有效条目,以期后端设备再注册出新条目;

注: uPnP的条目不会自动更新「协议规定使然」,因此你的后端设备和前端公网IP的更替都会影响条目的实际有效性,也不允许抢占已有的条目。「eg.Transmission终端换了一个LAN段的IP上线,仍旧申请原来的端口号,此时因Transmission终端用前次的IP申请的条目还存在,因此新申请被拒绝

用脚本开启跟在控制器开启有什么区别?控制器里的uPnP是1还是2?

暂时在AC的UI界面上并没有明确uPnP1和uPnP2的差异,因此应该配置出来的是uPnP1……

具体没有测试和验证过,无法给你明确化的答案,也希望你测试后给大家一个参考 :grinning:

必须支持下,近期准备入放弱电箱,主要是玩PS4关心NAT能力吧,转发这东西太重要了