4.9 虚拟专用网VPN与网络地址转换NAT.pdf

虚拟专用网VPN:

首先先思考一个问题:
如何让两个专用网络进行通信?
image.png
一种方法是:image.png
另一种该方法是:image.png
首先明确一个概念:

  • 利用公用的因特网作为本机构各专用网之间的通信载体,这样的专用网称为虚拟专用网(VPN)

image.png
image.png
需要注意的是:私有地址只能用于一个机构的内部通信,而不能用于和因特网上的主机通信。换句话说,私有地址只能用作本地地址而不能用作全球地址。
(⬆⬆⬆ 192.168的原理 ⬆⬆⬆)
显然,部门A和B各自至少需要一个路由器具有合法的全球IP地址。这样,它们各自的专用网才能利用公用的因特网进行通信。

  • 在IPv4地址空间中就规定了这样子的特殊地址分配方案

image.png

这些地址就可以在本地自由分配,不会在因特网中造成冲突。私有地址只能用作本地地址不能用作全球地址
本地地址与全球地址 本地地址:仅在机构内部使用的 IP 地址,可以由本机构自行分配,而不需要向互联网的管理机构申请。

全球地址:全球唯一的 IP 地址,必须向互联网的管理机构申请。

在因特网中的所有路由器,对目的地址是私有地址的IP数据报一律不进行转发。

因此可以对两个专用网络采用本地地址进行分配:
image.png

为了使两个部门的网络能够跟因特网联通,因此还需要两个路由器具有合法的全球IP地址,这样子才能实现通过因特网通信。

此时,两个专用网络通信的过程为
R1收到该数据报后,发现其目的网络必须通过因特网才能到达,就将该内部IP数据报进行加密,这样就确保了内部IP数据报的安全,然后重新添加上数据报的首部,封装成为在因特网上发送的外部数据报。
image.png
跟显然,两个专用网内的主机间发送的数据报是通过了公用的因特网,但在效果上就好像是在本机构的专用网上传送一样。数据报在因特网中可能要经过多个网络和路由器,但从逻辑上看R1和R2之间好像是一条直通的点对点链路,因此也被称为IP隧道技术
VPN的类型:
image.png

对于很多同学在家访问校园内网时,实际上就是远程VPN技术。

image.png
使用私有地址的主机,如何才能与因特网上使用全球IP地址的主机进行通信呢?
image.png
这需要在专用网络连接到因特网的路由器上,安装NAT软件。
image.png
装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址,这样,所有使用私有地址的主机在和外界通信时都要在NAT路由器上将其私有地址转换成全球IP地址。

通过NAT机制,将本地地址转换成NAT路由器的全球地址,并且将数据报首部的目的地址也改成NAT路由器的全球地址,进行发送。

并且该次转换存在NAT转换表中。

举例说明:

NAT路由器从自己的全球IP地址池中,为该主机分配一个临时的全球IP地址172.38.1.5,并将IP数据报的源地址修改为该地址。

请注意,此时该IP数据报中的源地址和目的地址都是全球IP地址,
image.png
此时若因特网上的这台主机给源主机发回数据报
发回的IP数据报中的源地址和目的地址也都是全球IP地址,
image.png

NAT路由器接收到数据报告,根据首部的目的在地址,查找NAT转换表后进行转换,转换成目的主机本地地址后进行传输。

此时会出现一个问题:

  • 当专用网中的这两台使用私有地址的主机都要给因特网使用全球地址的另一台主机发送数据报时,在NAT路由器的NAT转换表中就会产生两条记录,分别记录两个私有地址与全球地址的对应关系。

由于NAT地址有限,因此存在一个问题:
image.png
解决方法:
实际上现在很多家用路由器都是这种NAPT路由器。
image.png
此时就有了一个问题:

  • 内网主机与外网主机的通信,是否能由外网主机首先发起?

答案是不行。
image.png
可以看到其中有两个路由器使用了相同的IP地址,这很可能是内网出外网的路由器使用了NAT,并且内网中还有一个使用私有IP地址的路由器。(反正端口不一样)

这里4是外网路由5是使用了私有IP路由6是终端IP
image.png