组织的静态方面含义是,什么是静态组织( 二 )


如果一个ISP有一万个拨号用户,如果使用完全静态的分配方式它就需要有一万个IP号码 。但是如果这个ISP只有500条拨入电话线,它就只需要500个IP号码,因为只有登录到Internet的计算机才会需要IP地址 。所以,ISP只需要把IP地址分配给已经拨号登录的用户,而且这个地址只在它们登录期间有效 。计算机断开连接后,ISP就把分配出去的IP地址收回并分配给下一个拨号上网的用户 。进入DHCP的世界
为了能够动态地分配IP号码,1993年Internet Engineering Task Force提出了动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)的想法 。这个协议最早出现于RFC(RFC,Request for comment)1531和1541(ftp://ftp.isi.edu/in-notes/rfc1541.txt),协议最新的定义可以参见RFC 2131(ftp://ftp.isi.edu/in-notes/rfc2131.txt) 。DHCP的设计目的就是为了提供比以前的协议(如BOOTP, Bootstrap Protocol)提供更大的分配灵活性 。DHCP实际上是基于BOOTP的,但是它提供了更多的特性,比如限制IP号码的租用时间可以让DHCP服务器收回并重用这些号码 。为拨号上网账号提供IP地址可能是DHCP最常见的用途,但它的用途并不仅限于此 。例如可以在局域网上使用DHCP以共享Internet连接 。微软Windows98第二版提供了称为Internet连接共享(ICS)的功能,可以实现DHCP 。安装了ICS之后,它在局域网上就可以作为一个DHCP服务器,为网络上的计算机分配范围在192.168.x.x之内的IP号码,这个范围是专门保留用作内部网络使用的 。提供ICS服务的计算机先拨号连接到ISP,从ISP得到一个IP地址,然后让局域网上的其它计算机共享这个地址 。它把其它计算机的请求发送到Internet上,并利用内部的IP地址来跟踪每个局域网用户的请求,当Internet返回应答的时候,它把信息转发到相应的计算机上 。
DHCP的工作原理 DHCP是一个客户机/服务器协议(就像TCP/IP,HTTP,FTP以及其他Internet协议一样) 。DHCP客户机向DHCP服务器发出请求,服务器按照预先设定好的方式进行应答 。如果计算机的IP地址设为0.0.0.0它就自动变成一个DHCP客户机,在Windows操作系统上,TCP/IP设置还可以改为从服务器获得IP地址(设置过程参见图1到图5) 。客户机连接到网络之后,就会发生四阶段的DHCP通信 。(下面我们将只讨论计算机拨号连接到ISP的情况,其他DHCP分配的操作的概念都是一样的 。)
第一步是初始化 。因为客户机还没有IP地址同时又需要进行Internet操作(比如浏览网页),它首先要找到一个能给它IP地址的DHCP服务器 。在拨号连接的情况下,客户机连接到一个调制解调器,然后通过电话线广播一个DHCPDISCOVER信息以定位DHCP服务器 。如果ISP有一个以上的DHCP服务器,所有的服务器都会发回一个DHCPOFFER的响应,响应中包括一个IP地址和地址的租用时间 。地址的租用时间是客户机可以使用这个地址的时间,由系统管理员设定 。
客户端返回一个DHCPREQUEST广播信息,说明它接受了哪一个服务器的DHCPOFFER 。因为所有的服务器都在等待回答,所以需要使用广播方式 。被接受的服务器通过返回一个DHCPACK消息来结束初始化步骤,确认IP地址和租用时间 。如果在这段时间内它提供的IP地址不可用了(由于超时),服务器就返回一个DHCPNAK(不确认)消息,强迫客户端重新进行DHCPDISCOVER广播 。实际上,客户端可能自己就重新发送DHCPDISCOVER信息了,在收到DHCPACK包之后,它就向网络发出一个地址解析协议(ARP)广播以检测这个地址是否已经被使用 。(同样,由于超时原因)如果地址已经被使用,客户端就会向提供地址的服务器发出DHCPDECLINE消息,并立即发出一个新的DHCPDISCOVER消息 。
然后就是更新和重新绑定阶段 。客户端只能租用IP地址一段时间,租用时间可以设定得很短,也可以是无限长,或这两者之间的任意长度 。将它称为“租用”而不是简单地说“失效时间”是因为在连接过程中租用可以被更新 。