5.4.1 虚拟专用网VPN

5.4.1 虚拟专用网VPN

我们已经学习了因特网的路由协议(5.3.1 因特网的路由协议(一)、5.3.2 因特网的路由协议(二)基于距离向量算法的RIP协议、5.3.3 因特网的路由协议(三)OSPF协议、5.3.4 因特网的路由协议(四)BGP协议)知道了路由器如何根据不同的路由协议来得到自己的路由表,这里我们要学习的是专用网络互连技术。

所谓的专用网一般指企事业单位内部的网络,随着经济全球化的发展越来越多的企业需要在全国乃至世界范围内建立多家分支机构,传统的专用网络中各个子公司或办事机构之间信息传送一般用租用专线的方式实现,这种连接方式最大的缺陷在于费用比较昂贵、不够灵活,随着因特网技术的发展现代企业越来越多的企业青睐于构建虚拟专用网(Virtual Private Network)简称VPN。

一、虚拟专用网

虚拟专用网摒弃了专线的连接方式,而是利用公共网络构建的私人专用网络。公共网络可以是因特网或者是各种类型的广域网比如帧中继网、ATM网络等,为了深入理解我们来举个例子。如图

VPN

假设一个企业有两个部门,部门A和B,分布在不同的地点,可能处于不同的城市也可能处在不同的国家,为了实现企业内部的专用网有效在两个部门之间进行通信和信息共享,我们可以直接将两个部门接入到公共网络中,利用公共网络平台来构建虚拟专用网。利用VPN技术使得部门A和B之间的通信对于互联网而言是不可见的,从而保证了专用要求的隐私性。

二、VPN的编址

在学习VPN工作原理之前我们先来学习一下VPN内的编址

  • VPN所提供的编址选择与专用网络一样,可以选择本地编址方案,也就是说它既可以分配全球的网络地址也可以使用私有地址(5.2.12 IP分组的转发(三))。前面我们已经说过本地地址无需向因特网管理机构申请,局限在内部网络中使用,由内部网络自行分配。而全球地址需要向因特网管理机构申请,在IPv4地址紧缺的情况下,VPN大多是采用本地编址的方法。

    • 本地地址——仅在机构内部使用的IP地址,可以由本机构自行分配,而不需要向因特网的管理机构申请。本地地址又被成为私有地址只能用于内部通信,也就是只能用于一个局域网内部主机之间的通信,因为每家单位都可以使用这些地址,

      作为因特网专门负责地址分配的机构IANA明确规定了三块地址块空间只能用于专用互联网内部通信的IP地址空间也就是私有地址。(RFC1918)

      前缀最低地址最高地址
      10/810.0.0.010.255.255.255
      172.16/12172.16.0.0172.31.255.255
      192.168/16192.168.0.0192.168.255.255
    • 全球地址——全球唯一的IP地址,必须向因特网的管理机构申请。

  • 我们前面图片为例,

    例子

    在两个部门网络组建的VPN中我们假设使用10.0.0.0进行编址,部门A中的一台主机X分配的地址是10.1.0.1,部门B主机Y分配的地址是10.2.0.3,因为这些地址都不属于全球地址,所以因特网的路由器在转发数据报的时候如果发现报文携带的目的地址是这些地址的话它会认为地址错误直接丢弃,不做其他处理,那么如何利用公共网络平台来构建专用网呢?

三、VPN工作原理

我们通过一个实例来介绍一下VPN的工作原理。如图

工作原理

部门A通过R1路由器接入到因特网,部门B通过R2路由器接入到因特网,假设部门A网络中的一台主机X向部门B网络中的一台主机Y发送数据报,X产生的数据报必将流经因特网才能够到达B网络,这里会引发两个问题

  1. X产生的数据报的首部中源IP地址10.1.0.1和目的IP地址10.2.0.3都属于网络内部地址,数据报无法直接通过因特网传输。
  2. 专用网络注重通信的隐私性,希望专用网内任意用户之间的通信细节对于公网是不可见的,如何在开放的互联网平台上保护用户的隐私,确保通信的私密性,这也是需要解决的问题。

VPN是如何解决上述两个问题呢?

  • 这里VPN的实现主要使用了两种基本技术:隧道传输加密技术
  • 为了实现VPN两个网点之间的数据传输,需要在两个网点的路由器之间建立一个传输的隧道,当然隧道是一个比较形象的说法,它不代表路由器之间传输的专线,隧道传输仅仅是完成一个IP-in-IP协议再封装的过程,即**VPN定义了两个网络的路由器之间通过Internet的一个隧道,并使用IP-in-IP封装通过隧道转发数据报。
  • 此外VPN将源端产生的数据报加密以后封装在外层数据报中来传输,即为了保证保密性,VPN把外发的数据报加密后,封装在另一个数据包中传输。
  • 隧道接受路由器将数据报解密,还原出内层数据报,然后转发该数据报。

下面我们结合上面的例子来说明一下VPN采用隧道技术的传输过程。如图

传输过程

主机X产生IP数据报,首部中的源地址和目的地址分别是10.1.0.1和10.2.0.3,数据报经过部门网络A的传输到达路由器R1,R1路由器将该IP数据报作为数据部分完整的封装到一个新的IP数据报的数据部分,新的IP数据报的首部中源IP地址就是路由器R1全球的IP地址,125.1.2.3目的地址填写的是R2的全球的IP地址194.4.5.6,这个经过再次封装之后的IP数据报就能够经过因特网顺利的传送到R2路由器,数据报到达R2以后,由路由器R2提取出内部的数据报,并根据内部数据报首部中的目的地址10.2.0.3,在部门B网络中完成最后的交付的任务。从整个的传输过程可以看出,VPN利用隧道的再封装过程来解决本地编址的专用网通过公共网络来进行通信的问题。

当然除了解决内部地址问题,隧道技术也有利于保护用户的隐私性。公网的路由器在对数据报进行解析、转发、处理的过程中它只查看外层数据报的首部信息,观测路由器R1和R2之间的通信细节,由于公网的路由器将内层的IP数据报视为数据部分,所以说对于专用网内所有主机之间的通信过程对外网的路由器是透明的,此外为了防止因特网上恶意用户截获篡改专用网内部的数据,加强专用网数据传输的安全性,由X产生的IP数据报在R1路由器上封装前还进行了加密处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/4757.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ModaHub魔搭社区:向量数据库Milvus性能调优教程(二)

目录 索引 其他 存储优化 常见问题 索引 向量索引的基本概念请参考 向量索引概述。 选择合适的索引需要在存储空间、查询性能、查询召回率等多个指标中权衡。 FLAT 索引 FLAT 是对向量的暴力搜索(brute-force search),速度最慢&#…

CMake使用gRPC(Protobuf) 的c++ demo

gRPC的命令参数里, 1. 如果要用pacakge,需要--proto_path的参数, 例如helloworld.proto的绝对路径是 /home/user/grpc_demo_ws/grpc_demo/hello_world/proto/helloworld.proto 在helloworld.proto里面的pacakge是 package grpc_demo.hello_w…

模仿QQ之右键菜单

参考:QT多级菜单 - 知乎 (zhihu.com) 运行效果图: 关键代码: void personMenu::contextMenuEvent(QContextMenuEvent *event) {//我完全可以写出一个代码生成器来把这些代码生成出来。parentnew QMenu(this);parent->addAction(QIcon(…

【玩转循环】探索Python中的无限可能性

前言 循环可能是每个编程语言中使用比较多的语法了,如果能合理利用好循环,就会出现意想不到的结果,大大地减少代码量,让机器做那些简单枯燥的循环过程,今天我将为大家分享 python 中的循环语法使用。🚗&am…

【NOSQL】redis哨兵模式、集群搭建

目录 一、redis高可用一、Redis主从复制1.1主从复制的作用1.2主从复制流程 二、搭建Rdeis主从复制2.1安装redis2.1.1环境准备2.1.2安装redis2.1.3设置环境变量2.1.4定义systemd服务管理脚本 2.2修改 Redis 配置文件(Master节点操作2.3修改 Redis 配置文件&#xff0…

SpringBoot项目-双人对战五子棋实验报告

简单五子棋Web项目报告 课 程 Web应用程序设计 项目名称 简单双人五子棋对战 成绩 专业班级 XXX 组别 无 学号 XXX 指导教师 XXX 姓 名 XXX 同组人姓名 无 完成日期 XXX 功能描述 1.用户的注册及登录功能 玩家可以在完成游戏账户的注册&#xff0c…

CentOS Stream 10 计划已启动,即将进入初始化阶段

导读 但初始化的 CentOS Stream 10 暂时不会对外开放,也不会有太多活跃信息。从 Fedora 周期的规律来看,至少还有六个月的时间,CentOS Stream 10 才会正式启动开发流程,接受来自外部的贡献。周五的公告指出:你会看到 C…

STM32文档

一、寄存器缩写 二、存储器和总线构架 DMA,全称为:Direct Memory Access,即直接存储器访问 简而言之,DMA就是将一个内存里的数据搬运到另一个内存里,此过程无需CPU直接控制输出 系统架构存储器组织存储器映射&#xf…

TypeScript 【type】关键字的进阶使用方式

导语: 在前面章节中,我们了解到 TS 中 type 这个关键字,常常被用作于,定义 类型别名,用来简化或复用复杂联合类型的时候使用。同时也了解到 为对象定义约束接口类型 的时候所使用的是 Interfaces。 其实对于前面&#…

从架构角度看网络安全:数字化时代企业如何构建防御体系?

导语 | 数字化时代,网络安全已经成为企业发展的重中之重,通过体系化的安全建设,企业可以从容应对愈加复杂的网络安全挑战。今天,我们特邀了腾讯云 TVP、赛博英杰科技董事长 谭晓生老师,他将从资深技术专家视角解读如何…

【软考网络管理员】2023年软考网管初级常见知识考点(22)- 交换机配置及命令

涉及知识点 华为交换机配置命令大全,交换机设备参数设置 , 交换机路由器的基本配置,交换机命令汇总 , VLAN 配置 , GVRP 配置 , STP 配置,软考网络管理员常考知识点,软考网络管理员…

STM32外设系列—BH1750

文章目录 一、BH1750简介二、BH1750原理图三、BH1750数据手册3.1 指令集3.2 IIC通信读/写 四、BH1750程序设计4.1 IIC程序4.2 BH1750初始化程序4.3 读取BH1750测量结果4.4 获取光照强度4.5 相关宏定义 五、应用实例六、拓展应用6.1 实时调节LED亮度6.2 实时调整颜色阈值 一、BH…