DHCP协议
在刚刚插上网线时,主机无法得知自己ip,一是手动配置IP,子网掩码,路由,二是通过DHCP动态地址配置协议。DHCP过程:discover,因为不知道DHCP服务器地址,本机广播向本地网段内所有人询问。offer,非DHCP服务器忽略,是则从维护的ip池拿出空闲IP,广播回主机。request,主机拿到IP,再次广播。ACK,服务器回复正确接受信息,意味可以使用,如果期间这个IP不能使用了,回复NAK。
DHCP是应用层协议,要支持广播功能,底层使用UDP协议而不是TCP。每次联网,如果连过这个网络,机器会记录上次使用IP,再次链接先使用原ip只经历三四阶段。分配的IP可能是某台主机手动配置的,会重复(也可能多个DHCP服务器维护IP池重叠,需要权限修改范围)。所以最后主机还会发三次无偿ARP通告(一般ARP目的通过IP地址获取MAC,填IP不填Mac,无偿填自己的IP和Mac),确认没有冲突后使用。
引用:电脑插上网线,联网后会通过DHCP协议动态申请一个IP,同时获得子网掩码,路由器地址等信息。 DHCP分为四个阶段,分别是 Discover,Offer, Request和ACK。如果曾经连过这个网,机器会记录你上次使用的IP,再次连接时优先使用原来的那个IP,因此只需要经历第三第四阶段。 DHCP是应用层协议,考虑到需要支持广播功能,底层使用的是UDP协议,而不是TCP协议。 DHCP分配下来的IP是有可能跟某台手动配置的IP地址重复的。 DHCP得到IP之后还会发3次无偿ARP通告,在确认没有冲突后开始使用这个IP。
标题:刚插上网线,电脑怎么知道自己的IP是什么? - 掘金
网址:https://juejin.cn/post/7153255870447484936#heading-5