
客户机会发送广播到网络中的机器 请求ip地址 这个广播包在同一网络环境下的机器都会收到 但是只有dhcp服务器会响应这个广播!
2服务器响应请求
服务器收到dhcp请求后 会查找dhcp地址池内是否有合法的ip地址分配给客户机 如果有 就会以广播的形式发送给客户机
3客户机选择ip
当客户机收到服务器发来的ip信息后 会发送广播到网络 告知dhcp服务器 已经选中ip
4服务器确认ip
当服务器收到客户机发来的广播后 就会把客户机选中的ip保留 不会再分配给其他的机器 防止ip冲突 然后建立租约信息
当dhcp服务器分配给客户机一个ip 这个ip的使用时间是有限的 当租约到期后 这个ip地址就会失效 所以ip租约快到期时客户机会继续找dhcp服务器续约
第一次续约 是在租用期的50% 第二次是在85% 当两次续约都没反应时间 客户机就会从新重复第一次 *** 作
查看地址:ipconfig/all 释放地址:ipconfig /release 获取地址: :ipconfig /renew
dhcp分配地址信息包括 ip地址 子网掩码 网关 dhcp服务器地址 dns地址DHCP服务在linux下算是最简单的服务了。
DHCP服务的配置。
DHCP简介:
DHCP动态主机配置协议,在一个小型局域网里可以通过手工指定ip地址的方式,但如有大量的主机,如果还是手工指定,那是一个很大的工作量,而且也容易出错,这时,就可以通过配置一台DHCP服务器来解决,为每台主机分配一个ip地址。DHCP作用域是指DHCP服务器可分配给DHCP客户端的IP地址范围,一个DHCP服务器至少要一个作用域,如有多个作用域,作用域之间的IP地址不能重叠。
DHCP的工作原理:
DHCP工作过程分为四个步骤:
第一步(DHCPDISCOVER):客户端发送广播查找可以给自己提供IP地址的DHCP服务器,
第二步(DHCPOFFER):DHCP服务器发送广播提供一个可用的IP地址,并在地址池中将该地址打上标记,以防再次分配。
第三步(DHCPREQUEST):客户端收到广播后再次发送一个广播请求该地址,如果有多台DHCP响应,则第一个收到的优先。
第四步(DHCPACK):DHCP服务器收到广播后再发送一个广播,确认该地址分配给这台主机使用,并在地址池中将该地址打上标记,以防再次分配。
DHCP的基本配置:
第一步:安装软件:
[root@localhost ~]# rpm -ivh /misc/cd/Server/dhcp-305-18el5i386rpm
第二步:编辑配置文件:
[root@localhost ~]# vi /etc/dhcpdconf
# see /usr/share/doc/dhcp/dhcpdconfsample
当进入到配置文件里面时,这里是空的,有如上一行的提示,说可以参考这个文件来编写配置文件,那就复制一份再编辑。
[root@localhost ~]# cp -rvf /usr/share/doc/dhcp-305/dhcpdconfsample /etc/dhcpdconf
[root@localhost ~]# vi /etc/dhcpdconf
ddns-update-style interim; //配置DHCP和DNS为互动更新模式,
ignore client-updates; //忽略客户端的更新。
subnet 1921681000 netmask 2552552550 { //定义作用域
option routers 1921681001; //默认路由
option subnet-mask 2552552550; //子网掩码
option nis-domain "rhelcom"; //NIS域名
option domain-name "rhelcom"; //DNS域名
option domain-name-servers 19216810010; //DNS服务器地址
option time-offset -18000; # Eastern Standard Time //为客户端设置与格林威治的时间偏移
option ntp-servers 19216811; //网络时间服务器地址
option netbios-name-servers 19216811; //指定WINS服务器地址
range dynamic-bootp 192168100128 192168100254; //动态分配的地址范围
default-lease-time 21600; //默认租约时间
max-lease-time 43200; //最大租约时间
host abc { //指定特定主机
hardware ethernet 00:0C:29:FD:44:C8; //硬件地址
fixed-address 19216810030; //IP地址
}
}
如有多个要绑定的主机时可以把所有主机信息用group{ }包括起来,这样更方便管理。格式如下 :
group {
……这里不可以添加一些佤全局选项,这样就不用在每个里面写了。
host abc {
……
……
}
host xyz {
……
……
}
}
[root@localhost ~]# service dhcpd restart
测试:
在linux下:
首先让地址从DHCP获取:
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
[root@localhost ~]# service network restart //重启一下网络服务,这里不能使用ifdown和ifup,因为要配置路由信息。
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:FD:44:C8
inet addr:19216810030 Bcast:192168100255 Mask:2552552550
这就是绑定的IP地址。
[root@localhost ~]# cat /etc/resolvconf
; generated by /sbin/dhclient-script
search rhelcom
nameserver 19216810010
这里的DNS服务器地址也获取到了。
[root@localhost ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
1921681000 0000 2552552550 U 0 0 0 eth0
16925400 0000 25525500 U 0 0 0 eth0
0000 1921681001 0000 UG 0 0 0 eth0
默认路由也获取到了。查看一下端口:
[root@localhost ~]# netstat -tlunp | grep 68
udp 0 0 0000:68 0000 16150/dhclient
查看客户端的租约文件:
lease {
interface "eth0";
fixed-address 19216810030; //固定地址
option subnet-mask 2552552550; //子网掩码
option time-offset -18000; //时间偏移
option routers 1921681001; //默认路由
option dhcp-lease-time 21600; //租约时间
option dhcp-message-type 5;
option domain-name-servers 19216810010;
option dhcp-server-identifier 19216810020;
option nis-domain "rhelcom";
option domain-name "rhelcom";
renew 5 2010/4/9 09:01:40;
rebind 5 2010/4/9 11:34:53;
expire 5 2010/4/9 12:19:53;
}
windows下:
把IP地址设成自动获取。
C:\Documents and Settings\Administrator>ipconfig /all
Connection-specific DNS Suffix : rhelcom
Physical Address : 00-0C-29-D3-C6-B3
Dhcp Enabled : Yes
Autoconfiguration Enabled : Yes
IP Address : 192168100253
Subnet Mask : 2552552550
Default Gateway : 1921681001
DHCP Server : 19216810020
DNS Servers : 19216810010
Lease Obtained : 2010年4月9日 14:44:12
Lease Expires : 2010年4月9日 20:44:12
基本配置完成。在一个使用TCP/IP协议的网络中,每一台计算机都必须至少有一个IP地址,才能与其他计算机连接通信。为了便于统一规划和管理网络中的IP地址,DHCP(Dynamic Host Configure Protocol,动态主机配置协议)应运而生了。这种网络服务有利于对校园网络中的客户机IP地址进行有效管理,而不需要一个一个手动指定IP地址。
DHCP服务的安装
DHCP指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。首先,DHCP服务器必须是一台安装有Windows 2000 Server/Advanced Server系统的计算机;其次,担任DHCP服务器的计算机需要安装TCP/IP协议,并为其设置静态IP地址、子网掩码、默认网关等内容。默认情况下,DHCP作为Windows 2000 Server的一个服务组件不会被系统自动安装,必须把它添加进来:
1 依次点击“开始→设置→控制面板→添加/删除程序→添加/删除Windows组件”,打开相应的对话框。
2 用鼠标左键点击选中对话框的“组件”列表框中的“网络服务”一项,单击[详细信息]按钮,出现带有具体内容的对话框。
3 在对话框“网络服务的子组件”列表框中勾选“动态主机配置协议(DHCP)”,单击[确定]按钮,根据屏幕提示放入Windows 2000安装光盘,复制所需要的程序。
4 重新启动计算机后,在“开始→程序→管理工具”下就会出现“DHCP”一项,说明DHCP服务安装成功。
DHCP服务器的授权
出于对网络安全管理的考虑,并不是在Windows 2000 Server中安装了DHCP功能后就能直接使用,还必须进行授权 *** 作,未经授权 *** 作的服务器无法提供DHCP服务。对DHCP服务器授权 *** 作的过程如下:
1 依次点击“开始→程序→管理工具→DHCP”,打开DHCP控制台窗口。
2 在控制台窗口中,用鼠标左键点击选中服务器名,然后单击右键,在快捷菜单中选中“授权”,此时需要几分钟的等待时间。注意:如果系统长时间没有反应,可以按F5键或选择菜单工具中的“ *** 作”下的“刷新”进行屏幕刷新,或先关闭DHCP控制台,在服务器名上用鼠标右键点击。如果快捷菜单中的“授权”已经变为“撤消授权”,则表示对DHCP服务器授权成功。此时,最明显的标记是服务器名前面红色向上的箭头变成了绿色向下的箭头。这样,这台被授权的DHCP服务器就有分配IP的权利了。
添加IP地址范围
当DHCP服务器被授权后,还需要对它设置IP地址范围。通过给DHCP服务器设置IP地址范围后,当DHCP客户机在向DHCP服务器申请IP地址时,DHCP服务器就会从所设置的IP地址范围中选择一个还没有被使用的IP地址进行动态分配。添加IP地址范围的 *** 作如下:
1 点击“开始→程序→管理工具→DHCP”,打开DHCP控制台窗口。
2 选中DHCP服务器名,在服务器名上点击鼠标右键,在出现的快捷菜单中选择“新建作用域”,在出现的窗口中单击[下一步]按钮,在出现的对话框中输入相关信息,单击[下一步]按钮
3 在图1所示的窗口中,根据自己网络的实际情况,对各项进行设置,然后单击[下一步]按钮,出现如图2所示的窗口。
4 在图2所示的窗口中,输入需要排除的IP地址范围。由于校园网络中有很多网络设备需要指定静态IP地址(即固定的IP地址),如服务器、交换机、路由器等,此时必须把这些已经分配的IP地址从DHCP服务器的IP地址范围中排除,否则会引起IP地址的冲突,导致网络故障。
5 单击[下一步]按钮,在出现的“租约期限”窗口中可以设置IP地址租期的时间值。一般情况下,如果校园网络中的IP地址比较紧张的时候,可以把租期设置短一些,而IP地址比较宽松时,可以把租期设置长一些。设置完后,单击[下一步]按钮,出现“配置DHCP选项”窗口。
6 在“配置DHCP选项”窗口中,如果选择“是,我想现在配置这些选项”,此时可以对DNS服务器、默认网关、WINS服务器地址等内容进行设置;如果选择“否,我想稍后配置这些选项”,可以在需要这些功能时再进行配置。此处,我们选择前者,单击[下一步]按钮。
7 在出现的窗口中,常常输入网络中路由器的IP地址(即默认网关的IP地址)或是NAT服务器(网络地址转换服务器)的IP地址,如WinRoute、SyGate等。这样,客户机从DHCP服务器那里得到的IP信息中就包含了默认网关的设定了,从而可以接入Internet。
8 单击[下一步]按钮,在此对话框中设置有关客户机DNS域的名称,同时输入DNS服务器的名称和IP地址。,然后单击[添加]按钮进行确认。单击[下一步]按钮,在出现的窗口中进行WINS服务器的相关设置,设置完后单击[下一步]按钮。
9 在出现的窗口中,选择“是,我想现在激活此作用域”后,单击[下一步]按钮,在出现的窗口中单击[完成]按钮,设置结束。此时,就可以在DHCP管理器中看到我们刚刚建好的作用域。
注意:如果您的校园网络是以工作组的形式存在的,可以在第6步的“配置DHCP选项”窗口中选择“否,我想稍后配置这些选项”,此时设置过程跳过第7、8步。如果您的校园网络是以域的形式存在的,建议您的网络配置顺序为:活动目录的建立→WINS的建立→DNS的建立→DHCP的建立,这样可以减少很多麻烦。
DHCP服务的测试
经过上述设置,DHCP服务已经正式启动,我们需要在客户机上进行测试。只需把客户机的IP地址选项设为“自动获取IP地址”,随后重新启动客户机。在客户机的“运行”对话框中键入“Ipconfig/all”,即可看到客户机分配到的动态IP地址。DHCP的工作过程
动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)是用于对多个客户计算机集中分配IP地址以及IP地址相关的信息的协议,这样就能将IP地址和TCP/IP的设置统一管理起来,而避免不必要的地址冲突的问题,因此常常用在网络中对众多DOS/Windows计算机的管理方面,节省了网络管理员手工设置和分配地址的麻烦。
除了能够方便管理之外,DHCP还能略微达到节省IP地址的目的。假设网络中有50个计算机,但只有40个 IP地址,但是这50台计算机不会同时启动,IP地址应该满足要求。如果使用静态IP地址的设置方式,还是会遇到分配地址的困难,因为计算机的使用是随机的,无论怎样分配地址都无法避免出现冲突现象,而使用DHCP就能避免这个问题。 DHCP也能用于统一设置其他的一些IP设置,如缺省路由、DNS服务器等等,使用它能减少一个大型网络的管理任务。
DHCP是从原有的BootP协议发展起来的,原来的目的是为无盘工作站分配IP地址的协议,当前更多的用于集中管理IP地址。然而DHCP协议也有其缺点,例如一台DHCP客户计算机没有一个固定的IP地址,而对于提供网络服务的服务器来讲,经常变化的IP地址并不适合。并且当前的DNS协议并不能和DHCP协作,为DHCP客户直接提供主机名解析任务。
DHCP的工作过程
DHCP工作时要求客户机和服务器进行交互,由客户机通过广播向服务器发起申请IP地址的请求,然后由服务器分配一个IP地址以及其他的TCP/IP设置信息。整个过程可以分为以下步骤:
IP地址租用申请:DHCP客户机的TCP/IP首次启动时,就要执行DHCP客户程序,以进行TCP/IP 的设置。由于此时客户机的TCP/IP还没有设置完毕,就只能使用广播的方式发送DHCP请求信息包,广播包使用 UDP端口67和68进行发送,广播信息中包括了客户机的网络界面的硬件地址和计算机名字,以提供DHCP服务器进行分配。
IP地址租用提供:当接收到DHCP客户机的广播信息之后,所有的DHCP服务器均为这个客户机分配一个合适的IP地址,将这些IP地址、网络掩码、租用时间等信息,按照DHCP客户提供的硬件地址发送回DHCP客户机。这个过程中对DHCP服务器没有对客户计算机进行限制,因此客户机能收到多个IP地址提供信息。
IP地址租用选择:由于客户机接收到多个服务器发送的多个IP地址提供信息,客户机将选择一个IP地址,拒绝其他提供的IP地址,以便这些地址能分配给其他客户。客户机将向它选择的服务器发送选择租用信息。
IP地址租用确认:服务器将收到客户的选择信息,如果也没有例外发生,将回应一个确认信息,将这个IP地址真正分配给这个客户机。客户机就能使用这个IP地址及相关的TCP/IP数据,来设置自己的TCP/IP堆栈。
更新租用:DHCP中,每个IP地址是有一定租期的,若租期已到,DHCP服务器就能够将这个IP地址重新分配给其他计算机。因此每个客户计算机应该提前不断续租它已经租用的IP地址,服务器将回应客户机的请求并更新该客户机的租期设置。一旦服务器返回不能续租的信息,那么DHCP客户机只能在租期到达时放弃原有的IP地址,重新申请一个新 IP地址。为了避免发生问题,续租在租期达到50%时就将启动,如果没有成功将不断启动续租请求过程。
释放IP地址租用:客户机可以主动释放自己的IP地址请求,也可以不释放,但也不续租,等待租期过期而释放占用的IP地址资源。
由于DHCP依赖于广播信息,因此一般的情况下,客户机和服务器应该位于同一个网络之内。然而可以设置网络中的路由器为可以转发BootP广播包,使得服务器和客户机可以位于两个不同的网络中。然而配置转发广播信息,不是一个很好的解决办法,更好的办法为使用DHCP中转计算机,DHCP中转计算机和DHCP客户机位于同一个网络中,来回应客户机的租用请求,然而它不维护DHCP数据和拥有IP地址资源,它只是将请求通过TCP/IP转发给位于另一个网络上的DHCP服务器,进行实际的IP地址分配和确认。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)