DHCP在一个广播域里动态修改IP地址
背景
- DHCP (Dynamic Host Configuration Protocol,动态主机配置协议)
- 由Internet工作任务小组设计开发
- 专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
使用DHCP的好处
- 减少管理员的工作量
- 避免输入错误的可能
- 避免IP地址冲突
- 当更改IP地址段时,不需要重新配置每个用户的IP地址
- 提高了IP地址的利用率
- 方便客户端的配置
DHCP的分配方式
- 自动分配: 分配到一个IP地址后永久使用
- 手动分配:由DHCP服务器管理员专门指定IP地址
- 动态分配:使用完后释放该IP,供其它客户机使用
DHCP的典型应用模式如下:在网络中架设一台专用的DHCP服务器,负责集中分配各种网络地址参数(主要包括IP地址、子网掩码、广播地址、默认网关地址、DNS服务器地址):其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与 DHCP 服务器进行通信,完成自动配置过程。
DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给客户端的68号端口
工作原理
DHCP的IP地址自动获取工作原理
-
第一步:客户端在网络中搜索服务器
客户端通过广播发送DHCP Discover 报文寻找服务器端 -
第二步:服务器向客户端响应服务
服务器端通过单播发送DHCP offer 报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的IP地址分配给客户端 -
第三步:客户端向服务器发出服务请求。
如果有多台DHCP服务器向该客户端发来DHCP-offer报文,,客户端只接受第一个收到的DHCP-offer报文并提取IP地址,然后客户端通过广播发送DHCP-Request 报文告知服务器端本地选择使用该IP地址 -
第四步:服务器向客户端提供服务
服务器通过广播( 华为设备是单播) 发送DHCP ACK报文告知客户端IP地址是合法可用的,并在选项字段中增加TP地址的使用租期信息
-
重新登录
DHCP 客户机每次重新登录网络时,不需要再发送 DHCP Discover 信息,而是直接发送包含前一次所分配的 iP 地址的 DHCP Request 请求信息,如果IP地址还没有分配给其他计算机,就服务器就回复ack报文,告知继续可用,如果已经被分配了,服务器就发送ack报文告知不能使用,计算机就重新开始发送discover报文
-
重新租约
当 DHCP 服务器向客户机出租的 IP 地址租期达到 ==50%==时,就需要更新租约。客户机直接向提供租约的服务器发送 DHCP Request包,要求更新现有的地址租约。
分配IP地址池时,华为设备是从大到小分配,其他设备是从小到大分配
配置DHCP服务器
windows连接linux
- 关闭防火墙和selinux
- 下载dhcp
- 配置/etc/dhcpd.conf
- 里面是空的,需要去复制文件内容
-
如何显示版本号
-
复制文件
-
编辑文件
vim /etc/dhcp/dhcpd.conf
- 启动dhcpd服务
测试
- 配置Windows虚拟机和Linux虚拟机的网络
- 配置完毕后回到windows虚拟机
- 抓包查看
-
linux连接linux
- 配置网络配置
- ifconfig查看
设置一个外网口,给客户端设置一个固定的ip地址
- 添加linux新的网络适配器
- 配置linux网络
- 修改ens36网卡的ip地址
- 配置vim /etc/dhcp/dhcpd.conf
- 查看windows的物理地址
ipconfig /all
- 用的来的物理地址再配置之前的vim /etc/dhcp/dhcpd.conf
- 配置windows网络
同样和上面的一样重启下网络然后就可以了