2010-09-05 08:18:52| 分类: linux | 标签:作用域 dhcpd 客户机 选项 服务器 |字号 订阅
配置DHCP server 时很简单,可以参考
/usr/share/doc/dhcp-x.xx/dhcpd.conf.sample来做。也可以先把这个文件cp 到
/etc/dhcpd.conf,然后根据自己的需要做适当修改。下面贴出我的一个/etc/dhcpd.conf,供大家参考:
ddns-update-style interim; ignore client-updates;
key DHCP_UPDATER { algorithm HMAC-MD5;
secret qhB OR5yWo8BTXwk/m4ng; };
zone bj.pnx. { primary 127.0.0.1; key DHCP_UPDATER; }
zone 251.168.192.in-addr.arpa. { primary 127.0.0.1; key DHCP_UPDATER; }
subnet 192.168.251.0 netmask 255.255.255.0 { range 192.168.251.100 192.168.251.200; # --- default gateway
option routers 192.168.251.254; option subnet-mask 255.255.255.0;
# option nis-domain \"domain.org\"; option domain-name \"bj.pnx\";
option domain-name-servers 192.168.251.63,192.168.251.254;
# option time-offset 28800; # PRC Standard Time # option ntp-servers 192.168.251.220; # option netbios-name-servers 192.168.1.1;
# range dynamic-bootp 192.168.0.128 192.168.0.255; default-lease-time 21600; max-lease-time 43200; }
几个要注意的地方:g 1. \"ddns-update-style\"
这个就是动态DNS的更新方式,有几个选项,我用的是interim,可以用 man dhcpd.conf找到另外的几个选项。
2. \"ignore client-updates\"
这个选项是不允许客户机更新DNS记录。当然,也可能允许,但会有一点问题。
3. \"key DHCP_UPDATER\"
这个是更新DNS的KEY,是必须的。其中algorithm 后的是生成key的算法,key的生成是用\"dnssec-keygen -a HMAC-MD5 -b 128 -n USER DHCP_UPDATER\"。
4. \"zone\"
要更新的zone,如果是本机就是DNS server,primay 就写127.0.0.1,要是其它机器是DNS server, 就写那台机器的IP。
别的都是一般DNS该有的了,要注意的是一定要有 range 那一行,不然就分不了IP啦。
配好以后,可以启动一下试试, service dhcpd start,如果没问题,把dhcpd改成开机就启动,chkconfig --level 2345 dhcpd on。
二、bind(named)的配置。
关于bind(named)配置的文章有很多了。这里只把与普通配置不同的地方写出来。 下面给我的named.conf供大家参考:
// generated by named-bootconf.pl
options {
directory \"/var/named\"; /*
* If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged
* port by default. */
// forwarders { 192.168.1.254; }; // query-source address * port 53; }; //
// a caching only nameserver config //
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; }; };
key DHCP_UPDATER { algorithm HMAC-MD5;
secret qhB OR5yWo8BTXwk/m4ng; };
zone \".\" IN { type hint; file \"named.ca\"; };
zone \"localhost\" IN { type master; file \"localhost.zone\"; allow-update { none; }; };
zone \"0.0.127.in-addr.arpa\" IN { type master; file \"named.local\"; allow-update { none; }; };
zone \"1.168.192.in-addr.arpa\" IN { type master;
file \"1.168.192.zone\";
allow-update { key DHCP_UPDATER; }; };
zone \"test.com\" IN {
type master; file \"test.com\";
allow-update { key DHCP_UPDATER; }; };
include \"/etc/rndc.key\";
其中多了的是
key DHCP_UPDATER { algorithm HMAC-MD5;
secret qhB OR5yWo8BTXwk/m4ng; };
这就是更新dns要用的key,必须和dhcpd.conf里的一样。
还有就是每个 zone 都可以用 key 来update了。
这样就行了。然后启动一下试试吧。
你就可以ping 机器名来找你同事的机器了。
==========================================================
LINUX中的DHCP配置文件信息 1. DHCP服2. 务的配置 1. 安装DHCP的服2. 务软件包
# mount /dev/cdrom(插入第二张安装光盘) # cd /mnt/cdrom/RedHat/RPMS # rpm -ivh dhcp-3.0pl1-23.i386.rpm 相关文件和目录:
/var/lib/dhcp目录 //存放租约文件。
/etc/dhcpd.conf //核心配置文件, 要手工创建。 /var/lib/dhcp/dhcpd.leases //客户租约的数据库文件。 /etc/sysconfig/dhcpd //配置DHCP的启动参数。 /etc/sysconfig/dhcrelay //配置DHCP中继代理。
/etc/rc.d/init.d/dhcpd (/etc/init.d/dhcpd):DHCP服务的启动脚本 3. /etc/dhcpd.conf # vi /etc/dhcpd.conf 格式:
选项/参数(放在所有作用域之上的选项/参数,作用范围是整个DHCP服务器) 声明 { 选项/参数 }
说明: (1) 声明
subnet 网络号 netmask 子网掩码 {n ……..} 功能:定义子网 (定义作用域 )
注意:网络号必须与服务器的网络号相同,如果服务器有多块网卡时,必须为每一个网卡都建立一个相同网络号的子网,但是不用分配地址的子网可以不定义地址范围 n range 起始IP地址 终止IP地址; 功能:定义作用域范围
注意:subnet声明中至少有一个range,也可以在一个subnet中有多个range,但多个range所定义IP范围不能重复。 n {………}nhost 主机名 功能:定义保留地址
注意:通常放在subnet声明中 groupn {……..} 功能:定义组参数
注意:常用于包含host声明和subnet声明 称n shared-network 名n {………..}
功能:设置DHCP服务器多个IP子网共享同一个物理网络 注意:通常用于包含多个subnet声明 (2) 参数
n ddns-update-style (none|ad-hoc|interim) ; 功能:定义动态更新类型 注意:none 表示不支持动态更新 ad-hoc 表示特殊 更新模式 interim 表示互动更新模式
在文件中必须包含该参数,且放在第一行 n ignore client-updates; 功能:忽略客户机更新
注意:该选项只能作为服务器选项 n default-lease-time 数字 ; 功能:指定默认地址租约
注意:可以作为服务器选项和作用域选项,默认单位为秒 n max-lease-time 数字; 功能:指定最长的地址租期
注意:可以作为服务器选项和作用域选项,默认单位为秒 hardware n 硬件类型 硬件地址; 功能:指定硬件接口类型及硬件地址 注意:硬件类型可以取ethernet/token-ring 硬件地址为网卡地址的MAC地址 该选项只能用于host声明中 n fixed-address ip地址;
功能:定义DHCP客户机指定的IP地址
注意:该选项只能用于host声明中 n ;nserver-name 主机名
功能:通知DHCP客户机服务器的主机名 注意:可以作为服务器选项和作用域选项 (3) 选项
n ”;noption domain-name “域名 功能:为客户机指明DNS域名
注意:可以作为服务器选项和作用域选项
n noption domain-name-servers ip地址[, ip地址…………]; 功能:指定客户机的DNS服务器的地址 注意:可以作为服务器选项和作用域选项 n ”;noption host-name “主机名 功能:为客户机指定主机名
注意:可以作为服务器选项和作用域选项 n ip地址……….];noption routers ip地址[, 功能:为客户机指定默认网关
注意:可以作为服务器选项和作用域选项
n noption netbios-name-servers ip地址[, ip地址……..]; 功能:为客户机指定WINS服务器地址 注意:可以作为服务器选项和作用域选项 n option broadcast-address 广播地址; 功能:设置客户机的广播地址
注意:可以作为服务器选项和作用域选项 n option subnet-mask 子网掩码; 功能:设置客户机的子网掩码
注意:可以作为服务器选项和作用域选项
n noption nis-domain “名 称”;(应用于LINUX客户机) 功能:定义客户机的所属NIS域的名称
注意:可以作为服务器选项和作用域选项,且只对unix/linux客户机有效 n noption nis-servers ip地址[, ip地址……]; 功能:定义客户机的NIS域服务器的地址
注意:可以作为服务器选项和作用域选项,且只对unix/linux客户机有效 实例:设置dhcpd.conf文件,达到以下要求:
(1) 不(2) 支持dns动态更新,且忽略客户机的更新
(3) 服(4) 务器的默认地址租约时间为3600秒,(5) 最大地址租约时间为7200秒 (6) 所有作用域的客户机后缀域名(7) 为abc.com,DNS服(8) 务器地址为192.168.0.254
(9) 所有作用域的客户机默认网关地址192.168.0.1
(10) 定义作用域192.168.0.0子网,(11) 地址掩码为255.255.255.0,地址范围为192.168.0.2-----192.168.0.250 (12) 保留192.168.0.0子网中的192.168.0.8给以太网卡物理地址为00:E0:4C:70:33:65的客户机
#vi /etc/dhcpd.conf ddns-update-style none; ignore client-updates; default-lease-time 3600; max-lease-time 7200; option routers 192.168.0.1; option domain-name “abc.com”;
option domain-name-servers 192.168.0.254; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.2 192.168.0.250; host c1 {
hardware ethernet 00:E0:4C:70:33:65; fixed-address 192.168.0.8; } }
4. 设置DHCP守护进程的工作参数 #vi /etc/sysconfig/dhcpd
DHCPDARGS=eth0(设置DHCP守护进程监听网卡接口) 5. 启动DHCP服6. 务器 #service dhcpd start 3. DHCP客户端的配置 1. Linux客户端
(1) 设置网卡采用dhcp启动协议,(2) 自动获取ip地址信息 #vi /etc/sysconfig/network-scripts/ifcfg-ethX(X可以0,1,2……) 修改BOOTPROTO为: BOOTPROTO=dhcp (3) 获取IP地址
#ifdown ethX ;ifup ethX (X可以取0,1,2,……)
注意:linux系统的dhcp客户端使用dhclient脚本来获取IP地址信息 2. Windows客户端
(1) 右击网上邻居----属性------双击tcp/ip协议----选择“自动获动IP地址” (2) c:\\>ipconfig/release c:\\>ipconfig/renew
DHCP中继代理设置
实验平台:
两台LINUX服务器,一台做DHCP服务器,一台做dhcprelay中继代理服务器,三台用于测试的PC,网线若干; 实验要求:
分配三个网段: 192.168.5.0/24 192.168.6.0/24 192.168.7.0/24
其中DHCP中继代理服务器的三个网卡分别为:eth0;eth1;eth2 eth0:192.168.5.1 eth1:192.168.6.1
eth2:192.168.7.1
DHCP服务器的网卡为:eth0 eth0:192.168.5.2
要求用于测试的PC1,PC2,PC3分别挂在三个网段中,最后实验的结果为,三个PC均获得所在网段的ip地址
##############################################################################
对DHCP服务器的配置: #vi /etc/dhcpd.conf 进入文本配置界面
###############################################################################
ddns-update-style interim; ignore client-updates;
option subnet-mask 255.255.255.0; option nis-domain \"domain.org\"; option domain-name \"domain.org\";
option time-offset -18000; # Eastern Standard Time default-lease-time 259200; max-lease-time 777600;
option domain-name-servers 202.96.134.133,202.96.128.68; option broadcast-address 192.168.5.255; #DNS服务器地址 #下面配置超级作用域 shared-nework mynet{
subnet 192.168.5.0 netmask 255.255.255.0 { option routers 192.168.5.1;
range dynamic-bootp 192.168.5.1 192.168.5.254; }
subnet 192.168.6.0 netmask 255.255.255.0 {
option routers 192.168.6.1;
range dynamic-bootp 192.168.6.1 192.168.6.254; }
subnet 192.168.7.0 netmask 255.255.255.0 { option routers 192.168.7.1;
range dynamic-bootp 192.168.7.1 192.168.7.254; } }
################################################################# 下面我们将配置中继代理服务器
首先要配置文件/etc/sysconfig/dhcrealy.conf #vi /etc/sysconfig/dhcrealy.conf 在里面输入:
INTERFACES=\"eth1 eth2\" DHCPSERVERS-\"192.168.5.2\" 下面启动dhcrelay
#dhcrelay -i eth1 -i eth2 192.168.5.2 最后,我们启动DHCP服务器: #service dhcpd restart 用
因篇幅问题不能全部显示,请点此查看更多更全内容