首页 > 代码库 > DHCP工作原理

DHCP工作原理

DHCP(Dynamic Host Configuration Protocol)

动态主机配合协议

其是一个位于局域网的应用层协议,也是一个UDP协议,主要就是对ip地址集中管理和分配。

DHCP的用途:

  给内部网络或网络服务供应商自动分配ip地址

  给用户或内部网管作为对所有PC做中央管理的手段

另外,DHCP是一个典型的CS模型:Server:UDP协议——67端口,Client:UDP协议——68端口。

 

DHCP的工作原理:


【图1】


交互过程:

 ①Client以广播的形式发出Discover报文。

②所有的Server都能收到Client发出的报文,所有的Server都会给出响应,向Client发送一个Offer报  文。(Offer中已有S提供给C的ip地址;S端会存在一个已分配ip的记录)

③Client只能处理一个Offer报文,一般原则为,处理最先收到的Offer报文。然后,C会发出一个广播  的Request报文,在选项字段中写入其选中的S的ip和需要的ip

④Server收到Request报文后,会判断首选字段中的ip是否与自己的相同。若不同,其只清除刚才的相  应的IP地址分配记录;若相同,S会向C响应一个DHCP ACK报文,并在选项字段中增加IP地址的使用  租期信息。

 

Server配置:

 Server(config)#service dhcp                     //启用DHCP服务

 Server(config)#ip dhcp pool [名字]             //定义dhcp地址池

 Server(config)#network [网段]  [子网掩码]       //定义dhcp网段及掩码

 Server(config)#default-router  [网关]           //定义网关

 Server(config)#dns-server [ip地址]            //DNS服务器地址

可选操作:

 Server(config)#ip dhcp excluded-address [ip地址] 

  //DHCP分配ip时不包含的ip

 

 Client配置:

 Client(config)#no ip routing

 Client(config)#int f0/0

 Client(config-if)#no shutdown

 Client(config-if)#ip add dhcp

 

 Client(config)#show ip interface brief       // 查看端口配置信息

 

 

上述说到,Client-Server之间的报文传输都是广播报文,当C和S不处于同一个广播域时,C发出的Discover报文广播会被阻断,此时,需要用到DHCP Relay(中继),其会将C发出的广播转换成单播发送给S。

 

      【图2】                       

 

 上图中,中继功能配置在三层交换机上的SVI接口vlan 10中,因为C属于Vlan10。


本文出自 “阿仙儿” 博客,请务必保留此出处http://sundengxian.blog.51cto.com/12283566/1947514

DHCP工作原理