linux下创建DDNS服务器
DDNS(dynaic domain name server ,动态域名服务)是客户端动态IP
地址映射到一个固定的DNS服务上,客户端每次连接网络的时候会通
过信息传递把该FQDN于IP地址对应关系传送给DNS服务器,DDNS需要
DNS和DHCP结合起来,DHCP为客户端分配IP地址时候,可以代表DHCP
客户端
注册和更新该客户端在DNS上的A记录和PTR记录。
这样就解决了客户端IP地址不固定(使用DHCP获取IP地址)或客户端
数量巨大,无法准确的添加A记录或PTR记录的问题。
1、先创建一个用户luowei
#useradd luowei
2、生成密码
#dnssec-keygen -a HMAC-MD5 -b 128 -n USER luowei
在当前目录下生成了两个文件:
Kluowei.+157+59363.key
Kluowei.+157+59363.private
其实这两个文件中的密码是一样的
3、配置DNS
#vi /etc/named.conf
添加以下内容:
key luowei {
algorithm HMAC-MD5;
secret xEGzMJVu7aT81lC5QRzIg==;
};
zone "luowei.com" IN {
type master;
file "luowei.com.zone";
allow-update { key luowei; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.zone";
allow-update { key luowei; };
};
其中secrect后的内容是用vi打开Kmyddns.+157+59363.private后,拷贝里面的密码
文件得来的!
4、配置DHCP
#vi /etc/dhcpd.conf
先将第二行前面的“#”去掉,再在subnet 上面添加下面一行内容:
ddns-updates on;
在option domain-name 后,改成DNS的域名,例如“luowei.com”
在option domain-name-servers 后,填写好DNS服务器的IP地址,例如:
192.168.1.254
然后在里面添加下面几行内容:
key luowei {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret xEGzMJVu7aT81lC5QRzIg==;
}
zone luowei.com. {
primary 192.168.1.254;
key luowei;
}
zone 1.168.192.in-addr.arpa. {
primary 192.168.1.254;
key luowei;
}
保存退出!
5、开启DNS和DHCP服务器
#service named start
#service dhcpd start
6、通过下面的命令排错
#tail -n 20 /var/log/messages | grep named (指定显示靠后的20行内容)
#tail /var/log/messages | grep dhcpd (全部显示所有内容)
7、linux客户端通过dhclient命令动态获取到IP,这时在DNS服务器
的/var/named/chroot/var/named/下会生成两个扩展名是.jnl的文件。
还有一点要注意,linux客户端还必须执行下面的工作
#cp /usr/share/doc/dhclient-3.0.5/dhclient.conf.sample /etc/dhclient.conf
生成一个dhclient.conf配置文件
#vi /etc/dhclient.conf
修改第一行内容,将双引号里的内容删掉,添加上自己的主机名mail.luowei.com。
最后再执行dhclient命令来获取IP。
接下来展示自己的两个主配置文件
# vim /etc/named.conf文件内容:
options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};
key luowei {
algorithm HMAC-MD5;
secret xEGzMJVu7aT81lC5QRzIg==;
};
zone "luowei.com" IN {
type master;
file "luowei.com.zone";
allow-update { key luowei; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "luowei.com.arpa";
allow-update { key luowei; };
};
key "rndc-key" {
algorithm HMAC-MD5;
secret "pq18UO7rODLStf5XVdg17Q==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
# vim /etc/dhcpd.conf配置文件内容:
ddns-update-style
interim;
#ignore client-updates;
ddns-updates on;
subnet 192.168.1.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "luowei.com";
option domain-name-servers 192.168.1.254;
option time-offset -18000;
# Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netb
ios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this
unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range 192.168.1.128 192.168.1.253;
default-lease-time 21600;
max-lease-time 43200;
# we want the nameserver to appear at a fixed address
host ns {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
}
}
key luowei {
algorithm HMAC-MD5;
secret xEGzMJVu7aT81lC5QRzIg==;
}
zone luowei.com. {
primary 192.168.1.2;
key luowei;
}
zone 1.168.192.in-addr.arpa. {
primary 192.168.1.2;
key luowei;
}
验证:
可以在DNS服务器上解析出mail.luowei.com,在DNS的数据配置文件中的
luowei.com.zone中有:
mail.luowei.com. IN A 192.168.1.X的记录,这个是客户端通过
dhcp获取的动态ip地址;同时在/var/named/chroot/var/named下有两个以.jnl的文