什么是专用IP地址
IP地址短缺问题
由于IP地址的紧缺,一个机构能够申请到的IP地址数往往远小于本机构所拥有的主机数。考虑到互联网并不安全,一个机构内也并不需要把所有的主机接入到外部的互联网。实际上,在许多情况下,很多主机主要还是和本机构内的其他主机进行通信(例如,在大型商场或宾馆中,有很多用于营业和管理的计算机。显然这些计算机并不都需要和互联网相连)。假定在一个机构内部的计算机通信也是采用TCP/IP协议,那么从原则上讲,对于这些仅在机构内部的计算机就可以由本机构自行分配其IP地址。这就是说,让这些计算机使用仅在本机构有效的IP地址(这种地址称为本地地址),而不需要向互联网的管理机构申请全球唯一的IP地址(这种地址称为全球地址)。这样就可以大大节约宝贵的全球IP地址资源。
但是,如果任意选择一些IP地址作为本机构内部使用的本地地址,那么在某种情况下可能会引起一些麻烦。例如,有时机构内部的某台主机需要和互联网连接,那么这种仅在内部使用的本地地址就有可能和互联网中某个IP地址重合,这样就会出现地址的二义性问题。
专用ip地址
为了解决IP地址短缺问题,RFC1918指明了一些专用地址(private address)。这些地址只能用于一个机构的内部通信,而不能用于和互联网上的主机通信。换言之,专用地址只能用作本地地址而不能用作全球地址。在互联网中的所有路由器,对目的地址是专用地址的数据报一律不进行转发。
- 10.0.0.0到10.255.255.255 (或标记为10.0.0.0/8,它又称为24位块)
- 172.16.0.0到172.31.255.255(或记为172.16.0.0/12,它又称为20位块)
- 192.168.0.0到192.168.255.255(或记为192.168.0.0/16,它又称为16位块)
以上的三个地址块分别相当于一个A类网络、16个连续的B类网络和256个连续的c类网络。A类地址本来早已用完了,而上面的地址10.0.0.0本来是分配给ARPANET的。由于ARPANET已经关闭停止运行了,因此这个地址就用作专用地址。
采用这的IP地址的互联网称为专用互联网或本地互联网,或更简单些,就叫做专用网显然,全世界可能有很多的专用互联网具有相同的专用IP地址,这这并不会引起麻烦,因为这些专用地址仅在本机构内部使用。专用IP地址也叫做可重用地址。
网络地址转化NAT
在内部网络的一些主机已经分配到来本地ip地址,但现在又想和互联网上的主机通信那么应该采取什么措施呢?
最简单的办法就是设法再申请一些全球IP地址。但在这种情况下是不容易做到的,因为全球IPV4的地址已所剩不多了。目前使用得最多的方法是采用网络地址转换。
网络地址转换(Network Address Translation)方法是在1994年提出的。这种方法需要在局域网连接到互联网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址。这样,所有使用本地地址的主机在和外界通信的时候,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和互联网连接。
局域网192.168.0.0内所有主机的IP地址都是本地IP地址192.168.x.x。NAT路由器至少要有一个全球IP地址,才能和互联网相连。NAT路由器收到从内部网的主机A发往互联网主机B的ip数据报:源IP地址是192.168.0.3,而目的IP地址是213.18.2.4。NAT路由器把IP数据报的源IP 地址192.168.0.3,转换为新的源IP地址(即NAT路由器的全球IP地址)172.38.1.5,然后转发出去。因此主机B收到这个IP数据报的时候,以为A是IP地址是172.38.1.5。B并不知道A的专用地址192.168.0.3。实际上,即使知道了,也不能使用,因为互联网上的路由器都不转发目的地址是专用网络的IP数据报。当NAT路由器收到互联网上的主机B发来的IP数据报时,还要进行一次IP地址的转换。通过NAT地址转换表,就可把IP数据报上的旧的目的IP地址172.38.1.5,转换成新的目的IP地址192.168.0.3(主机A真正的本地IP地址)。