有两台机器通过交换机连接在一起,其中一台的IP是192.168.1.111,另一台的IP是192.168.1.112,
此时192.168.1.111向192.168.1.112发包是可以接收到的。但如果我将192.168.1.111的IP改成16.158.23.6,这个时候,再通过16.158.23.6向192.168.1.112发包,会怎么样?
答:不会出现任何现象,包发不出去。
Linux系统发包机制是这样的,源地址是16.158.23.6,目的地址是192.168.1.112,包传到数据链路层后,它发现目的地址跟源地址不是同一个网关,它会先将包发到网关上去。这个时候如果配置了网关16.158.23.1,网关收到包之后,发现没有路由转发,无法到192.168.1.1网关,自然也就收不到包了。
动态主机配置协议(DHCP):
网络管理员配置一段共享的IP地址,每一台新接入的机器都通过DHCP协议,来这个共享的IP地址里申请,然后自动配置好就可以了。等用完了,再释放掉,供以后的人用。
DHCP工作方式:
1、新加入的机器使用IP地址0.0.0.0发送一个广播包,目的IP为255.255.255.255。使用UDP协议。
2、DHCP Server收到消息之后,根据MAC地址判断这个机器是一台新的机器,给它分配一个IP地址。DHCP Server仍然使用广播地址作为目的地址,此外,服务器还发送了子网掩码、网关、IP地址租用期等信息。
3、如果存在多个DHCP服务器,新加入的机器会选择最先到达的数据包,并且向网络发送一个DHCP Request广播数据包,包中包含客户端的MAC地址、接受租约中的IP地址、提供此租约的DHCP服务器地址等,并告诉所以的DHCP服务器,它将接受哪一个服务器提供的IP地址。
4、DHCP Server收到客户端的DHCP request之后,会广播返回给客户机一个DHCP ACK消息包,表明已经接受客户端的选择,并将这一IP地址的合法租用信息和其他的配置信息都放入该广播包,发给客户端。
5、此时,DHCP分配IP地址的流程就完成了。
IP地址的收回与续租:
客户机会在租期过去50%的时候,直接向为其提供IP地址的DHCP Server发送DHCP request消息包。客户机接收到该服务器回应的DHCP ACK消息包,会根据包中锁提供的新的租期以及其他已经更新的TCP/IP参数,更新自己的配置。这样,IP租用更新就完成了。
租约到期,就会进行回收。
参考:趣谈网络协议