网络层-第九节:虚拟专用网与网络地址转换
Posted 快乐江湖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络层-第九节:虚拟专用网与网络地址转换相关的知识,希望对你有一定的参考价值。
- 获取pdf:密码7281
- 专栏目录首页:【专栏必读】王道考研408计算机网络+湖科大教书匠计算机网络+网络编程万字笔记、题目题型总结、注意事项、目录导航和思维导图
- 王道考研408计算机组成原理万字笔记
- 王道考研408数据结构+计算机算法设计与分析万字笔记
- 王道考研408操作系统+Linux系统编程万字笔记
文章目录
本节对应视频如下
一:虚拟专用网
(1)虚拟专用网是什么
虚拟专用网:如下图,假设左侧是某机构部门A的局域网(位于北京),右侧是某机构部门B的局域网(位于上海),那么如何让这两个局域网进行通信呢
一种方法就是利用电信公司的通信线路,但是租金太高。另一种方法是利用公用的因特网,作为本机构各专用网之间的通信载体,这样的专用网又称为虚拟专用网
(2)虚拟专用网如何分配IP地址
虚拟专用网如何分配IP地址:由于IPv4地址的紧缺,一个机构能够申请到的IPv4地址数量往往远小于本机构所拥有的主机数量。因此,虚拟专用网中的各主机所分配的地址应该是本机构可自由分配的专用地址,而不是需要申请的、在因特网上使用的公有地址。私有地址只能用作本地地址而不能用作全球地址,在因特网中的所有路由器对目的地址是私有地址的IP数据报一律不进行转发
我们可以在因特网数字分配机构IANA官方网站查看IPv4地址空间中特殊地址的分配方案,如下表,其中加粗部分地址块中的地址是无需申请的、可自由分配的专用地址
Address Block | Name | RFC | Allocation Date | Termination Date | Source | Destination | Forwardable | Globally Reachable | Reserved-by-Protocol |
---|---|---|---|---|---|---|---|---|---|
0.0.0.0/8 | “This network” | [RFC791], Section 3.2 | 1981-09 | N/A | True | False | False | False | True |
0.0.0.0/32 | “This host on this network” | [RFC1122], Section 3.2.1.3 | 1981-09 | N/A | True | False | False | False | True |
10.0.0.0/8 | Private-Use | [RFC1918] | 1996-02 | N/A | True | True | True | False | False |
100.64.0.0/10 | Shared Address Space | [RFC6598] | 2012-04 | N/A | True | True | True | False | False |
127.0.0.0/8 | Loopback | [RFC1122], Section 3.2.1.3 | 1981-09 | N/A | False [1] | False [1] | False [1] | False [1] | True |
169.254.0.0/16 | Link Local | [RFC3927] | 2005-05 | N/A | True | True | False | False | True |
172.16.0.0/12 | Private-Use | [RFC1918] | 1996-02 | N/A | True | True | True | False | False |
192.0.0.0/24 [2] | IETF Protocol Assignments | [RFC6890], Section 2.1 | 2010-01 | N/A | False | False | False | False | False |
192.0.0.0/29 | IPv4 Service Continuity Prefix | [RFC7335] | 2011-06 | N/A | True | True | True | False | False |
192.0.0.8/32 | IPv4 dummy address | [RFC7600] | 2015-03 | N/A | True | False | False | False | False |
192.0.0.9/32 | Port Control Protocol Anycast | [RFC7723] | 2015-10 | N/A | True | True | True | True | False |
192.0.0.10/32 | Traversal Using Relays around NAT Anycast | [RFC8155] | 2017-02 | N/A | True | True | True | True | False |
192.0.0.170/32, 192.0.0.171/32 | NAT64/DNS64 Discovery | [RFC8880][RFC7050], Section 2.2 | 2013-02 | N/A | False | False | False | False | True |
192.0.2.0/24 | Documentation (TEST-NET-1) | [RFC5737] | 2010-01 | N/A | False | False | False | False | False |
192.31.196.0/24 | AS112-v4 | [RFC7535] | 2014-12 | N/A | True | True | True | True | False |
192.52.193.0/24 | AMT | [RFC7450] | 2014-12 | N/A | True | True | True | True | False |
192.88.99.0/24 | Deprecated (6to4 Relay Anycast) | [RFC7526] | 2001-06 | 2015-03 | |||||
192.168.0.0/16 | Private-Use | [RFC1918] | 1996-02 | N/A | True | True | True | False | False |
192.175.48.0/24 | Direct Delegation AS112 Service | [RFC7534] | 1996-01 | N/A | True | True | True | True | False |
198.18.0.0/15 | Benchmarking | [RFC2544] | 1999-03 | N/A | True | True | True | False | False |
198.51.100.0/24 | Documentation (TEST-NET-2) | [RFC5737] | 2010-01 | N/A | False | False | False | False | False |
203.0.113.0/24 | Documentation (TEST-NET-3) | [RFC5737] | 2010-01 | N/A | False | False | False | False | False |
240.0.0.0/4 | Reserved | [RFC1112], Section 4 | 1989-08 | N/A | False | False | False | False | True |
(3)例子
如下图,假设我们给部门A分配私有地址网络号为10.1.0.0
,给部门B分配私有地址网络号为10.2.0.0
,并给各专用网主机分配相应地址。很显然,部分A和B至少需要一个路由器具有合法的全球IP地址,这样它们各自的专用网才能利用公用的因特网进行通信
假设部门A中的一台主机要给部门B中的另一台主机发送数据
- 首先它会将待发送数据封装为内部IP数据报,发送给路由器R1,其首部中源地址字段的值为部门A中该主机的IP地址,目的地址字段为部门B中另一台主机的IP地址
- R1收到该数据报后,发现其目的网络必须通过因特网才能到达,就将该内部IP数据报加密,这样就确保了内部IP数据报的安全,然后重新添加上数据报的首部,封装成为在因特网上才能发送的外部数据报,其首部中源地址字段为路由器R1的全球地址,目的地址字段为路由器R2的全球地址
- 路由器R2收到该外部IP数据报后,去掉其首部,将其数据部分进行解密,恢复出原来的内部IP数据报,这样就可以从其首部提取出源地址和目的地址。根据目的地址,将该内部IP数据报发送给相应的主机
(4)虚拟专用网分类
内联网:上例中所展示的同一机构内不同部门的内部网络所构成的虚拟专用网又称为内联网
外联网:有时一个机构的需要有某些外部机构(通常就是合作伙伴)参加进来。这样的就称为外联网
远程接入:在外地工作的员工需要访问公司内部的专用网络时,只要在任何地点接入到因特网,运行驻留在员工PC中的软件,在员工的PC和公司的主机之间建立隧道,即可访问专用网络中的资源。这种称为远程接入
二:网络地址转换NAT
(1)概述
网络地址转换NAT:虽然因特网采用了无分类编址方式来减缓IPv4地址空间耗尽的速度,但由于因特网用户数目的激增,特别是大量小型办公室网络和家庭网络接入因特网的需求不断增加,IPv4地址空间即将面临耗尽的危险仍然没有被解除。1994年提出了一种网络地址转换NAT的方法再次缓解了IPv4地址空间即将耗尽的问题。NAT能使大量使用内部专用地址的专用网络用户共享少量外部全球地址来访问因特网上的主机和资源
如下图,图中的专用网络使用私有网络号192.168.0.0.
,要想这种使用私有地址的主机与因特网上使用全球IP地址的主机进行通信,需要在专用网络连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址,这样所有使用私有地址的主机和外界通信时,都要在NAT路由器上将其私有地址转化为全球IP地址
(2)例子
如下图专用网中的一台主机192.168.0.2
要给因特网上的一台主机218.75.230.30
发送数据
-
该主机将数据报发送给NAT路由器,数据报首部中源地址字段为该主机的私有地址,目的地址字段为因特网上另一台主机的全球地址
-
NAT路由器从自己的全球IP地址池中为该主机分配一个临时的全球IP地址
172.38.1.5
,并将IP数据报的源地址修改为改地址,然后将私有地址与全球地址的对应关系记录在NAT转换表中,之后就可以转发该IP数据报了
-
因特网上的这台主机给源主机发回数据报,数据报的源地址和目的地址都是全球IP地址
-
NAT路由器收到该IP数据报后,在NAT转换表中进行查找,发现该数据报的目的地址所对应的私有地址为
192.168.0.2
,于是就将该数据报的目的地址修改为它,并将其发送给相应主机
(3)NAPT
网络地址与端口号转化NAPT:由于绝大多数的网络应用都是使用运输层协议TCP或UDP来传送数据,因此可以利用运输层的端口号和IP地址一起进行转换。这样,用一个全球IP地址就可以使多个拥有本地地址的主机同时和因特网上的主机进行通信。这种将端口号和IP地址一起进行转换的技术叫作网络地址与端口号转换NAPT
以上是关于网络层-第九节:虚拟专用网与网络地址转换的主要内容,如果未能解决你的问题,请参考以下文章
计算机网络—— 网络层(789):IPv4数据报的首部格式网际控制报文协议ICMP虚拟专用网VPN与网络地址转换NAT
计算机网络—— 网络层(789):IPv4数据报的首部格式网际控制报文协议ICMP虚拟专用网VPN与网络地址转换NAT
计算机网络—— 网络层(789):IPv4数据报的首部格式网际控制报文协议ICMP虚拟专用网VPN与网络地址转换NAT