Asuswrt merlin的固件有个自定义DDNS, 通过这个设置可以让路由器支持更多的动态域名服务商. 下面简单记录一下设置方法. 1, 先编辑DDNS更新脚本 先SSH登录路由器, 再编辑脚本. vi /jffs/scripts/ddns-start 若梅林固件后台有自定义脚本, 那么选择DDNS, 选择服务商对应的代码. 公云 pubyun.com (3322.org) #!/bin/sh wget -q -O - 'http://DDNS用户名DNS密码@members.3322.org/dyndns/update?hostname=你的ddns域名' if [ $? -eq 0 ]; then /sbin/ddns_custom_updated 1 else /sbin/ddns_custom_updated 0 fi Oray 花生壳 #!/bin/sh wget -q -O - 'http://DDNS用户名DNS密码@ddns.oray.com:80/ph/update?hostname=你的ddns域名' if [ $? -eq 0 ]; then /sbin/ddns_custom_updated 1 else /sbin/ddns_custom_updated 0 fi FreeDNS (afraid.org) #!/bin/sh wget -q -O - 'http://freedns.afraid.org/dynamic/update.php?你的API' if [ $? -eq 0 ]; then /sbin/ddns_custom_updated 1 else /sbin/ddns_custom_updated 0 fi HE.NET #!/bin/sh wget -q -O- 'http://[域名]:[DDNS key]@dyn.dns.he.net/nic/update?hostname=[域名]' if [ $? -eq 0 ]; then /sbin/ddns_custom_updated 1 else /sbin/ddns_custom_updated 0 fi ChangeIP #!/bin/sh wget -q -O- 'http://nic.ChangeIP.com/nic/update?u=用户名&p=密码&hostname=域名' if [ $? -eq 0 ]; then /sbin/ddns_custom_updated 1 else /sbin/ddns_custom_updated 0 fi 2, 然后再修改文件权限, (通过后台自定义脚本修改的文件不用再登录ssh修改权限了) chmod 755 /jffs/scripts/ddns-start 3, 再后台外部网络--DDNS里面选择Custom (自定义). 备注: 脚本同时支持多家服务商, 截图上添加了afraid freedns和3322 参考 https://github.com/RMerl/asuswrt-merlin/wiki/DDNS-Sample-Scripts