Red Hat Linux 5.4 DDNS(DHCP+DNS)详细配置过程
挂载ISO
安装DNS软件,注意此版本必须在9.0以上才可以
安装DHCP软件,注意此版本必须在3.0以上才可以
查看配置文件,提示参考文件的路径
复制参考文件
cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
过滤文件
cat /etc/dhcpd.conf | grep -v "#" | grep -v "^$" > /root/123.txt
覆盖文件
编辑配置文件
参数如下
启动服务
进入DNS配置文件目录
复制参考文件,注意加上-p选项
cp -p named.caching-nameserver.conf named.conf
过滤文件
cat named.conf | grep -v "//" | grep -v "^$" > /root/456.txt
覆盖文件
编辑配置文件
注释掉一下内容,使用“//”
添加一个主要区域benet.com
zone "benet.com" IN {
type master;
file "benet.com.zone";
};
效果如下
进入区域数据库目录
复制参考文件,注意加上-p选项
cp -p localdomain.zone benet.com.zone
编辑文件
参数如下
$TTL 86400
@ IN SOA ns1.benet.com. root.benet.com. (
42 ; serial (d. adams )
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS ns1.benet.com.
ns1 IN A 192.168.100.254
www IN A 192.168.100.254
效果如下
重新启动服务
编辑DNS指向文件
参数如下
重新启动网络服务
解析域名,解析成功
现在开始正式配置DDNS
进入目录,发现有一个文件,这个是DDNS的参考文件,里面附带一个密钥。可以直接使用这个文件。也可以自己重建。
现在自己重新生成密钥,使用命令:
dnssec-keygen -a HMAC-MD5 -b 128 -n USER ddns
-a 指定密钥的算法,指定为HMAC-MD5(哈希MD5算法)
-b 指定密钥的长度,这里指定密钥的长度为128字节
-n 指定类型,这里指定为USER,名称为ddns,注意这个不是系统用户,因此不需要创建
它在配置文件中,也就是一个密钥名字而已。
查看私钥文件
查看公钥文件,发现2个密钥一样。因为使用对称加密算法
将参考文件重定向追加到配置文件中
先复制私钥,编辑文件
效果如下
重新启动服务
编辑DHCP配置文件
参数如下
key ddns{
algorithm hmac-md5;
secret rIeXmtVRSmYJWYzN3+j8cA==;
}
zone benet.com {
primary 192.168.100.254;
key ddns;
}
效果如下
重新启动服务
更改客户端的网卡模式,和服务器一样
将客户端的网卡设置为自动获得
使用命令查看详细的IP信息
可以发现是benet.com提供的,获得的IP地址为192.168.100.200,默认会从最大的获得
进入区域数据库目录,发现没有出现.jnl的文件
返回上一级,查看目录,发现named用户组对于目录named的权限没有写入权限
但是更新时,需要写入权限,因此没有发现.jnl的文件,网上的资料的说要等15分钟,其实不需要,等一个小时都不会有的。
为用户组named添加写入权限,再次查看,发现有了写入权限。
再次进入区域数据库目录,发现还是没有.jnl文件。因为没有触发更新事件
在客户端释放IP地址
再次获得IP地址
再次查看目录,出现了传说中的.jnl文件
查看客户端的计算机名,复制计算机名
使用命令进行解析
查看主区域数据库文件,发现没有客户机的A记录
真正更新的文件是保存到.jnl文件中的,查看这个文件,发现乱码了,为了安全起见,这个文件已经做过加密了。
DDNS的实验到此结束。
DDNS是DHCP+DHS的结合,一般用在服务器和服务器之间,而不是客户端和服务器之间。
当一台服务器需要IP地址时,由DHCP服务器提供,客户端不需要提供密钥。DHCP服务器会做相应记录,记录客户端的主机名和获得IP地址,DHCP服务会从配置文件中提取私钥,并找到DNS服务器,和DNS服务器配置文件中的私钥进行匹配,如果匹配成功,则进行更新。由于DNS服务是由named这个用户执行的,因此它需要对named目录拥有写入权限。所有更新的信息保存在.jnl文件中,为了安全起见,这个文件已经做过加密了。
DDNS的作用是保证外网访问内网服务器,解析域名时,能保证解析的域名是绝对正确的,没有被篡改过。