DHCP原理与配置学习
•DHCP客户机从接受到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机。•DHCP服务器接受DHCP Request消息后,以DHCP ACK 消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息。•如果有,DHCP服务器将此IP地址做上标记,加入到DHCP OFFer(提供)消息中
DHCP
静态分配
动态分配
自动分配
1.客户端启动,发现discover ➡dhcp服务器,目标广播,源0.0.0.0
2.服务器响应,提供offer➡IP地址信息等,目标地址广播,源服务器IP
3.客户端收到offer,发送请求request,目标地址广播,源0.0.0.0
4.返回信息,ACK/NACK(确认/否认),目标地址广播,源服务ip
重新登录到网络
3.发送请求request,目标地址广播,源0.0.0.0
4.返回信息,ACK/NACK(确认/否认),目标地址广播,源服务ip
如果是NACK重新从1开始来到4
更新租约
一共8天
第四天发送请求request
ACK,继续得到一个8天的使用时间
NACK,重新请求(1~4)
如果地址发生冲突
静态分配
dhcp分配
①客户端向网络发送arp(IP地址和MAC地址)应答信息
②向服务器重新申请一个新的地址
DHCP工作原理
了解DHCP服务
- DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)
- 为网络中的计算机自动分配TCP/IP参数的协议
DHCP的网络结构
使用DHCP的好处
• 减少管理员的工作量
• 避免输入错误的可能
• 避免IP地址冲突
• 当网络更改IP地址段时,不需要再重新配置每个用户的IP地址
• 提高了IP地址的利用率
• 方便客户端的配置
DHCP的分配方式
自动分配(Automatic Allocation)
设备分配到一个IP地址后永久使用
手动分配
由DHCP服务器管理员专门指定IP地址
动态分配
使用完后释放该IP地址,供其他客户机使用
*DHCP的租约过程(客户机从DHCP服务器获得IP地址的过程)
客户端请求IP地址
• 当一个DHcp客户机启动,如果没有IP地址,通过DHCP获取一个合法的地址
• (DHCP以广播方式发送DHCP Discover(发现)发送信息寻找DHCP服务器)
• 发送广播需要先设置一条格式:(目标广播,源服务器IP(0.0.0.0))
服务器响应
• DHCP服务器介绍客户机请求IP地址的信息,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
• 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP OFFer(提供)消息中,发送广播给客户端(目标地址广播,源服务器的ip)
客户机选择IP地址
• DHCP客户机从接受到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机
服务器确定租约
• DHCP服务器接受DHCP Request消息后,以DHCP ACK 消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
• 当客户机接收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化
重新登录
3.发送请求request,目标地址广播,源0.0.0.0
4.返回信息,ACK/NACK(确认/否认),目标地址广播,源服务ip
如果是NACK重新从1开始来到4
更新租约
一共8天
第四天发送请求request
ACK,继续得到一个8天的使用时间
NACK,重新请求(1~4)
使用DHCP动态设置主机地址
可分配的地址信息主要包括
• 网卡的IP地址、子网掩码
• 对应的网络地址、广播地址
• 默认网关地址
• DNS服务器地址
配置DHCP服务器
建立主配置文件 dhcpd.conf
dhcpd的主配置文件是:/etc/dhcp/dhcpd.conf
①:在Linux系统
第一步:检查dhcp是否安装
rpm -qa dhcp
第二步:查看dhcp中的配置文件
cat /etc/dhcp/dhcpd.conf
第三步:dhcp里面没有配置文件,从/usr/share/doc/dhcp-server/dhcpd.conf.example 中复制
cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf
第四步:进入dhcpd.conf,配置网段声明
例如:每一个网段的声明部分
第五步:重新启动dhcpd &检查67端口是否监听
systemctl start dhcpd
netstat -anpu |grep 67
第六步:在Linux客户机中 打开配置网络参数(将BOOTPROTO=dhcp,其他参数注释“#”)
vi /etc/sysconfig/network-scripts/ifcfg-ens33
第七步:重启网络服务
systemctl restart NetworkManager
第八步:重启➡ifconfig(查看和地址池第一个网关是否一样)
第九步:在服务端中查看租约信息
cat /var/lib/dhcp/dhcpd.leases
②:在Windows系统
先按照Lindux中的1~3,
第一步:进入dhcpd.conf,配置主机声明
hardware ethernet:要写客户机的物理地址(MAC地址)
第二步:重新启动dhcpd
systemctl restart dhcpd
第三步:在windows客户端中
网络➡属性➡更多适配器设置➡属性➡协议版本4➡全选自动获取
第四步:刷新➡查看详细信息➡IPv4地址
DHCP中继
DHCP中继原理
DHCP中继配置
更多推荐
所有评论(0)