红联Linux门户
Linux帮助

DHCP服务认识与学习

发布时间:2009-10-19 21:14:22来源:红联作者:john1988
[i=s] 本帖最后由 john1988 于 2009-10-19 21:17 编辑 [/i]

DHCP服务
一. DHCP基础知识
1. 什么是DHCP
DHCP(动态主机配置协议)是TCP/IP应用层的一种子协议,用于提供自动分配IP配置信息服务
2. DHCP体系结构
(1) DHCP服务器:运行DHCP协议及服务器软件的设备
(2) DHCP客户机:运行DHCP协议且采用自动获取IP地址
3. DHCP的工作原理
(1) 生成租约的过程
....
(2) 更新租约的过程
-自动更新
a. 租约50%
b. 租约87.5%
-手动更新
a. windows客户机 c:\>ipconfig /renew
b. Linux客户机: #dhclient
4. 布署DHCP服务器
(1) 非路由式网络
(2) 路由式网络
-采用DHCP中继代理
-采用支持DHCP广播的路由器
-每个广播域布署一台DHCP服务器
二. 安装和配置DHCP服务器
1. 配置DHCP服务器的IP地址
#netconfig -d eth0
2. 安装DHCP服务器软件包
(1) RPM安装方式
#rpm -ivh dhcp-3.0pl1.i386.rpm
(2) 编译安装方式
#tar -xzvf dhcp-3.0.3.tar.gz
#cd dhcp-3.0.3
#./configure
#make
#make install
3. 修改/etc/dhcpd.conf文件
#vi /etc/dhcpd.conf
(1) 配置DHCP动态更新
-ddns-update-style none/interim; //指定动态更新的类型
-key "名称" { //定义密钥
algorithm hmac-md5; //指定加密算法
secret "..密文.."; //指定密钥
};
-zone 区域名 { //定义动态更新的区域名
primary ip地址; //指定DNS服务器地址
key "密钥名称"; //指定动态更新密钥
}
(2) 配置DHCP所分配的配置选项
-option routers ip地址[,...];
定义网关地址
-option domain-name-servers ip地址[,...];
定义DNS服务器地址
-option domain-name "区域名";
定义后缀域名
(3) 配置DHCP作用域
-subnet 网络号 netmask 掩码 {
.........
} //定义作用域
-range 起始IP 结束IP;
定义分配的地址范围,必须放在subnet声明中
-shared-network 名称 {
.....
subnet ...{
....
}
subnet ...{
...
}
.......
}
定义超级作用域,用于分配多个网段的IP地址
(4) 配置租期
-default-lease-time 数字;
定义默认租期
-max-lease-time 数字;
定义最大租期
(5) 配置保留主机
-host 主机名 {
hardware ethernet mac地址; //指定保留主机的mac地址
fixed-address ip地址; //指定保留给主机的IP地址
}
文件实例:
ddns-update-style none;
default-lease-time 3600;
max-lease-time 7200;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.254;
option routers 192.168.1.1;
option domain-name-servers 202.102.192.68;
}
4. 创建租约数据库
(1) rpm安装的dhcp服务器软件会自动在/var/lib/dhcp下创建 dhcpd.leases
(2) 采用编译方式安装的dhcp服务器,需要手工在/var/state/dhcp下创建dhcpd.leases
5. 启动DHCP服务
(1) rpm方式安装的DHCP服务器
#ntsysv --level 345 //设置自动启动
#service dhcpd start //手工启动
(2) 编译方式安装的DHCP服务器
#vi /etc/rc.d/rc.local //设置自动启动
......
dhcpd
#dhcpd //手工启动
注:dhcp服务器的守护进程名为dhcpd,工作端口为udp/67
三. 配置DHCP客户机
1. Windows客户机
...
2. Linux客户机
#netconfig -d ethX
注:-linux客户机是使用dhclient脚本来请求dhcp服务器进行更新
-linux客户机可用dhclient -r命令来释放租约
-修改/etc/sysconfig/dhcpd文件中的DHCPDARGS选项来指定DHCP服务器所绑定接口名
-Linux可以成为dhcp中继代理,具体配置方法如下
a. 配置静态IP地址
b. 安装dhcp软件
c. 配置中继服务
#vi /etc/sysconfig/dhcrelay
INTERFACES="接口名"
DHCPSERVERS="IP地址"
d. 启动中继代理服务
#service dhcrelay start
文章评论

共有 17 条评论

  1. cnpliu 于 2011-07-19 20:57:39发表:

    自动分配 IP信息,怎么这么多静态的设置啊

  2. taffy5366 于 2011-07-19 16:26:41发表:

    学习了

  3. fire312923253 于 2011-07-12 13:20:39发表:

    谢了

  4. 397778823 于 2011-07-01 20:48:22发表:

    :0)1

  5. hpy1165331898 于 2011-07-01 19:40:03发表:

    :0)1

  6. coyaya 于 2011-07-01 11:22:35发表:

    xiexie

  7. jhasheng 于 2011-06-30 21:10:38发表:

    Thanks for your share!

  8. jhasheng 于 2011-06-30 20:58:06发表:

    努力回帖挣金币

  9. 日韩宫禁一 于 2011-04-05 20:14:16发表:

    版主辛苦了

  10. zing840828 于 2011-01-01 04:46:34发表:

    感谢楼主的分享!

  11. lymjjm 于 2010-12-12 00:32:18发表:

    asp.net linux技术心得交流群 82026839 欢迎大家加入!!!

  12. fanpei 于 2010-11-16 16:13:38发表:

    这个帖子比较有技术含量

  13. paladin0 于 2009-11-23 17:16:12发表:

    补上生成租约的过程

    (1)IP租约发现。一台没有IP地 址的计算机登录时会自动寻找服务器,由于没有IP地址,所以该计算机只能在网络中发布广播,广播中附带着本机MAC地址等信息。

    (2) IP租约提供。如果网络中存在DHCP服务器,那么服务器在接收到客户机的广播后,会从可提供的IP地址范围中选择最靠前的一个,然后按照MAC地址发回客户机。

    (3) IP租约请求。客户机接收到服务器返回的信息后,会查询网络中是否已经存在同样的IP地址,若已经存在则拒绝接受,若不存在则会请求租借此IP地址。如果网络中有多台服务器都可以提供IP地址,客户机会选择最先返回消息的服务器,并通知其他服务器不再需要IP地址。

    (4) IP租约确认。服务器会对客户机的请求返回一条确认消息,这样,客户机就得到了有效的IP地址。

  14. 冬虫草 于 2009-11-23 16:32:34发表:

    谢了

  15. mstl 于 2009-10-20 00:01:42发表:

    学习下

  16. liu351128 于 2009-10-19 22:49:17发表:

    学习一下

  17. yiyepianzhou 于 2009-10-19 22:15:53发表:

    支持LZ