自己搭建ddns服务器需要条件,域名服务(DDNS)原理及Server架设

传统的域名服务是通过将域名与IP进行静态绑定,在用户发起DNS请求时,将对应的IP地址(反向查询时为域名记录)回应给用户来实现域名解析服务的。在这种应用场景下,需要用户有固定IP地址(专线), 但实际上企业专线一天可能仅有1/3的时间(上班时间)会有流量产生,其余时间流量基本为零,造成很大的网络资源浪费。

如果企业通过拨号方式接入网络,或动态接入Internet, 那么费用会大大降低,但对应的问题是,这种动态接入的IP地址往往是随机分配的(在不断变化)。如果企业有一个固定域名并在企业接入Internet的WAN口IP发生变化时自动更新,那么问题就能解决,这就是DDNS的由来。

如下图所示:我们在Internet上有一个提供动态域名解析的服务器,企业注册了两个固定的域名,北京分部(bj.branch.com)和成都分部(cd..branch.com)。当成都分部的SD-WAN网关上线时,从ISP处获得一个临时的公网IP地址,它通过nsupdate将该临时地址更新到动态域名解析服务器,这样动态域名服务器就有了该分部的完整DNS记录。

北京分部的SD-WAN想要与成都分部建立VPN连接时,先向动态域名服务器询问cd.branch.com的IP地址是多少,然后再用获取的IP地址,就能与成都分部建立VPN连接。

在整个过程中,我们的DDNS Server与各个分部的SD-WAN网关都做了修改(能在地址发生变化时,向支持DNS记录动态更新的DDNS Server发起记录更新请求)。

在这个情况下,成都和北京分部都不需要申请专线(获得固定IP地址),使用拨号接入或公众网络即可实现相互通讯或向外提供服务(如WWW, Mail, FTP等),极大节约了企业的网络费用。

 

动态域名服务(DDNS)原理及Server架设

 

Linux Server主机10.10.11.250上搭建DDNS Server

1. 安装DNS Server

2. 为DDNS创建密钥,并得到DDNS的密钥字符串

Domain Name System Security Extensions (DNSSEC)DNS安全扩展,是由IETF提供的一系列DNS安全认证的机制(可参考RFC2535)。DNSSEC是为解决DNS欺骗和缓存污染而设计的一种安全机制。DNSSEC通过在DNS消息中的数据添加数字签名信息,客户端在得到应答消息后,检查签名信息来判定应答数据的权威性和真实性,数据的来源的可靠性和完整性,从而防止针对DNS的相关攻击。

在liunx下通过如下命令生成两个秘钥(公钥和私钥)

其中HMAC-MD5是加密算法,128是秘钥的位数(与选择的加密算法相关,HMAC-MD5为1-512位), USER为秘钥所有者的类型(HOST为主机相关的密钥 , USER为与用户相关的密钥 ,ZONE区域相关的秘钥)

命令执行时,会打印Ktestmesg.+157+46499,其中157是算法ID, 46499是key-id

执行时会持续一段时间,执行完成后,会在目录下生成两个文件(私钥和公钥)

 

 

3. 配置DNS Server允许更新记录

将生成的公钥里面的key放到named.conf文件中

 

在需要更新记录的区域中配置加密字符串

zone “test.com” IN {

allow-update {

key testmesg;

};

完成后,重启域名服务

4. 在需要动态更新主机IP的客户端,或者在DHCP Server分配地址时,更新主机IP

完成后重启dhcp服务

本文来自作者:展风,不代表小新网立场!

转载请注明:https://www.xiaoxinys.cn/105883.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。