硬件:BPI-M1forum
软件:Ubuntu14.04下载地址
其他:动态公网IP,端口转发

一、转入域名管理

首先,需要先去HE DNS上面去注册个账户,这个服务商提供免费好用的DDNS服务,当然把域名日常管理都转到这里,也是OK的,除了首页及其简陋以外,还是非常好用的。

然后添加你购买的域名(add a new domain)到 he.net 里面。再然后,到你的域名供应商(我的是 name.com)处,把你的域名的 name severs(NS 或者叫域名服务器)全部修改成 he的域名服务器。(第二次进去就找不到了,不想吐槽he的官网了)

ns1.he.net
ns2.he.net
ns3.he.net
ns4.he.net
ns5.he.net

这样你的域名就能被 he 的 dns 解析了。

做完以上步骤,就可以开始 DDNS 的设置。接下来坑不少,多亏了二叔科技群里的大佬们热心地手把手教我才能完成。

这里也提供一下官方给的介绍页面,https://dns.he.net/docs.html,也是简陋风。

二、DDNS介绍与首次配置

  • 开始之前先说说 HE DNS 的动态更新地址的流程:
    第一次,需要先登录 HE DNS 的网站,生成或者设置一个密匙。然后就可以使用 HE DNS 提供的 API 使用你喜欢的方式之一(直接访问,post,get都可以,请参照上面的文档)上传或者让他自动识别你的ip即可。然后把这个 API 放入树莓派的定时任务,crontab 里面,让它每隔5分钟,调用一次 API 即可实现 DDNS。再简单点说,API 就是个 url, 相当于让树莓派每隔5分钟访问一次这个地址,服务器便会自动记录下你的新IP。

登录之后,找到NEW A点击它,

  • NAME栏填入要解析的域名,可以是顶级域名,也可是子域名,例如我的home.yelvlab.cn,填入即可。
  • IPv4 Address栏,如果使用DDNS那么,这里随便填,等一会是要自动更新的,如果你有固定IP的服务器,那么直接填入IP地址即可,
  • TTL栏,一般选五分钟,因为后面我们同步IP的时间间隔也是五分钟,这样能尽可能确保因为IP是动态的而没有即使更新记录造成的访问问题。
  • Eanble entry dynamic dns表示允许动态DNS,是所有的关键,必须勾选。

然后sumbit就可以了。

在刚才添加的那条A记录的后面有一个循环的小标志,如果没有,就是你上面没有勾选启动动态DNS,回去勾选,有的话点它,接下来就是生成我们身份认证的KEY了。

  • generate a key点击它生成一个KEY,然后把它复制出来,千万要复制对,不要错,不然还要回来重复这里的。
  • sumbit只有提交了,才有用,不然你去调用API也没用的。API文档

然后,就是去你局域网下面的BPI-Board(推荐) or Linux PC 去执行下面的一条指令,当然,执行之前,你需要进行一定的更改,来表明你的身份

curl -4 http://home.yelvlab.cn:[KEY]@dyn.dns.he.net/nic/update?hostname=home.yelvlab.cn
  • 首先,你需要把所有的home.yelvlab.cn换成你自己的域名,然后把你刚才复制下来的KEY提管到[KEY]位置,然后再去执行。

结果:

  • 提示没有curl,安装一下就好sudo apt-get install curl.
  • 提示badauth,一定是你的API指令有问题,请仔细检查,或者你的KEY没有提交,一般可以回去再获取一个然后重试。
  • 返回修改成功,或者没有更改,并且还有你的IP,那么恭喜,修改成功了。

上面就是整个自动同步IP的过程了,如果一直需要手动操作,那么简直zz一样,下面我们让他定时自动执行。

三、自动化执行

crontab -e

这就是我们需要用到的东西,第一次打开,会让你选择使用什么文本编辑器,我是炒鸡linux新手只会 nano。打开后,按照格式把你的 API 填进去

#for he dns to update ip
*/5 * * * * curl -4 http://home.yelvlab.cn:[KEY]@dyn.dns.he.net/nic/update?hostname=home.yelvlab.cn

/5 代表每五分钟更新一次,详细的设置,请自行百度 crontab 的用法。保存退出后,这个服务就自动运行了。

不出意外的话,你的 DDNS 设置完成了!

你可以这么测试,回到 dns.he.net, 手动设置一下 A 的IP到一个不知名的地方,坐等五分钟,看看是否能变回来。。。。

References:

阿嘉博客:在Raspberry PI 3 使用 HE DNS 的免费动态域名服务

最后修改:2019 年 03 月 26 日
如果觉得我的文章对你有用,请随意赞赏