静态地址和动态地址
静态地址
静态地址是指由网络中心分配的固定IP地址。
一般只在下面两种情况下才采用这种方案:
IP地址数量大于网络中的计算机数量。
网络中存在特殊的计算机,如作为路由器的计算机、服务器等等。
动态地址
动态地址是客户端从DHCP服务器获取的IP地址,在不同时间租用的地址可能不同。
APIPA
APIPAAutomatic Private IP Addressing,自动专用IP寻址),是一个DHCP故障转移机制。
DHCP服务器出故障时, APIPA169.254.0.1 169.254.255.254的私有空间内分配地址,所有设备使用默认的网络演码255.255.0.0。客户机调整它们的地址使用它们在使用ARP的局域网中是唯一的。
APIPA可以为没有DHCP服务器的单网段网络提供自动配置TCP/IP协议的功能。默认情况下,运行Windows 98/Me/2000/XP的计算机首先尝试与网络中的DHCP服务器进行联系,以便从DHCP服务器上获得自己的IP地址等信息,并对TCP/IP协议进行配置。如果无法建立与DHCP服务器的连接,客户端与本地 DHCP服务器通讯失败,无法更新它的租约,则计算机改为使用APIPA自动寻址方式,并自动配置TCP/IP协议。它将使用 APIPA分配的地址,以后每隔5分钟尝试与外界的DHCP服务器联系一次,直到它可以与 DHCP 服务器通讯为止。。当这个DHCP服务器再次能为请求服务时,客户机将自动更新他们的地址。APIPA存在于所有流行的各种版本的windows系统中。当然如故你不想应用这个协议,也可以通过修改注册表禁用它。
不能启用APIPA的场景:
-网路使用路由器。
-网路不是使用NAT Proxy 服务,连接到网际网路。
使用 APIPA 的场景:
1:先前没有IP地址,也不到DHCP服务器;
当您的Windows 电脑(已设定为适用于DHCP) 正在初始化时,会广播3 项或更多的「探索」讯息。如果广播数次探索讯息之后,DHCP 服务器没有回应,Windows 电脑就会自己指定「类别B(APIPA) 的地址。然后,Windows 电脑会向电脑的使用者显示错误讯息(如果电脑过去没有从DHCP 服务器取得IP 地址)。接着,Windows 电脑会每3 分钟传送一次「探索」讯息,以试图建立与DHCP 服务器的通讯。
2:先前具有IP 地址,但不到DHCP服务器;
电脑会查看DHCP 服务器,如果不到DHCP 服务器,就会图连接默认网关。如果默认网关发出应答,Windows 电脑就会保留先前租用的IP 地址。然而,如果电脑没有收到默认网关的回应,或者没有指定的默认网关,就会使用APIPA自己指定IP 地址。使用者会收到错误讯息,并且每3 分钟电脑就会传送探索讯息。一旦DHCP 服务器连线,就会产生讯息,说明已
经与DHCP 服务器重新建立通讯。
3:租约到期且没有到DHCP服务器
Windows 电脑会尝试重新建立IP 地址的租约。如果Windows 电脑没有到DCHP 服务器,就会在产生错误讯息之后,自己指定IP 静态网站和动态网站区别地址。然后电脑会广播四个Discover 讯息,之后每隔5 分钟便会重复整个程序,直到DHCP 服务器连线为止。接着会产生讯息,说明已经与DHCP 服务器重新建立通讯。
从协议看:
主机启动后,就会发送DHCP Discover包查询DHCP。如下图:
很显然,由于没有到DHCP服务器,所以就会得到169.254IP,但并不表示以后都不在搜索DHCP了,默认情况下会每隔5分钟进行一次集中的查询,其余时间也会进程查询,但由于还有别的程序或者协议在运行,所以就显得不那么集中。如下图:
电脑上APIPA设置:
查看APIPA状态
可以使用下列方法来停用APIPA
编辑注册表项
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<Adapter GUID>
Adapter GUID 子机码是电脑LAN 介面卡的「全域唯一识别码」(GUID)
IPAutoconfigurationEnabled DWORD 项目指定1 的值将会启用APIPA,也就是当登录省略此值时的预设状态。
模拟一个客户端无法联系到DHCP服务器的场景
此时客户端获取到了一个169.254.X.XIP地址。如下图:
这里请注意两个地方:
1、我使用的查询命令是ipconfig /all。用这个命令可以把所有的重要参数都查询出来,包括IP地址、掩码、网关、DNSMAC等等。但在上图中只有IP地址、掩码和MAC,并没有网关、DNS。原因是因为APIPA分配的网络信息只包含IP地址和子网掩码。
2、请注意IP地址前的名称是“Autoconfiguration IP Address”,而不是正常情况下的“IP Address” 。从这点上我们也可以区别IP地址的来源。为什么DNS可以独立配置呢?其实也是出于这个的考虑。我们可以为APIPA手工设置一个DNS地址。还是刚才的环境,我们为这个地址169.254.155.85配置一个DNS1.1.1.1 。如下图:
 
通过 ipconfig /all 查询。如下图:
可以看到,我们为这个地址设置的DNS生效了。
我们可以自己定义在这个IP呢?当然可以。在【备用配置】选项卡里,我们还可以手工设置IP地址。如下图:
通过这样的设置,其目的在于当DHCP服务器不可用,系统会将此地址分配给该网卡,而不会使用169.254这样的地址。其实这个功能非常好用。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。