200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 用自己的域名配置动态域名解析(DDNS)

用自己的域名配置动态域名解析(DDNS)

时间:2019-05-31 09:48:44

相关推荐

用自己的域名配置动态域名解析(DDNS)

现今的很多家用“路由器”都带有DDNS功能,这个功能可以让你在家用拨号上网(别反驳我说是什么光纤到户,你打开你的路由器进设置里面看是不是pppoe)这种没有固定ip地址的环境中提供一个对指定域名的解析方式,但是,但是,它们往往提供的都是 花生壳、科迈、3322这种的二级域名,并不能充分利用自己已有的域名,而且这些二级域名的解析效率和限制也有很多问题,导致我们的服务不是很稳定。于是我就想着是不是可以写一个小程序来完成这项工作呢?

我的想法是这样的,我现在手头有一个域名,所有的解析权限我都有,我的目标是可以利用它来访问我家里的网络,结合linux强大的灵活性,于是我决定用最简单的shell脚本来完成它。

要实现DDNS的功能首先需要的一个参数就是我们当前的公网ip地址。有很多ISP分配给大家的并不是公网ip地址,这点我们需要验证一下。进到我们的路由器里查看一下现在的连接状态里的ip地址是什么,我们记住这个地址,再用浏览器打开 看一下与刚才咱们记住的ip地址是否能匹配,如果能对应的话,那么恭喜你,ISP分配给你的ip地址是一个公网ip地址,我们可以继续往下走了。但如果并不一致的话,说明ISP分配给你的并不是公网ip地址,这样就需要与ISP协商让他重新给你分配一个公网ip地址。

现在我们得想办法让 shell 获得这个公网ip地址,但是如果我们想从路由器里拿到这个地址显然是不实现的。好在现在公网上有一些只会返回ip地址,而不会掺杂乱七八糟信息的网站,我们只需要把它们的返回结果赋值给一个变量就行了。internet_ip=$(wget -qO - ifconfig.co)

接下来,我们要将域名解析指向这个ip地址。那么首先就是查清楚现在域名的解析情况。这可以通过各个域名解析服务提供商的接口来搞定,我用过 亚马逊 和 阿里云 的解析服务,都有相应的接口可以完成这个任务。

例如我们打算要将 www 这个二级域名指向我们的家里的ip地址,这时就需要查询 www 的解析记录,在亚马逊是无法重复指定相同的二级域名的,但是阿里云却是可以的,这就造成了A记录的冲突,然而A记录在DNS系统里并没有权重,这与MX记录是不同的。因此我们如果用阿里云的话就需要查出所有 www 的记录,并只保留一个将其余的全部删除(我也试过只是将其禁用,但是如果主机记录与记录值都相同时,阿里云的接口会报错),然后再修改我们保留的那条记录,把它的记录值修改为我们的公网ip地址。

大体上的想法就是这样了,下面我也动手去写shell脚本了,如果你有需要的话,就请关注我接下来的更新吧。

后续 :用自己的域名配置动态域名解析(DDNS) (二)_connect_的专栏-CSDN博客

写在我自己网站上的副本: 用自己的域名配置动态域名解析(DDNS)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。