1.打开wireshark,开始抓包
2.过滤栏输入bootp 3.管理员身份打开控制台输入ipconfig /release 4.再输入ipconfig /renew,等待一会儿 5.DHCP分配IP过程的包就抓到了 discover包 1.由IPV4的Src和Dst可以看到客户端没有IP,也不知道服务器的IP,所以讲DHCP发现包广播出去。 2.由Boot Request (1) 消息类型 1=请求。 3.观察Bootp flags:0x0000(unicast) 发现包中大多数域为空。 4.观察Option:(53) DHCP Message Type DHCP消息类型53表示是发现Discover包。 5.软件在处理DHCP时会引用BOOYP协议而不是显示DHCP。
offer包 1.由IPV4的Src和Dst可以看到服务器和客户端的地址 2.由Bootstrap Protocol部分可以看到Boot Replay(2) 2=响应 3.由Transaction ID:0x9be9895c 事务ID,与上一个请求包匹配 4.观察Bootp flags:0x0000(unicast) 知道客户端还未获得IP;看到服务器分配的IP;知道服务器IP与网关IP共用一个。 5.观察Option:(53) DHCP Message Type,DCHP:offer(2)DCHP提供数据包 6.后面还有子网掩码,续租时间,重新绑定时间,IP地址租期和服务器标识符等信息。 request包
1.由IPV4的Src和Dst可以看到客户端仍未获得IP以DHCP请求包来响应 2.由Bootstrap Protocol部分可以看到Boot Request(1)看到请求包 3.发现Transaction ID:0x9be9895c与发现包相似,但是这是一个全新的请求或响应的过程 4.观察Bootp flags:0x0000(unicast) 发现客户端仍未获得IP地址 5.观察Option:(53) DHCP Message Type,类型为DHCP请求包 6.观察Option:(50)和Option:(54)得知所请求的IP地址为服务器提供的IP地址,服务器的IP也已知。 ACK包 1.由IPV4的Src和Dst可以看到服务器和客户端的地址 2.由Bootstrap Protocol部分可以看到Boot Replay(2)响应包 3.发现Transaction ID:0x9be9895c与上一个请求包同一事务,具有同一ID 4.观察Bootp flags:0x0000(unicast)Your (client)IP address:192.168.10.2 服务器确认客户端接受了提供的IP 5.观察Option:(53) DHCP Message Type,消息类型为确认ACK