1、专用网络或本地互联网
一方面现在随着个人电脑的增大,IP地址十分紧缺,所以如果为每一台电脑都分配个一个全球IP地址(唯一的)不太现实;另外一方面,很多机构(比如大公司)往往只需要进行内部通信,按理说IP地址只要在内部是唯一的就可以了(不同机构可以重复)。那么从原则上讲,对于仅在机构内部使用的计算机就可以由机构自行分配IP地址,这种仅在本机构内部有效的IP地址,成为本地IP地址,而不需要向因特网的管理机构申请全球唯一的IP地址(这种成为全球地址),这样这样大大节约宝贵的全球IP地址资源。
如下图所示,机构A和机构B都可以使用网段10.20.0.0 ~ 10.20.255.255 的IP地址,虽然这两个机构使用的IP地址重复,但是由于只在内部使用,互不干扰。
如果本地机构随意分配IP地址,那么就出现了一个问题:
假如本地机构内部的某个主机需要与因特网连接,那么这种仅内部使用的IP地址就有可能与与因特网上的某个IP地址重合,这样就会出现地址的二义性问题。
为了解决这个问题,RFC1918就指明了一些专用地址(private address)。这些地址只能用于某个机构内部的通信,而不能用英语因特网上的主机通信。这些用于机构内部通信的IP地址可以分为三个网段:
(1)10.0.0.0 到 10.255.255.255 (或记为10.0.0.0/8,它又称为24位块)
(2)172.16.0.0 到 172.31.255.255 (或记为172.16.0.0/12,它又称为12位块)
(3)192.168.0.0 到 192.168.255.255 (或记为192.168.0.0/16,它又称为16位块)
采用这样专用IP地址的互联网络称为专用互联网或本地互联网,简称专用网。显然,全世界很多专用互联网络具有相同的IP地址,但这并不会引起麻烦,因为这些专用地址仅在本机构内部使用。因此,专用IP地址又叫可重用地址。
2、虚拟专用网VPN
想象一下两个基本场景:
场景一:某个机构存在多个分支,这些分支位于不同地区地方,不同分支该如何通信?
场景二:加入某个员工出差了或者居家办公,该如何访问公司的内部网络?
这就需要用到VPN技术!
根据上面的两种不同的场景,从应用的角度看,VPN可以分为远程访问VPN和网关-网关VPN两类:
(1)远程访问VPN
(2)网关-网关VPN
基本过程如下:
假如合肥地区计算机X(192.168.1.11)需要向上海地区计算机Y(192.168.2.22)发送数据
(1)主机X向主机Y发送数据的源地址为192.168.1.11,目的地址为192.168.2.22。
(2)数据先作为内部数据发送到VPN服务器A,然后服务器A将数据加密,然后重新加上数据报的首部,封装成在因特网上发送的外部数据报,源地址为服务器A的全球地址202.38.79.51,目的地址为服务器B的全球地址212.38.64.55。
(3)服务器B收到数据报之后,将数据进行解密,恢复原来的内部数据报(目的地址为192.168.2.22),然后交付给主机Y。
3、网络地址转换NAT技术
现在考虑另外一种情况,就是专用网内部的一些主机已经分配到了本地IP地址,但是又想和因特网的主机通信,那么应该如何实现呢?
这里就需要用到网络地址转换NAT技术。这种方法需要在专用网连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的全球IP地址。这样所有使用本地地址的主机外和外界通信时,都要有NAT路由器将其本地地址转化为全球IP地址,然后和因特网通信。
通信的基本原理如瞎下图所示:
简单来说就是,某个使用内部IP地址为10.20.1.5的计算机想要与外部因特网通信,需要先将数据发送到NAT路由器,由于NAT路由器具有全球的IP地址,然后再以NAT路由器的全球IP作为源地址,然后将数据发送到因特网的某个计算机。接收数据也是一样,因特网的计算机先将NAT路由器的全球IP地址作为目的地址,将数据发送给NAT路由器,NAT路由器受到数据之后,然后再将数据发送给机构内部的计算机。