参考资料:

Windows Server2022 DHCP服务器配置_windows server 2022 配置与管理dhcp服务器-CSDN博客

DHCP报文详解及抓包实例_dhcp officer报文抓取并说明报文内部携带的关键数据和特征-CSDN博客

一、前置假设

1.两个Windows Server 2022虚拟机(客户端+服务端)

2.服务器和客户端都要有wireshark

3.假设你有一丢丢的DHCP基础,没有也没关系

二、实验步骤

1.建立虚拟网络

通过VMware Workstation自带的虚拟网络编辑器建立一个临时的虚拟网络

获取一下管理员权限,不然创建不了

随便选一个没有用过的网络名,我这里之前已经添加了VMnet3,就不重新添加了,网络名对实验没影响

然后像下面一样设置,子网IP可以根据你本地的情况设置

改一下两个虚拟机的网络适配,连接用的网络就好了

2.DHCP服务器搭建:

a.下载DHCP

启动服务器虚拟机,打开Windows Server自带的服务器管理器,进行角色功能添加。

选上DHCP服务器,其他的默认就好,

b.设置静态IP

通过控制面板进行修改,设置IPv4地址为静态IP(可以根据自己情况进行调整,如果大家不会根据自己的情况修改,可以改成跟我一样的192.168.107.128)

改成静态IP,一定要是静态的,再次强调

c.配置DHCP

打开DHCP工具,选择IPv4--新建作用域

简单配置一下:

DHCP作用域最好分配与之前虚拟网络分配的IP在统一网段,DHCP为客户端分配的IP地址返回就是从192.168.107.150到192.168.107.200

没有需要排除的IP就不用设置

租期可以看着设置,我这里设置的是2天

如果你需要wireshark抓包的时候获取一些DNS分配的内容,可以选择现在配置,不需要,则可以跳过此步,选择否

我这里需要DNS的分配记录,所以随便设置了一下DNS的IP

不需要设置的,就跳过,最后激活就好,如果之前没有设置,也可以在作用域里面修改,DHCP激活和停用也在这里可以实现

3.连接测试

启动客户端虚拟机,启动客户端wireshark捕获窗口,输入过滤dhcp,打开命令窗口,输入ipconfig -release 释放网络连接,

ipconfig -release

这时候你可以看到一条Release消息,因为我之前连接过,所以我的Source IP是DHCP分配的旧的租借的IP,可以看到Destination的IP正是我们的服务器IP地址,大家可能与我不同,这很正常。

现在我们renew一下,重新建立连接:

ipconfig -renew

可以看到wireshark中多了四条记录,这对应的就是DHCP四次握手,0.0.0.0是客户端向服务器发送的DHCP数据包,192.168.107.128发起的是客户端的回复,目的地都为255.255.255.255,因为在这个阶段,客户端还没有一个正式的IP地址,因此只能依赖广播地址来进行通信(只是我个人的理解)。

4.重新连接测试(禁用网卡后在重新启动)

因为客户端禁用网卡后,wireshark会因为找不到网络接口而报错终止,所以我们选在在服务器端捕获DHCP数据包

先禁用客户端网卡,断开连接

随后重新启用客户端网卡,切换到服务器端,可以发现服务器端的wireshark捕获了两个包,这就是续租的两次握手,因为我的租约还没有过期,过期了就是四次握手,重新租。

在给出的ACK报文中,我们也可以看到续租的IP地址就是之前没有过期分配的地址

三、结语

以上就是实验的全部流程了,这是我的第一篇博客,我也是边学边完成的,有问题、有错误期待指正。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐