一.dhcp知多少?
1.定义
DHCP(Dynamic Host Configuration Protocol)称为动态主机配置协议,其前身是BOOTP。因BOOTP缺乏灵活的动态特性,所以被DHCP取代(DHCP是BOOTP的扩展),用于向网络中的计算机分配IP地址及一些TCP/ip配置信息。
DHCP服务器端使用UDP的67号端口;DHCP客户端使用UDP的68号端口。
2.为什么要用dhcp
①DHCP服务器用于为客户机动态分配IP地址,避免了TCP/IP网络中地址的冲突,便于对网络的IP地址进行管理;
②在使用TCP/IP协议通信的网络中,每台计算机都必须至少有一个IP地址,这样才能与其他计算机通信。对于一个较大规模的网络来说,逐个地为每台计算机分配和设置IP地址,将是一件很麻烦的事情,也不便于管理和维护;
③对于像笔记本这样的移动用户,经常从一个子网移动到另一个子网,需要不断地手动更换IP地址,很不方便;
④DHCP服务器通过动态的IP地址分配还能解决IP地址资源不足的情况,因此DHCP产生了。
3.原理
客户发出的IP租用请求报文
DHCP客户机初始化TCP/IP,通过UDP端口67向网络中发送一个DHCPDISCOVER广播包,请求租用IP地址。该 广播包中的源IP地址为0.0.0.0,目标IP地址为255.255.255.255;包中还包含客户机的MAC地址和计算机名。
DHCP回应的IP租用提供报文
客户选择IP租用报文
DHCP服务器发出IP租用确认报文
被客户机选择的DHCP服务器在收到DHCPREQUEST广播后,会广播返回给客户机一个DHCPACK消息包,表明已经接受客户机的选择,并将这一IP地址的合法租用以及其他的配置信息都放入该广播包发给客户机。
客户配置成功后发出的公告报文
客户机在收到DHCPACK包,会使用该广播包中的信息来配置自己的TCP/IP,则租用过程完成,客户机可以在网络中通信。
4.DHCP的租约更新
当客户机重新启动或租期达50%时,就需要重新更新租约,客户机直接向提供租约的服务器发送请求DHCPREQUEST消息,要求更新现有的地址租约。如果DHCP服务器接收到请求,它将发送DHCP确认信息给客户机,更新客户机租约。如果客户机无法与提供租约的服务器取得联系,则客户机一直等到租期到达87.5%时,进入到一种重新申请的状态,它向网络上所有的服务器广播DHCPDISCOVER请求更新现有的IP租约。
5.DHCP中继代理
DHCP中继代理的工作过程:
①DHCP中继代理服务器在收到本子网DHCP客户端广播发出的DHCP消息后,后果在预定的时间内没有DHCP服务器广播回应消息,则它会将客户端的DHCP消息以单播的方式转发给预先指定的DHCP服务器。
②DHCP服务器收到DHCP中继代理服务器转发来的DHCP消息后,会提供一个与DHCP中继代理服务器的IP地址在同一个子网的IP地址,然后以单播的方式将这个DHCP消息发送给DHCP中继代理服务器。
③DHCP中继代理服务器在收到DHCP服务器回应的DHCP消息后,再通过广播发送给DHCP客户端。
二.相关案例
案例一:dhcp单个作用域配置
1.安装dhcp服务
[root@ws Server]# rpm -ivh dhcp-3.0.5-21.el5.i386.rpm
2.编辑/etc/dhcpd.conf
[root@ws Server]# vim /etc/dhcpd.conf
3.进行相关基本配置
4.保存退出,重启服务
5.开启一台主机进行测试
6.静态绑定192.168.1.50
案例二:dhcp超级作用域配置
1.编辑/etc/dhcpd.conf
[root@ws ~]# vim /etc/dhcpd.conf
2.添加超级作用于关键字
3.添加多个子域
192.168.1.0/24 子域
192.168.2.0/24 子域
4.重启服务测试
案例三:dhcp中继
拓扑图
1.编辑dhcp服务器
2.安装dhcp中继
[root@station97 Server]# rpm -ivh dhcp-3.0.5-21.el5.i386.rpm
3.编辑dhcp中继文件
[root@station97 ~]# vim /etc/sysconfig/dhcrelay
4.打开路由转发功能
[root@station97 ~]# vim /etc/sysctl.conf
[root@station97 ~]# sysctl �Cp
5.vlan10内主机测试
6.vlan20内主机测试
7.vlan10 ping vlan20