在开启了 DHCP 服务的网络中,一台电脑开机获取 IP 一般需要以下 4 个过程
一、发现,Discover
向整个网络广播:“大家好,我是新来的(假设MAC=22:22:22:22:22:22),谁是DHCP服务器?请为我分配IP”
过程:
ETH -22:22:22:22:22:22 => FF:FF:FF:FF:FF:FF (广播,因为不知道谁是服务器)
IP信息-源 0.0.0.0:68 目标 255.255.255.255:67(自己没有合法IP,也不知道服务器IP)
二、提供,offer
网络上的DHCP服务器收到广播后检查自己的地址池是否有可用IP,如有就回答:
“你好,我是DHCP服务器(假设IP=192.168.1.1,MAC=11:11:11:11:11:11),给你分配IP为192.168.1.100”
过程:
ETH -11:11:11:11:11:11 <= 22:22:22:22:22:22 (点到点应答)
IP信息-192.168.1.100:68 <= 192.168.1.1:67
三、选择,request
网络上可能有多个DHCP服务器都会对Discover广播回应,客户机总是选择最先回应的那台服务器分配的IP
于是客户机再次广播:“谢谢,我将使用 192.168.1.100 这个IP,其它服务器为我分配的IP请收回”
过程:
ETH -22:22:22:22:22:22 => FF:FF:FF:FF:FF:FF (广播,以便通知其它服务器,名花已有主,秋天的菠菜请节约使用)
IP信息-0.0.0.0:68 => 255.255.255.255:67 (分配的IP还不能使用,仍使用 0.0.0.0)
四、确认,ack
第一个回应的DHCP服务器看到选择广播后,心花怒放,高兴的回答:
“好,你可以使用 192.168.1.100 了(小子,从此你就是本网的低等下人,192.168.1.100 就是你的临时代号)”
过程:
ETH -11:11:11:11:11:11 <= 22:22:22:22:22:22 (点到点应答)
IP信息-192.168.1.100:68 <= 192.168.1.1:67
经过了上述4步后,客户机才可以将TCP/IP协议与网卡绑定,这样客户就成功的加入了一个子网。
因篇幅问题不能全部显示,请点此查看更多更全内容