由于godaddy不给穷人用api的原因,普通用户无法使用godaddy的api给家里的服务器做ddns了。
这么久过去了我一直都不知道,因为我平时不用godaddy的api;
之前我是用腾讯云的api+godaddy域名配置cname这样子来曲线救国。
但是这样子需要额外付出一个域名的价钱,现在本着降本增效的心态,准备不用腾讯云的域名了,一年省下几十块。
网上搜了下,namesilo适合我这种穷逼,于是开干!
迁移域名
1.打开狗爹后台 https://dcc.godaddy.com/control/transfers 上去之前选你的域名进行迁移,确认迁移后你的邮箱会收到一封邮件,大概长这样。
这意味着你可以去namesilo后台配置接收域名了。
2.进入namesilo后台(没账号的先注册),https://www.namesilo.com/domain/transfer-domains ,输入你要转移过来的域名,然后输入你的授权码,对,上面邮件里面的授权码。
3.交钱,交迁移费,扫支付宝就行。
4.一会你的邮箱会收到namesilo的邮件,邮件会告诉你已经开始我们正在申请转移域名,大概需要5-6天巴拉巴拉,邮件不用回。
5.过一两天之后进去狗爹后台,在迁移那里,找到你要迁移的域名,点进去点一下”核准迁移“字样。完成这一步你就可以删除狗爹的书签和账号记录了。
6.(可选项) 理论来说你可以等一两小时,等迁移完成就行。但是,这样迁移后你的域名后,你的域名解析记录是会归零,所以强烈建议,你在这里去namesilo的后台把域名解析提前加上去,这样等你域名迁移过来后就不会网站无法访问。当然还有一种方法是提前做nameserver迁移,此处不讨论。
在namesilo后台的”Transfer Manager“那里,"configure"下方会有一个齿轮,点进去配置你当前的域名解析。
最后等邮箱通知,收到如下这样的邮件的时候,意味着你的域名已经迁移完成。
配置DDNS
配置前必须提前说一个很坑爹的事,namesilo的ttl最快为3600,意味着你的域名解析更改生效会很慢,一般为1-2小时,不再是腾讯云、cf之流的几分钟生效!!!好在运营商的光猫重新注册、ip更换基本都是在凌晨两三点,对我没什么影响。
我的ddns搭在像香港的服务器上,为什么不在家里的电脑运行呢,很简单,因为怕域名服务器的api地址被墙,我又不想在家里的nas折腾翻墙。所以干脆用香港的服务器做家里的ddns。
我用的网络穿透方案是nps/npc,hk服务器运行nps,家里的群晖运行npc,nps/npc的配置此处不讲。
将npc与nps连接上后,在nps后台客户看到npc客户端在线信息,
在ddnsgo后台配置好namesilo的api,千万注意生成key的时候要把这个勾去掉,因为这个勾打上说明这个key的权限是只读,你的ddnsgo是没有权限更改解析的。
关于如何在hk服务器获取家里电脑的公网ip,我的思路是这样的,客户端与服务器进行的网络连接,在terminal中把这个客户端ip筛选出来,
我的ddnsgo是docker模式运行,需要把docker的文件夹与物理机的文件夹进行映射(一般已有),然后把这个客户端ip写进映射的文件夹的文件里面(/www/dk_project/dk_app/ddns_go/ddns_go_w3jw/data/ip
),ddnsgo里面对应的文件则是/root/ip
,这样ddnsgo里面配置获取ip的命令则是
cat /root/ip
hk服务器上则是运行定时任务,执行脚本(隐去的是服务端ip和nps服务的端口) netstat -anlp | grep 15x.x.x.56:xxxx | awk '{print $5}' | cut -d: -f1 | head -n 1 > /www/dk_project/dk_app/ddns_go/ddns_go_w3jw/data/ip
保存,然后ddnsgo就可以利用namesilo的api更新你的域名解析了。