若是DNS服务器要记录多台主机的IP,且这些主机的IP都是经过DHCPD服务自动获取的,那么将会形成很大的困难,由于在DNS设置时没法得知主机具体的IP。若是DHCPD服务能够在配置主机IP后将信息传递给DNS服务,再由DNS服务来记录这些数据,将会变得容易许多。这种DHCPD服务更新DNS服务数据就是DDNS。linux
配置DDNS时,须要在一台主机上分别配置DNS服务和DHCPD服务。vim
DNS服务的配置以下:安全
a、"dnssec-keygen -a HMAC-MD5 -b 128 -n HOST keydns"。这是生成一个密钥,为了安全考虑。"keydns"为密钥名称,可自行设置。"cat Kwestos.+157+18569.key",查看生成的密钥并复制。服务器
b、"cp /etc/rndc.key /etc/keydns.key -p"。生成DNS的加密文件。网络
c、"vim /etc/keydns.key"。以下图所示,第1行改成"keydns",第3行""中改成a中复制的密钥。post
d、"vim /etc/named.conf"。以下图所示,在第47行"logging {"以前编辑"include "/etc/keydns.key";",这是指定dns服务读取的key文件。测试
e、"vim /etc/named.rfc1913.zones"。以下图所示,将第28行改成"allow-update { key keydns; };",这是指定we域可以被keydns更新。加密
DHCPD的配置以下:spa
a、"head -n 36 /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example > /etc/dhcp/dhcpd.conf"。将"dhcpd.conf.example"的前36行复制为"dhcpd.conf"文件。.net
b、"vim /etc/dhcp/dhcpd.conf"。将第7行和第8行改成下图所示内容。"we.com"为域名,"172.25.254.102"为DNS的IP。去掉第14行的注释。注释掉第27和28行。将第32至第35行改成以下图所示配置。
c、"vim /etc/dhcp/dhcpd.conf"。在第36行后输入下图所示内容。
key keydns {
algorithm hmac-md5;
secret Z8aPp2bzIT9gmvyZS28ijA==;
};
zone we.com. {
primary 127.0.0.1;
key keydns;
}
完成后重启DNS和DHCPD服务,至此,服务器的DDNS配置已经完成。
测试时,将一台主机的主机名设置成为"xxx.we.com",例如"123.we.com"。设置网络为DHCP自动获取IP,以下图所示,自动得到的IP为"172.25.254.65"。
在有DDNS的主机上输入"dig 123.we.com",以下图所示,则能够看到测试的主机IP和主机名。这样就完成了DHCPD服务对DNS服务的数据同步。