分享
 
 
 

动态主机配置协议(DHCP)

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

动态主机配置协议(DHCP)是用来自动给客户机器分配 TCP/IP 信息的网络协议。每个 DHCP 客户都连接到中央位置的 DHCP 服务器,该服务器会返回包括 IP 地址、网关和 DNS 服务器信息的客户网络配置。

18.1. 为什么使用 DHCP DHCP 在快速发送客户网络配置方面很有用场。当配置客户系统时,管理员可以选择 DHCP,并不必输入 IP 地址、子网掩码、网关、或 DNS 服务器。客户从 DHCP 服务器中检索这些信息。DHCP 在管理员想改变大量系统的 IP 地址时也大有用途。与其重新配置所有系统,管理员只需编辑服务器上的一个 DHCP 配置文件即可获得新 IP 地址集合。如果某机构的 DNS 服务器改变了,这种改变只需在 DHCP 服务器上而不必在 DHCP 客户上进行。一旦客户的网络被重新启动(或客户重新引导系统),改变就会生效。

除此之外,如果便携电脑或任何类型的可移计算机被配置使用 DHCP,只要每个办公室都有一个允许它联网的 DHCP 服务器,它就可以不必重新配置而在办公室间自由移动。

18.2. 配置 DHCP 服务器 你可以使用配置文件 /etc/dhcpd.conf 来配置 DHCP 服务器。

DHCP 还使用 /var/lib/dhcp/dhcpd.leases 文件来贮存客户租期数据库。详情请参阅第 18.2.2 节。

18.2.1. 配置文件 配置 DHCP 服务器的第一步是创建贮存客户网络信息的配置文件。全局选项可以为所有客户声明,可选选项可以为每个客户系统声明。

该配置文件可以使用任何附加的制表符或空行来进行简单格式化。关键字是区分大小写的,起首为井号(#)的行是注释。

目前实现了两种 DNS 更新方案 — 特殊 DNS 更新模式和过渡性 DHCP-DNS 互动草图更新模式。如果这两种模式被接受为 IETF 标准进程的一部分,就会出现第三个模式 — 标准 DNS 更新方法。DHCP 服务器必须配置使用这两种当前方案中的一种。版本 3.0b2pl11 以及更早的版本使用特殊模式;不过,这种模式已经过时。如果你想保留相同的行为方式,在配置文件的开头添加以下一行:

ddns-update-style ad-hoc; 要使用推荐的模式,在配置文件的开头添加以下一行:

ddns-update-style interim; 请阅读 dhcpd.conf 的说明书(man)页来获得有关不同模式的细节。

配置文件中有两类陈述:

参数 — 表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户。

声明 — 描述网络的布局;描述客户;提供客户的地址;或把一组参数应用到一组声明中。

某些参数必须以 option 关键字开头,它们也被称为选项。选项配置 DHCP 的可选选项;而参数配置的是必选的或控制 DHCP 服务器行为的值。

在使用大括号({ })的部分之前声明的参数(包括选项)通常被当做全局参数。全局参数应用位于其下的所有部分。

重要:如果你改变了配置文件,这些改变在你使用 service dhcpd restart 命令来重新启动 DHCP 守护进程之后才会生效。

在例 18-1中, routers 、 subnet-mask 、 domain-name 、 domain-name-servers 和 time-offset 选项被用于所有在它们下面声明的 host 声明中。

如例 18-1所示,你可以声明 subnet 。你必须为你的网络中的每一个子网包括一个 subnet 声明,否则, DHCP 服务器可能无法启动。

在这个例子中,子网中的每个 DHCP 客户都带有全局选项,并且声明了 range 。客户被分配给 range 之内的 IP 地址。

subnet 192.168.1.0 netmask 255.255.255.0 {

option routers 192.168.1.254;

option subnet-mask 255.255.255.0; option domain-name "example.com";

option domain-name-servers 192.168.1.1;

option time-offset -18000; # Eastern Standard Time

range 192.168.1.10 192.168.1.100;

}

例 18-1. 子网声明

所有共享同一物理网络的子网应该在 shared-network 声明之内声明,如例 18-2所示。在 shared-network 之内,但在被包围起来的 subnet 声明之外的参数被当做全局参数。 shared-network 的名称应该是对网络有描述性的标题,例如,使用 test-lab 来描述所有处于实验室(test lab)环境中的子网。

shared-network name {

option domain-name "test.redhat.com";

option domain-name-servers ns1.redhat.com, ns2.redhat.com;

option routers 192.168.1.254;

more parameters for EXAMPLE shared-network

subnet 192.168.1.0 netmask 255.255.255.0 {

parameters for subnet

range 192.168.1.1 192.168.1.31;

}

subnet 192.168.1.32 netmask 255.255.255.0 {

parameters for subnet

range 192.168.1.33 192.168.1.63;

}

} 例 18-2. 共享网络声明

如例 18-3 中所演示, group 声明可以用来把全局参数应用到一组声明中。你可以组合共享的网络、子网、主机或其它组群。

group {

option routers 192.168.1.254;

option subnet-mask 255.255.255.0; option domain-name "example.com";

option domain-name-servers 192.168.1.1;

option time-offset -18000; # Eastern Standard Time

host apex {

option host-name "apex.example.com";

hardware ethernet 00:A0:78:8E:9E:AA;

fixed-address 192.168.1.4;

}

host raleigh {

option host-name "raleigh.example.com";

hardware ethernet 00:A1:DD:74:C3:F2;

fixed-address 192.168.1.6;

}

}

例 18-3. 组群声明

要配置将动态 IP 地址租给子网内系统的 DHCP 服务器,用你的数值来修改例 18-4。它为客户声明一个默认租期、最长租期、以及网络配置值。范例中把 range 192.168.1.10 和 192.168.1.100 之间的 IP 地址分配给客户。

default-lease-time 600;

max-lease-time 7200;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.254;

option domain-name-servers 192.168.1.1, 192.168.1.2;

option domain-name "example.com"; subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.100;

}

例 18-4. 范围参数

要根据网卡的 MAC 地址给客户分配 IP 地址,使用 host 声明内的 hardware ethernet 参数。 如例 18-5 中所演示, host apex 声明表明:网卡的 MAC 地址为 00:A0:78:8E:9E:AA 的系统所分配的 IP 地址将一直是 192.168.1.4。

注意,你还可以使用可选的参数 host-name 来为客户分配主机名。

host apex {

option host-name "apex.example.com";

hardware ethernet 00:A0:78:8E:9E:AA;

fixed-address 192.168.1.4;

} 例 18-5. 使用 DHCP 的静态 IP 地址

窍门:你可以使用 Red Hat Linux 9 的配置文件范例作为样板,然后在其上添加你自己定制的配置选项。使用下面的命令把它复制到正确的位置里: cp /usr/share/doc/dhcp- <version-number> /dhcpd.conf.sample /etc/dhcpd.conf (这里的 <version-number> 是你使用的 DHCP 版本)。

要获取选项陈述及其作用的完整列表,请参阅 dhcp-options 的说明书(man)页。

18.2.2. 租期数据库 在 DHCP 服务器上, /var/lib/dhcp/dhcpd.leases 文件中存放着 DHCP 的客户租期数据库。该文件不应该被手工修改。每个新近分配的 IP 地址的 DHCP 租期信息都会自动储存在租期数据库中。该信息 包括租期的长度;IP 地址被分配的对象;租期的开始和终止日期; 以及用来检索租期的网卡的 MAC 地址。

租期数据库中所用的时间是格林威治标准时间(GMT),不是本地时间。

租期数据库不时被重建,因此它不算太大。首先,所有已知的租期会被储存到一个临时的租期数据库中, dhcpd.leases 文件被重命名为 dhcpd.leases~ ,然后,临时租期数据库被写入 dhcpd.leases 文件。

在租期数据库被重命名为备份文件,新文件被写入之前,DHCP 守护进程有可能被杀死,系统也有可能会崩溃。如果发生了这种情况,启动服务所需的 dhcpd.leases 文件就不会存在。这时,请不要创建新租期文件。因为这样做会丢失所有原有的旧租期文件,从而导致更多问题。正确的办法是把 dhcpd.leases~ 备份文件重命名为 dhcpd.leases ,然后再启动守护进程。

18.2.3. 启动和停止服务器 重要:在你首次启动 DHCP 服务器之时,除非系统上存在 dhcpd.leases 文件,服务器将无法被启动。 如果这个文件不存在的话,使用 touch /var/lib/dhcp/dhcpd.leases 命令来创建一个。

要启动 DHCP 服务,使用 /sbin/service dhcpd start 命令。要停止 DHCP 服务器,使用 /sbin/service dhcpd stop 命令。如果你想让守护进程在引导时自动启动,请参阅第14章中关于如何管理服务的信息。

如果你的系统连接了不止一个网络界面,但是你只想让 DHCP 服务器启动其中之一,你可以配置 DHCP 服务器只在那个设备上启动。在 /etc/sysconfig/dhcpd 中,把界面的名称添加到 DHCPDARGS 的列表中:

# Command line options here DHCPDARGS=eth0 如果你有一个带有两个网卡的防火墙机器,这种方法就会大派用场。一个网卡可以被配置成 DHCP 客户来从互联网上检索 IP 地址;另一个网卡可以被用作防火墙之后的内部网络的 DHCP 服务器。仅指定连接到内部网络的网卡使系统更加安全,因为用户无法通过互联网来连接它的守护进程。

其它可在 /etc/sysconfig/dhcpd 中指定的命令行选项包括:

-p <portnum> — 指定 dhcpd 应该监听的 udp 端口号码。默认值 为 67。DHCP 服务器在比指定的 udp 端口大一位的端口号码上把回应传输给 DHCP 客户。譬如,如果你接受了默认的端

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有