如何配置动态DNS(Fedora Core 4设置)
作者:Sohail Riaz <sohail AT fastadmins DOT com>
<sohaileo AT gmail DOT com>
在此我们将学习如何构建动态DNS服务器。 通常当我们配置DNS时,我们使用静态条目来解析任何FQDN。 如果我们在我们的网络中使用DHCP,为每个打开或请求的计算机提供动态IP,则无法静态配置DNS。 为此,我们应该使用DHCP配置我们的DNS,只要计算机获得新的IP,其FQDN将自动使用DNS中的新IP进行更新。
1安装软件包
Fedora Core 4在其CD中包含DNS(绑定)和DHCP(dhcp)包。 您可以从Fedora Core 4 CD安装它,或者使用以下命令从Internet下载。
yum –y install bind bind-chroot bind-utils bind-libs caching-nameserver dhcp
哪里
绑定
----- DNS服务器包
bind-chroot
----- DNS在chroot(jail)环境中运行。
bind-libs
-----使用bind,bind-utils所需的库
bind-utils
-----包含nslookup,host,dig等实用程序
缓存Nameservers
-----提供缓存功能,以便在高速缓存中存储记录。
dhcp
-----动态主机配置协议包。
2配置BIND(DNS)
您需要告诉BIND,允许其他应用程序更新它是可以的。 我将以下内容添加到我的BIND配置中,其他所有内容都作为库存Fedora Core 4。这是我的本地区域详细信息,适当修改。 在这里我让BIND知道哪些域可以更新; 在我的情况下,我只有一个域来处理。 我在这个阶段也加载了共享密钥。 我的DHCP服务器和DNS服务器在同一个框上,所以在这里我只允许localhost执行更新。 文件rndckey
是一个包含共享密钥的文件,所以BIND知道它是一个批准的应用程序发送指令。
vi /etc/named.conf
controls { inet 127.0.0.1 allow {localhost; } keys { "rndckey"; }; }; // Add local zone definitions here. zone "example.com" { type master; file "example.com.zone"; allow-update { key "rndckey"; }; notify yes; }; zone "0.168.192.in-addr.arpa" { type master; file "0.168.192.in-addr.arpa.zone"; allow-update { key "rndckey"; }; notify yes; };
include "/etc/bind/rndc.key";
秘密密钥是在安装时创建的。 没有必要在这里做任何事情,但...
注意:如果您的DHCP和DNS服务器位于不同的机器上,则需要在它们之间复制文件。 两台机器都应该使用与/etc/rndc.key
相同的文件。
2.1区域文件
正常设置区域数据库。 你不需要做任何事情。 因为我们的DHCP服务器将更新区域文件作为分配给我们工作站的新IP地址。
vi /var/named/chroot/var/named/example.com.zone
$TTL 86400 @ IN SOA @ root ( 50 ; serial 28800 ; refresh (8 hours) 7200 ; retry (2 hours) 604800 ; retire (1 week) 86400 ; ttl (1 day) ) IN NS server server IN A 192.168.0.1
vi /var/named/chroot/var/named/0.168.192.in-addr.arpa.zone
$TTL 86400 @ IN SOA @ root ( 50 ; serial 28800 ; refresh (8 hours) 7200 ; retry (2 hours) 604800 ; retire (1 week) 86400 ; ttl (1 day) ) IN NS server 1 IN PTR server.example.com.
现在,使用相同的名称在/ var / named
目录中创建这些文件的快捷方式。
cd /var/named
ln –s /var/named/chroot/var/named/example.com.zone example.com.zone
ln –s /var/named/chroot/var/named/0.168.192.in-addr.arpa.zone 0.168.192.in-addr.arpa.zone
3配置DHCP服务器
默认情况下,Fedora Core 4中提供的DHCP服务器不会进行动态DNS更新。 你只需要启用它。 以下是我为我的系统选择的选项。 我的dhcp配置如下:
vi /etc/dhcpd.conf
authoritative; include "/etc/rndc.key"; # Server configuration:
server-identifier server; ddns-domainname "example.com."; ddns-rev-domainname "in-addr.arpa."; ddns-update-style interim; ddns-updates on; ignore client-updates;
# This is the communication zone
zone example.com. { primary 127.0.0.1; key rndckey; }
default-lease-time 21600; # 6 hours max-lease-time 43200; # 12 hours
# Client configuration:
option domain-name "example.com."; option ip-forwarding off;
subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.200; option routers 192.168.0.1; # default gateway option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option domain-name-servers 192.168.0.1;
zone 0.168.192.in-addr.arpa. { primary 192.168.0.2; key rndckey; }
zone localdomain. { primary 192.168.0.2; key rndckey; }
}
现在执行以下更改权限命令,以便每当需要更新IP名称时,都可以使命名用户写入区域文件。
chmod 770 /var/named/chroot/var/named
chmod 770 /var/named
现在使用以下命令启动dns和dhcp的服务:
service named start
service dhcp start
转到您的客户端计算机,并使其从DHCP服务器获取IP。 使用以下命令检查您的客户端计算机名称是否在DNS中更新。 它将用新分配的IP解析您的名字。
nslookup yourcomputername.example.com
您最近创建的动态DNS服务器好运。