思维导图:
**4.8 虚拟专用网 VPN 和网络地址转换 NAT**
**4.8.1 虚拟专用网 VPN**
****定义**:
- VPN(Virtual Private Network,虚拟专用网)是一种通信方式,让远程用户通过公共网络(例如互联网)安全地访问内部网络资源,同时保持内部网络的私密性和安全性。**
****背景**:
- 由于 IP 地址的紧缺,机构所能申请的 IP 地址数远小于其所拥有的主机数。
- 考虑到互联网的安全性问题,不是所有的主机都需要连接到外部的互联网。
- 使用专用地址或本地地址可以节约全球 IP 地址资源。**
****专用地址**:
- RFC 1918 和 RFC 6890 设定了专用地址范围,这些地址只用于内部通信,不能在互联网上使用。
- 10.0.0.0/8 (10.0.0.0 到 10.255.255.255)
- 172.16.0.0/12 (172.16.0.0 到 172.31.255.255)
- 192.168.0.0/16 (192.168.0.0 到 192.168.255.255)**
****构建 VPN 的方法**:
- 租用电信公司的专用通信线路 --- 昂贵。
- 使用公共互联网作为通信载体 --- 更经济、需要加密。**
****IP隧道技术**:
- 当机构的内部主机需要通过互联网通信时,可以使用 IP 隧道技术。
- 数据报在发送前被加密和封装,然后通过互联网发送到目的地,之后被解密和解封装。**
图4-59解释了如何使用IP隧道技术实现VPN。在图中,数据报首先在路由器 R₁ 中被封装和加密,然后通过互联网发送到路由器 R₂,在那里被解封装和解密,最后传送到目的主机。
**总结**:
VPN 通过 IP 隧道技术允许数据安全地通过公共网络(例如互联网)传输,同时维持内部网络的私密性和完整性。这为组织提供了一种经济且高效的远程通信方法。
我的理解:
VPN(虚拟专用网)的概念可以通过以下几个核心点来理解:
**1. **虚拟的"专用网络"**:
- "虚拟"意味着它并非一个实体的、物理存在的网络,而是通过技术手段在已有的网络基础上模拟出来的一种网络连接。
- "专用"则表明这种网络连接是为特定的用户或组织所设立,不同于公共网络。**
**2. **安全隧道**:
- VPN工作时,会在公开的互联网上创建一个加密的"隧道"。数据会被加密后传输在这个隧道中,即使被第三方截获,也很难解密。
- 这种加密传输确保了数据的隐私和完整性。**
**3. **专用地址与全球地址**:
- 组织内部的计算机可以使用专用IP地址进行通信,而不需要使用全球唯一的IP地址。
- 当需要与外部互联网通信时,VPN技术会将这些专用地址的数据流重定向并进行转换,使其能在公共互联网上正确传输。**
**4. **通信载体**:
- 虽然VPN可以提供专用的通信通道,但它通常依赖于公共的互联网作为其通信载体。
- 这意味着组织不需要为了远程通信而租用昂贵的专用线路。**
**5. **多种应用场景**:
- 组织可以使用VPN技术连接其在不同地点的办公室,形成一个统一的内部网络。
- 个人也可以使用VPN访问受限制的资源或提高上网隐私。**
**6. **端到端的通信**:
- 通过VPN,两个远程的终端可以像在同一个局域网内一样进行通信,无论它们实际上是否在物理上相邻。**
简而言之,VPN是一种在公共网络上模拟出的安全、专用的网络连接方式。通过加密技术,VPN确保了数据的安全传输,并允许远程用户和设备像在同一个网络内一样进行通信。
更加形象的理解:
让我们用一种常见的情境来进行类比:**寄信**。
1. **普通互联网连接**:想象你正在一个公园的长凳上写一封明信片,然后将其放入公共的邮筒。任何经过的人都可以随便看一眼你的明信片,读到你写的内容。这就像常规的互联网连接,没有额外的安全层,任何人都可以"窥视"你的数据。
2. **使用VPN的互联网连接**:现在想象你把你的明信片放进一个结实的信封,并上锁。只有持有钥匙的接收人才能打开它。你再将这个上锁的信封放入公共的邮筒。尽管它仍然经过公共的邮寄系统,但没有钥匙的人是无法看到里面的内容的。这就是VPN在做的事情------它为你的数据加上了一层"加密的信封",确保只有你和你的收件人可以"读取"它。
再进一步,如果你在一个小镇上,你的朋友在另一个小镇,而两个小镇之间的所有道路都是公共的。你们每次通信都要走这些公共的道路。现在,想象有一个隐形的、只属于你和你朋友的秘密隧道连接着两个小镇。这个隧道只有你们两人可以使用,而且完全隐形,其他人甚至不知道它的存在。这个隧道就像VPN,它在公共的互联网上创建了一个私有的、加密的通道,只有你和你想通信的服务器知道并可以使用。
通过这种方式,VPN为你提供了一种安全、私密的方式在互联网上进行通信,就像使用一个秘密隧道或上锁的信封一样。
---
**VPN (虚拟专用网) 笔记**
1. **定义**:VPN 是一个使用公共网络(如互联网)建立私有网络连接的技术。其工作原理为:在两个通信端点之间建立一个加密的"隧道"。
2. **点对点连接**:R₁和R₂间似乎有一个直通的连接,这就是所谓的隧道。
**3. **内联网 (Intranet VPN)**:
- 由场所A和B的内部网络构成。
- 场所A和B属于同一个机构。
- 是使用互联网技术的,基于TCP/IP协议。**
**4. **外联网 (Extranet VPN)**:
- 除了机构内部的网络,还有外部机构(如合作伙伴)参与。
- 使用互联网技术,基于TCP/IP协议。**
**5. **远程接入 VPN (Remote Access VPN)**:
- 设计用于流动员工与公司通信。
- 流动员工通过拨号接入互联网,VPN软件建立加密隧道。
- 使得流动员工感觉像在使用公司的内部网络。**
---
4.8.2 网络地址转换 NAT (Network Address Translation)
**1. **问题引入**:
- 专用网内主机有本地IP地址。
- 想和互联网上的主机通信(不加密),怎么办?**
2. **简单解决方法**:申请全球IP地址,但IPv4地址稀缺。
**3. **主要方法**:使用NAT。
- 提出年份:1994年。
- 安装位置:连接专用网到互联网的路由器。
- NAT路由器:至少有一个全球IP地址。**
**4. **NAT工作原理**:
- 本地地址转为全球IP地址以连接互联网。
- 例:专用网`192.168.0.0`所有主机的地址:`192.168.x.x`。
- NAT路由器全球IP地址:`172.38.1.5`。
- 主机A(`192.168.0.3`)与主机B(`213.18.2.4`)通信时,NAT路由器将源IP从`192.168.0.3`转为`172.38.1.5`。**
**5. **NAT地址转换**:
- 主机B收到数据报时,看到的地址为`172.38.1.5`,而不知道真正的`192.168.0.3`地址。
- NAT路由器使用转换表进行地址转换。**
**6. **NAT限制**:
- 只能由专用网内主机发起通信。
- 互联网主机无法直接请求专用网内服务器。**
**7. **NAPT (网络地址与端口号转换)**:
- 更高效地使用NAT路由器上的全球IP地址。
- 允许多个本地地址的主机共用一个全球IP地址。
- 利用运输层的端口号进行转换。
- 传统的NAT与NAPT:
- 传统的NAT:不使用端口号。
- NAPT:使用端口号。**
**8. **NAPT转换例子**:
- 能够将不同的源IP和端口,转换为相同的全球IP但不同的端口。**
---
我的理解:
理解NAT的核心概念和原因:
**1. **问题背景**:
- 在内部专用网络中,主机有自己的本地IP地址。
- 当这些主机想与互联网上的其他主机通信时,需要一个在全球范围内识别的IP地址。**
2. **IPv4地址短缺**:由于IPv4地址数量有限,直接为每个内部主机分配一个全球IP是不实际的。
3. **NAT的引入**:为了解决这个问题,NAT技术被提出。NAT允许多个内部主机共享一个或几个全球IP地址进行外部通信。
**4. **如何工作**:
- 当内部主机与外部世界通信时,NAT路由器会将内部主机的本地IP地址替换为全球IP地址,并保持记录以便在返回的通信中将全球IP地址重新映射回原始的本地IP地址。**
5. **NAPT**:更高级的NAT形式,不仅替换IP地址,还替换端口号。这使得来自不同的内部主机的多个连接都可以共享相同的全球IP地址,只是使用不同的端口号。
**6. **使用限制**:
- 由于地址转换,从外部网络直接初始化与内部主机的连接是困难的,因为外部网络不知道内部的真实IP地址。**
**简单地说**:NAT就像是一个公寓大楼的门卫。每个公寓单元(内部主机)都有自己的单元号(本地IP地址),但整个大楼只有一个街道地址(全球IP地址)。当公寓里的某人想发信给外部世界时,他们将信放在大楼的信箱里,并告诉门卫他们的单元号。门卫会记住哪个单元发出了哪个信,并将所有信的地址更改为大楼的街道地址。当回信到达时,门卫会根据他记下的信息,确定信应该送到哪个单元。
**NAPT (Network Address Port Translation)**
**1. **基本操作**:
- NAPT可以更改IP数据报中的源IP地址和传输层的端口号。
- 如果使用UDP,其操作原理与TCP相同,也会转换UDP的端口号。**
**2. **端口选择**:
- 主机在专用网络内选择的端口号只在该主机内有意义。
- 例如,192.168.0.3和192.168.0.4都可以选择TCP端口号30000。这种选择是随机的,端口号在本地主机内才有意义。**
**3. **端口和IP地址的转换**:
- NAPT将专用网络内不同的源IP地址都转换为相同的全球IP地址。
- 即使源主机使用相同的端口号,NAPT也会将其转换为不同的新端口号。**
**4. **应答和目的主机的确定**:
- 当NAPT路由器从互联网接收应答时,它会查看IP数据报的数据部分中的传输层端口号。
- 根据不同的目的端口号,NAPT路由器会在其转换表中找到正确的目的主机。**
**5. **与普通路由器的区别**:
- **普通路由器**:在转发IP数据报时不会改变其源/目的IP地址,且只在网络层工作。
- **NAPT路由器**:在转发IP数据报时会更改其IP地址,并查看和转换传输层的端口号。因此,其工作范围超出了单纯的网络层。**
**6. **争议**:
- 由于NAPT的工作原理跨越了不同的网络层次,它曾受到批评,认为其操作不遵循严格的层次关系。
- 尽管如此,NAT和NAPT已经成为互联网的重要组成部分。**
**7. **参考资料**:
- 建议标准:RFC3022
- IETF关于NAT工作组的网站:[W-NAT]**
---
总结:
**虚拟专用网 (VPN)**
****重点**:
- **定义**:VPN 允许在公共网络(如互联网)上建立私有通信通道。
- **加密**:使用强加密技术确保数据在传输中的安全性。
- **隧道协议**:常用的有 PPTP、L2TP、IPsec 和 SSL/TLS。
- **应用场景**:允许远程工作、安全连接到企业内部网络、绕过地域限制等。**
****难点**:
- **配置和兼容性**:不同的 VPN 协议和解决方案可能在配置上有所不同,可能存在兼容性问题。
- **性能开销**:由于加密/解密的需要,可能会增加延迟或减少吞吐量。**
****易错点**:
- **不完全的安全性**:虽然 VPN 提供加密,但仍然可能受到中间人攻击、尾随攻击等。
- **协议选择**:错误地选择或配置 VPN 协议可能导致安全隐患。
- **隐私误解**:虽然 VPN 提供匿名性,但仍需要信任 VPN 服务提供者不记录你的活动。**
---
**网络地址转换 (NAT)**
****重点**:
- **定义**:NAT 允许私有 IP 地址在公共 IP 地址空间中重用,通常用于 IPv4 地址耗尽的问题。
- **工作原理**:转换一个 IP 地址到另一个 IP 地址,通常是从私有地址转到公有地址。
- **类型**:基本 NAT、NAPT(也称为 PAT)。**
****难点**:
- **端到端通信**:NAT 扰乱了原始的 IP 地址,可能会影响某些应用的端到端通信。
- **配置**:必须正确配置 NAT 设备以确保正确的转换和通信。**
****易错点**:
- **NAT 穿透**:某些协议和应用(如 VoIP、P2P 通信)在 NAT 背后可能会遇到问题,需要特定的解决方案如 STUN、TURN 来帮助 NAT 穿透。
- **地址池管理**:在高负载的情况下,公共 IP 地址和端口可能会被用完,导致新的连接失败。
- **误解 NAT 与安全性**:虽然 NAT 提供了某种隔离,但它本身不等同于防火墙或安全解决方案。**
---