认识
利用 DNS 可以将域名解析为 IP 地址,从而实现使用域名来访问网络中的节点;
但是,DNS 仅提供了域名和 IP 地址之间的静态对应关系,当节点的 IP 地址发生变化时,DNS Server 无法动态地更新域名和 IP 地址的映射关系。此时,如果仍然使用域名访问该节点,通过域名解析得到的 IP 地址是错误的,从而导致访问失败;
动态域名系统 DDNS(Dynamic Domain Name System,DDNS) 提供解决方案,它可以自动更新用户每次变化的浮动 IP,然后将其与域名相对应,这样其他上网用户就可以通过域名来通信;
组成
DDNS Client
DDNS 客户端:IP 地址变化时,需要在 DNS 服务器上动态更新其域名和 IP 地址映射关系的设备。Internet 用户通常通过域名访问提供应用层服务的服务器,如 HTTP、FTP 服务器。为保证提供应用层服务的服务器 IP 地址变化时,其他用户仍然可以通过域名访问这些服务器,服务器将作为 DDNS 客户端,向 DDNS 服务器发送更新域名和 IP 地址映射关系的 DDNS 更新请求;
DDNS Server
DDNS 服务器:负责通知 DNS 服务器动态更新域名和 IP 地址之间的映射关系。接收到 DDNS 客户端的更新请求后,DDNS 服务器通知 DNS 服务器重新建立 DDNS 客户端的域名和 IP 地址之间的映射关系,从而保证即使 DDNS 客户端的 IP 地址改变,Internet 用户仍然可以通过同样的域名访问 DDNS 客户端;
原理
当 IP Address 发生变化时,通过调用 API 接口来动态更新 DNS Server 上 Domain Name 和 IP Address 之间的映射关系,保证通过 Domain Name 解析到正确的 IP Address;
构建
DDNS 服务提供商有:
应用
目前,ISP 大多提供动态 IP(例如 PPPoE 拨号上网),我们若想在网际网络上以自己的网域公布,则可以适用 DDNS 技术;
参考
DDNS 是什么?DDNS 的工作原理是怎样的? – SegmentFault 思否