您的位置:首页 > 运维架构 > Linux

linux DHCP服务器的配置

2010-04-23 22:36 531 查看
[align=left]什么是DHCP?从百度百科了解[/align]
[align=left]DHCP 是 Dynamic Host Configuration Protocol(动态主机分配协议)缩写,它的前身是 BOOTP。BOOTP 原本是用于无磁盘主机连接的网络上面的:网络主机使用 BOOT ROM 而不是磁盘起动并连接上网络,BOOTP 则可以自动地为那些主机设定 TCP/IP 环境。但 BOOTP 有一个缺点:您在设定前须事先获得客户端的硬件地址,而且,与 IP 的对应是静态的。换而言之,BOOTP 非常缺乏 "动态性" ,若在有限的 IP 资源环境中,BOOTP 的一对一对应会造成非常可观的浪费。 DHCP 可以说是 BOOTP 的增强版本,它分为两个部份:一个是服务器端,而另一个是客户端。所有的 IP 网络设定数据都由 DHCP 服务器集中管理,并负责处理客户端的 DHCP 要求;而客户端则会使用从服务器分配下来的IP环境数据。比较起 BOOTP ,DHCP 透过 "租约" 的概念,有效且动态的分配客户端的 TCP/IP 设定,而且,作为兼容考虑,DHCP 也完全照顾了 BOOTP Client 的需求。 DHCP 的分配形式 首先,必须至少有一台 DHCP 工作在网络上面,它会监听网络的 DHCP 请求,并与客户端磋商 TCP/IP 的设定环境。它提供三种 IP 定位方式: [/align]
[align=left]  Manual Allocation[/align]
[align=left]  网络管理员为某些少数特定的Host绑定固定IP地址,且地址不会过期[/align]
[align=left]  Automatic Allocation [/align]
[align=left]  自动分配,其情形是:一旦 DHCP 客户端第一次成功的从 DHCP 服务器端租用到 IP 地址之后,就永远使用这个地址。 [/align]
[align=left]  Dynamic Allocation [/align]
动态分配,当 DHCP 第一次从 DHCP 服务器端租用到 IP 地址之后,并非永久的使用该地址,只要租约到期,客户端就得释放(release)这个 IP 地址,以给其它工作站使用。当然,客户端可以比其它主机更优先的更新(renew)租约,或是租用其它的 IP 地址。




客户端从DHCP服务器上获得IP地址的整个过程分为以下六个步骤:
(1) 寻找DHCP服务器:将以广播方式发送DHCP discover发现信息,找DHCP服务器,当找到DHCP服务器后才有响应。
(2) 分配IP地址:DHCP服务器向DHCP客户机发送一个包含分配的IP地址和其他设置的DHCP offer提供信息。
(3) 接受IP地址:DHCP客户端接受DHCP offer提供信息之后,以第一接收提供信息,再以广播方式回应DHCP request请求信息,选定DHCP服务器请求IP地址的内容
(4) IP地址分配确认:DHCP服务器将IP地址和其他设置的DHCP ack确认信息返回给DHCP客户端,然后DHCP客户端将其TCP/IP协议与网卡绑定。
(5) 重新登录:重新登录网络,直接DHCP客户端直接发送DHCP request请求信息。要求DHCP服务端分配IP地址。然后DHCP服务器给DHCP客户端返回信息,如果DHCP ack确认信息就可以顺利获取IP,如果返回的的DHCP nack否认信息,还要从新从DHCP服务器,发送广播获取IP地址请求。
(6) 更新租约:DHCP服务器对DHCP客户端的出租有几种方式,如果有期限,期限已到DHCP服务器就会回收出租的IP地址。如果永久出租,一般都是与MAC的地址绑定,也就是网卡绑定。



DHCP网站:http://www.isc.org官方网站下载最新DHCP服务器软件


下载的Linux DHCP服务器的软件包为:dhcp-4.1.1.tar.gz



开始搭建DHCP服务器前的准备工作:
网关:172.19.22.254
子网掩码:255.255.254.0
DNS的域名为:lzzy.net
DNS服务器IP:172.19.22.1
DHCP服务器地址池的IP:172.19.22.100 ---172.19.22.200
邮件网卡绑定地址:172.19.22.2
服务器绑定地址:172.19.22.1
注意:DNS服务器的IP地址和邮件地址及网关IP不能在设置的地址池内。
DHCP软件的安装:
[root@localhost root]# rpm -qa|grep bind
//查看搭建DNS服务器的bind软件安装没有
[root@localhost root]# mv /etc/named.conf /etc/named.conf.bak
//如果想备份,以后可以还原。用cp命令也行,然后稍微修改一下named.conf文件即可
[root@localhost root]# vi /etc/named.conf
//创建一个named.conf文件









[root@localhost named]# named-checkconf /etc/named.conf
//检查主配置文件的配置
[root@localhost named]# named-checkzone lzzy.net lzzy.net.zone
//检查正解析区域配置文件配置是否正确
zone lzzy.net/IN: loaded serial 2010042100
OK
[root@localhost named]# named-checkzone lzzy.net 22.19.172.in-addr.arpa.zone
//检查反向域配置文件配置是否正确
zone lzzy.net/IN: loaded serial 2010042100
OK
[root@localhost named]# netconfig
//配置网络服务IP



[root@localhost named]# service network restart
//启动网络服务器
[root@localhost named]# ifconfig
//查看IP地址详细信息
[root@localhost named]# echo "nameserver 172.19.22.1" > /etc/resolv.conf
//将namserver 172.19.22.1写入/etc/resolv.conf文件中
[root@localhost named]# more /etc/resolv.conf
//查看DNS服务器配置文件的DNS服务器的IP地址是否被写入
[root@localhost named]# service named restart
//启动DNS服务器



[root@localhost root]# cd /mnt/hgfs/linux
//切换到共享目录
[root@localhost linux]# cp dhcp-4.1.1.tar.gz /
//拷贝文件到根目录
[root@localhost linux]# cd /
//切换到根目录
[root@localhost /]# ls
//显示当前目录的文件
[root@localhost /]# tar -zxvf dhcp-4.1.1.tar.gz
//解压dhcp软件包



[root@localhost /]# cd dhcp-4.1.1
//切换到解压目录
[root@localhost dhcp-4.1.1]# ./configure
//检查DHCP安装所需的头文件及库文件,默认安装目录



[root@localhost dhcp-4.1.1]# make
//编译dhcp软件源代码



[root@localhost dhcp-4.1.1]# make install
//安装dhcp软件



[root@localhost dhcp-4.1.1]# rpm -ql dhcp
/usr/sbin/dhcpd //超级用户root启动服务脚本
/etc/sysconfig/dhcrelay //租用文件
/usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sample //DHCP主配置文件模板文件



[root@localhost dhcp-4.1.1]# cp /usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sample /etc/dhcpd.conf
//拷贝模板文件进行修改就行了
[root@localhost dhcp-4.1.1]# vi /etc/dhcpd.conf
ddns-update-style interim;
//配置使用过渡性DHCP-DNS互动更新模式
ignore client-updates;
//忽略客户端更新

subnet 172.19.22.0 netmask 255.255.254.0 {

//设置子网声明
option routers 172.19.22.254;
//为DHCP客户端设置默认网关
option subnet-mask 255.255.254.0;
//为DHCP客户设置默认网关
option domain-name "lzzy.net";
//设置DHCP客户端DNS域
option domain-name-servers 172.19.22.1;
//为DHCP客户设置DNS服务器地址
range dynamic-bootp 172.19.22.100 172.19.22.200;
//设置地址池
default-lease-time 21600;
//为DHCP客户设置默认的地址租期6个小时,单位:秒,
max-lease-time 43200;
//为DHCP客户端设置最大地址租用期为12个小时,单位:秒
host mail {
//设置主机声明
hardware ethernet 00:0C:29:31:4D:07;
//指定DHCP客户的MAC地址
fixed-address 172.19.22.2;
//对指定的MAC地址分配固定的IP地址172.19.22.2
}
host dns {
//设置主机声明
hardware ethernet 00:0C:29:31:4D:07;
//指定DHCP客户的MAC地址
fixed-address 172.19.22.1;
//对指定的MAC地址分配固定的IP地址172.19.22.1
}
}



[root@localhost dhcp-4.1.1]# netconfig
//可以用netconfig配置网络IP地址



Use dynamic IP configuration (BOOTP/DHCP)选中按空格键选上



[root@localhost dhcp-4.1.1]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
//打开编辑ifcfg-eth0文件
DEVICE=eth0 //网卡别名为eth0
ONBOOT=yes //重启系统时启动该服务
BOOTPROTO=dhcp //获取IP类型为动态获取
[root@localhost dhcp-4.1.1]# service network restart
//重新启动网络服务



[root@localhost dhcp-4.1.1]#ifconfig
//查看IP地址的详细配置
[root@localhost dhcp-4.1.1]# /usr/sbin/dhcpd
//启动DHCP服务



[root@localhost dhcp-4.1.1]# touch /var/db/dhcpd.leases
//创建一个dhcpd.leases文件,这个文件装DHCP服务器的分配IP时的信息进行记录



[root@localhost dhcp-4.1.1]# touch /var/db/dhcpd.leases
//创建一个dhcpd.leases文件,这个文件装DHCP服务器的分配IP时的信息进行记录
[root@localhost dhcp-4.1.1]#/usr/sbin/dhcpd
//启动DHCP服务启动成功



自动获取IP地址,自动获取DNS服务器



C:\Documents and Settings\Administrator>ipconfig /renew



终于写完了。。感谢你们的阅读,有什么好得建议多给我提提。。呵呵。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息