DHCP笔记

时间:2024-05-23 17:10:51
DHCP(Dynamic  Host  Configuration  Protocol,动态主机配置协议)是由Internet工作任务小组设计开发的,专门用于TCP/IP网络中的计算机自动分配TCP/IP参数的协议

需要注意的是:如果安装的DHCP服务器,则DHCP服务器的IP地址必须是静态的。

option   domain-name  "yuming.yu";
#这里配置的是分配给客户端的  域名 这个域名体现在  /etc/resolv.conf  中:search 

service   dhcpd   configtest
#检测配置文件语法是否配置正确


DHCP工作的简单流程:  使用的端口是  UDP   67   68.如果配置DHCP服务器,需要打开这2个端口。
     1、首先客户机会发送一个 discover  来询问谁可以为我分配IP地址。
     2、然后 DHCP 会发送一个广播 offer ,说我可以为你提供网络信息。如果有多个DHCP服务器的话,这些服务器都会向网络当中提供一个DHCP  offer这个广播。但是客户端只会选择第一个收到的offer
     3、客户机会向网络当中发送一个DHCP  request 广播,作用:客户机已经找到DHCP服务器,告诉别的DHCP服务器不用再向客户机提供信息。
     4、被选中的 DHCP服务器会再发送一个广播,ack(这里面包含的是具体的IP地址,子网掩码信息等提供给客户端。)
安装DHCP服务器:
     yum   -y   install   dhcp
rpm  -ql   dhcp  
#查询安装包的目录、文件列表
在 /usr/share/doc/dhcp-****/dhcpd.conf.sample  这么一个配置模版。
##需要注意的是:在文件第一行开始到   subnet  之前都是全局选项。影响的是整个DHCP服务器。
文件其中:
    1、 option   domain-name  "yuming.yu";
#这里配置的是分配给客户端的  域名 这个域名体现在  /etc/resolv.conf  中:search 
     2、option  domain-name-servers  192.168.197.250;
#这个是分配给客户端使用的  DNS
     3、default-lease-time   600;(秒)
#租约,分配给客户端的IP,可以使用多久。租期
     4、max-lease-time   7200;
#最大租期  7200 秒
     5、ddns-update-style   none;
#这个是DNS的动态更新,默认是注释的。
     6、log-facility   local17
#日志的级别
后面有很多的  subnet ,subnet叫一个子网:为了给不同的网段分配IP地址。每一个subnet称作一个作用于。每一个subnet控制分配不同的网段IP地址。
DHCP笔记
配置好 重启  DHCP 服务器
     service   dhcpd  restart
#重启DHCP服务器
     service   dhcpd   configtest
#检测配置文件语法是否配置正确。
DHCP笔记
查看DHCP服务器分配出去的IP:
     /var/lib/dhcpd/dhcpd.leases  文件中查看
#在客户机  上也可以查看到自己的  dhcp分配信息:
     /var/lib/dhclient/dhclient.leases  文件:记录的是获取IP信息


MAC地址绑定固定IP:
     DHCP笔记
可以使用命令:达到远程开机:
     ether-wake  -i   eth0    11:0C:03:04:04:9C


如果有多个网卡的话,只允许某个网卡对外提供DHCP服务:
     设置配置文件
               /etc/sysconfig/dhcpd   
DHCP笔记DHCP笔记
#这个文件只有安装了DHCP服务后才会有。默认是没有的。

使用DHCP的好处
     1、减少管理员的工作量
     2、避免IP地址冲突
     3、当网络更改IP地址段时,不需要再重新配置每个用户的IP地址。
     4、提高了IP地址的利用率
     5、方便客户端的配置。

可分配的地址信息主要包括:
     1、网卡的IP地址、子网掩码
     2、对应的网络地址、广播地址
     3、默认网关地址
     4、DNS服务器地址     

DHCP的分配方式:
     1、自动分配:分配到一个IP地址后永久使用
     2、手动分配:由DHCP服务器管理员专门指定IP地址
     3、动态分配:使用完后释放该IP,供其他客户机使用。

DHCP的租约过程:
     1、客户机从DHCP服务器获得IP地址的过程为DHCP租约过程
     2、租约过程分为四个步骤:
          1、客户机请求IP(客户机发DHCP  Discover  广播包)
          2、服务器响应(服务器发 DHCP  Offer  广播包)
          3、客户机选择IP(客户机发  DHCP  Request  广播包)
          4、服务器确定租约(服务器发  DHCP   ACK  广播包)

客户机请求IP地址:
     当一个DHCP客户启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址。
     此时,DHCP 客户机以广播方式(因为DHCP服务器的IP地址对客户机来说未知的),发送 DHCP  Discover  发现信息来寻找  DHCP   服务器
     广播信息中含  DHCP  客户机的  MAC  地址和 计算机名,以便 DHCP 服务器确定是哪个客户机发送的请求。


服务器响应:
     当  DHCP  服务器接收到来自客户机请求IP地址的信息时,它就在自己的IP地址池中查找是否有合法的IP地址供给客户机,如果有,DHCP  服务器就将此IP地址做上标记,加入到  DHCP   Offer的消息中,然后  DHCP  服务器就广播一则包含了下列信息的  DHCP  Offer消息: DHCP  客户机的MAC地址,DHCP 服务器提供的合法IP地址,子网掩码,默认网关,租约的期限,DHCP服务器的IP地址。

客户机选择IP地址:
     DHCP 客户机从接收到的第一个  DHCP  Offer  消息中获取IP地址,发出IP地址的  DHCP  服务器将该地址保留,这样该地址就不能再分配给另一个  DHCP  客户机。
     当客户机从第一个 DHCP  服务器接收  DHCP  Offer消息并提取到IP地址后,客户机将  DHCP  Rquest  消息广播到所有的  DHCP  服务器,表明它接收提供的内容。
     DHCP   Request  消息包括为  客户机提供 IP  配置的服务器的服务标识符(服务器IP地址)。DHCP  服务器查看服务器标识符字段,以确定提供的IP地址是否被接收,如果  DHCP  Offer  被拒绝,则  DHCP  服务器取消并保留其IP地址以供给下一个IP租约的请求。

服务器确定租约:
DHCP  服务器接收到  DHCP  Request 消息后,以  DHCP  ACK  消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息。
     当客户机收到  DHCP  ACK  消息时,它就配置了IP地址,完成了   TCP/IP  的初始化。

重新登录:(重启网络)
DHCP  客户机每次重新登录网络时,不需要再发送  DHCP  Discover  消息,而是直接发送包含前一次分配的IP地址的   DHCP  Request  请求消息
     当  DHCP  服务器接收到这个一消息后,它会尝试让  DHCP  客户机继续使用原来的IP地址,并回答一个  DHCP  ACK  确认消息。
     如果次IP地址已无法再分配给原来的  DHCP  客户机使用(如:IP地址已经分配给其他的  DHCP  客户机使用),DHCP  服务器给  DHCP  客户机回答一个  DHCP  Nack  否认消息
     当原来的  DHCP   客户机接收到  DHCP   Nack否认消息后,它就必须重新发送  DHCP  Discover  发现信息来请求新的IP地址。

当租约到期的时候,更新租约:
     当  DHCP  服务器相爱呢个客户机出租的 IP 地址租期达到  50%  时,就需要更新租约
     客户机直接向提供租约的服务器发送  DHCP  Request 包,要求更新现有的地址租约。


对于大型网络,分配了不同VLAN(隔离广播的),如果需要 DHCP  服务器:
     1、为每个网段安装一台  DHCP  服务器,但这种方式存在资源上的浪费,而不利于集中管理。     
     2、在连接不同网段的设备上开启  DHCP  中继功能,将  DHCP  这种特殊的广播信息再  VLAN之间转发,让其他  VLAN  的客户机也能从  DHCP  服务器那里获得 IP 地址。

DHCP 中继的配置:
     DHCP 中继的配置命令:
ip   helper-address   DHCPsrv-IPAddress
其中   DHCPsrv-IPAddress  为  DHCP  服务器的 IP  地址。

在三层交换机上配置  DHCP  中继转发,是在不包含  DHCP  服务器的  VLAN  上配置实现的。
     SW-3L(config)#interface   vlan  2    // 配置虚拟的接口

     SW-3L(config-if)# ip  address   192.168.2.1   255.255.255.0  // 给虚拟接口配置绑定  IP 地址

     SW-3L(config-if)# ip  helper-address  192.168.100.100    // 针对vlan2 或则是  192.168.2.0 这个网段配置一个中继代理,将发过来的广播包转发到   192.168.100.100  (是vlan100的  DHCP 服务器IP地址)这台服务器下

     SW-3L(config-if)#no shutdown   // 代表将这个接口开启

以上都是针对vlan2的。 如果配置vlan3  步骤是一样的,网段是指向3网段  192.168.3.0

SW-3L(config)# interface  vlan  100
SW-3L(config-if)# ip   address  192.168.100.1   255.255.255.0
SW-3L(config-if)#  no   shutdown 


安装  DHCP  服务器
DHCP  服务器软件
     光盘中:dhcp-4.1.1-38.P1.el6.centos.x86_64.rpm
DHCP软件包的主要文件:
     1、主配置文件:  /etc/dhcp/dhcpd.conf
     2、执行程序:  /usr/sbin/dhcpd  、  /usr/sbin/dhcrelay(中继)
     3、服务脚本:   /etc/init.d/dhcpd  、  /etc/init.d/dhcrelay(中继)
     4、执行参数配置:   /etc/sysconfig/dhcpd(运行时默认读取的参数)
     5、DHCP 中继配置:  /etc/sysconfig/dhcrelay

主配置文件:
     全局设置,作用于整个 DHCP 服务器
ddns-update-style   none;   // 动态DNS的更新模式,不需要none
default-lease-time   21600;   // 默认租约时间秒
max-lase-time  43200;     // 最大租约时间,秒
option  domain-name   "domain.org";     // 默认域名
option   domain-name-servers   202.106.0.20;     // DNS服务器地址

第一步挂载光盘安装  dhcp  服务器

第二部查看主配置文件:

第三部:将模版文件拷贝到主程序目录下

简单的修改全局配置;


Subnet网段声明,作用于整个自网段
range  参数:设置用于分配的IP地址池
option   subnet-mask  参数:设置客户机的子网掩码
option   routers 参数:设置客户机的默认网关地址

设置subnet 参数:
如果添加另一网段,格式都是一样的。
需要注意的是:本机中的至少需要有一个网段是与DHCP设置的 subnet 的网段在同一个,否则DHCP服务是不能启动成功的
设置默认路由,设置默认网关地址
DHCP笔记

host主机声明,作用于单个主机
     hardware  ethernet  参数:指定对应主机的  MAC 地址
     fixed-address  参数:指定该主机保留的IP地址

为指定客户机保留IP地址:需要这个客户机的MAC地址


启动 DHCP  服务
[[email protected]  ~]#  service  dhcpd   start
#启动dhcp服务
[[email protected] ~]#  netstat   -anpu  |   grep  ':67'

需要关闭、重启dhcpd服务时,只要stop,或  restart  即可
如果dhcpd服务启动失败,可以检查日志文件   /var/log/messages  末尾的错误提示信息,并根据提示进行排错。
DHCP笔记
配置的时候,我们设置的是  192.168.1.0  网段,而当我们查看本机的时候 ,网段是  192.168.197.0网段,所以第一次启动的时候直接失败了,因为:DHCP主配置文件中至少有一个网段是与本机是处于同一网段的。当修改主配置文件与本机  网段处与同一网段后,启动DHCP服务成功。

查看DHCP服务器的端口号


使用  DHCP  客户端---如果使用虚拟机中的  DHCP 服务,需要关闭VMware中的 dhcp  设置(编辑---虚拟网络编辑器   或是: 计算机管理---服务---VMware DHCP服务关闭)
俩种方式:
     1、修改网卡配置文件(如:ifcfg-eth0) BOOTPROTO=dhcp

     2、使用  dhclient  命令:


查看租约文件
可以通过查看租约文件  dhcpd.leases  来了解服务器的 IP 地址分配情况,该租约文件中记录了分配出去的每个IP地址信息(租约记录),包括IP地址、客户端的 MAC 地址、租用的起始时间和结束时间等。
less   /var/ib/dhcpd/dhcpd.leases

需要通过  dhclient 命令释放获取的 IP 租约时,可以集合  “-r”选项。例如:执行“dhclient   -r   eth0”将会释放之前为网卡  eth0  获取的IP租约