[计算机网络] VPN技术

news2024/9/28 3:18:33

VPN技术

1. 概述

虚拟专用网络(VPN)技术利用互联网服务提供商(ISP)和网络服务提供商(NSP)的网络基础设备,在公用网络中建立专用的数据通信通道。VPN的主要优点包括节约成本和提供安全保障。

在这里插入图片描述

优点:

  • ​ VPN可以节约成本
  • ​ 为安全提供保障

2. VPN类型

VPN主要有三种应用方式:远程接入VPN、内联网VPN、外联网VPN。

  1. 远程接入VPN(Access VPN)

    远程接入VPN允许移动用户在外部网络上访问内部网络。例如,一些学校和企业的门户平台只有在内网环境下才能访问,通过远程接入VPN,用户可以在任何地方安全地连接到这些内部资源。

    在这里插入图片描述

  2. 内联网VPN

    内联网VPN将两个内部网络通过公用网络连接起来,形成一个逻辑上的局域网。这种方式可以用于连接不同办公室、分支机构,使其共享内部资源,提升整体协作效率。

  3. 外联网VPN

    外联网VPN使得不同的用户在逻辑上的局域网中不平等。通常用于合作伙伴或客户之间的安全通信,在保护公司内部资源的同时,提供必要的访问权限。

3. 使用的技术

3.1 隧道技术

隧道技术主要是利用隧道协议来传输另外一种协议。隧道由隧道开通器(TI)、有路由能力的公用网络和隧道终止器(TT)组成。隧道可以将数据流量强制传输到特定的目的地,隐藏私有的网络地址、在IP网络上传输非IP协议的数据包,简单的来说,隧道技术就像现实生活中的隧道,它可以从一地到一地,而它穿过的“大山”在这里就是外网。

3.1.1 实现方式

隧道的实现主要分为两个过程:封装、解封装。

在这里插入图片描述

  • 封装:由隧道开通器(TI)完成,将数据包封装在隧道协议的外壳内。
  • 解封装:由隧道终止器(TT)完成,将数据包从隧道协议的外壳中解封。
3.1.2 基本类型

隧道有两种基本类型:主动式隧道和被动式隧道

主动式隧道(Access VPN):

​ 客户端主动与目标隧道服务器建立连接。这种方式,客户端需要安装所需要的隧道协议

被动式隧道(Intranet VPN、Extranet VPN):

​ 被动式隧道主要用于两个内部网络之间的固定连接,所以需要先交给隧道服务器A,在接收到数据后,将其强制通过已建立的隧道传输到对端的隧道服务器。

4. VPN相关协议

在VPN技术中,隧道协议用于在公用网络上建立安全的通信通道。根据工作在OSI模型中的层次,可以将隧道协议分为第二层隧道协议和第三层隧道协议。

4.1 第二层隧道协议

第二层隧道协议工作在OSI模型的第二层,即数据链路层。常见的第二层隧道协议包括PPTP和L2TP。

4.1.1. PPTP(Point-to-Point Tunneling Protocol)

PPTP是由微软和其他厂商开发的早期VPN协议。它在PPP(Point-to-Point Protocol)基础上进行封装,通过互联网传输PPP帧。

在这里插入图片描述

特点

  • 简单易用:PPTP配置相对简单,广泛支持于Windows操作系统。
  • 性能较好:由于其较轻的协议开销,PPTP具有良好的传输性能。
  • 安全性较低:PPTP的加密机制(通常是MPPE)相对较弱,容易受到攻击。
4.1.2. L2TP(Layer 2 Tunneling Protocol)

L2TP是由思科和微软共同开发的协议,结合了PPTP和L2F(Layer 2 Forwarding)的特点。L2TP本身不提供加密功能,通常与IPSec一起使用,以提供强大的加密和认证机制。

特点

  • 灵活性高:L2TP可以通过多种网络(如ATM、帧中继等)传输数据。
  • 安全性好:当与IPSec结合使用时,L2TP/IPSec提供了强大的加密和认证功能。
  • 性能较差:由于双重封装(L2TP和IPSec),L2TP/IPSec的性能可能不如其他协议。

L2TP主要是由LAC(L2TP接入集中器)和LNS(L2TP网络服务器)构成。

  • LAC:用于客户端的L2TP来接发呼叫、建立隧道,为客户端提供通过PNST、ISDN、xDSL等方式的接入网路服务。
  • LNS:隧道的终点。

L2TP具有两种报文格式:控制报文、数据报文。

在这里插入图片描述

  • L2TP控制报文:用于隧道的建立、维护与断开。使用的是UDP1701端口,对封装后的UDP数据报使用IPSec ESP进行加密处理并认证。
  • L2TP数据报文:负责传输用户的数据。

4.2 第三层隧道协议

第三层隧道协议工作在OSI模型的第三层,即网络层。常见的第三层隧道协议包括IPSec和GRE。

4.2.1. IPSec(Internet Protocol Security)

IPSec是一套用于保护IP通信的协议,提供了认证、数据完整性和加密功能。IPSec通常用于保护VPN连接,尤其是站点到站点VPN和远程接入VPN。

特点

  • 强大的安全性:IPSec提供了强大的加密和认证机制,如AH(Authentication Header)和ESP(Encapsulating Security Payload)。
  • 灵活性高:IPSec可以保护任何基于IP的协议,是一种通用的安全解决方案。
  • 复杂性高:IPSec配置和管理相对复杂,需要专业知识。
4.2.2. GRE(Generic Routing Encapsulation)

GRE是一种简单的隧道协议,用于在一个协议中封装另一种协议。GRE本身不提供加密或认证功能,通常与IPSec结合使用以提供安全性。

特点

  • 协议支持广泛:GRE可以封装多种协议,包括IP、IPX和AppleTalk。
  • 简单易用:GRE配置相对简单,适用于多种应用场景。
    身不提供加密或认证功能,通常与IPSec结合使用以提供安全性。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

博物馆地图导航系统:高精度地图引擎与AR/VR融合,实现博物馆数字化转型

在人民日益追求精神文化的时代下,博物馆作为传承与展示人类文明的璀璨殿堂,其重要性不言而喻。然而,随着博物馆规模的不断扩大和藏品种类的日益丰富,游客在享受知识盛宴的同时,也面临着“迷路”与“错过”的困扰。博物…

综合实验作业

node01:192.168.175.146 node02:192.168.175.147 【node01】 node01 与 node02 防火墙在本实验中都需要放行的服务; [rootlocalhost ~]# firewall-cmd --permanent --add-servicedns success [rootlocalhost ~]# firewall-cmd --permanent -…

【C语言】 —— 预处理详解(下)

【C语言】 —— 预处理详解(下) 前言七、# 和 \##7.1 # 运算符7.2 ## 运算符 八、命名约定九、# u n d e f undef undef十、命令行定义十一、条件编译11.1、单分支的条件编译11.2、多分支的条件编译11.3、判断是否被定义11.4、嵌套指令 十二、头文件的包…

以太网中的各种帧结构

帧结构(Ethernet Frame Structure)介绍 以太网信号帧结构(Ethernet Signal Frame Structure),有被称为以太网帧结构,一般可以分为两类 —— 数据帧和管理帧。 按照 IEEE 802.3,ISO/IEC8803-3 …

Django 框架下的media和static静态文件

Django有两种静态文件 static: 静态文件夹,存放CSS,JS,网站的一些图片等静态资源,为Templates下的html页面提供的。static是不会变化的 media:媒体文件夹,存放网站中用户所相关的一些文件,比如说用户的图片…

深度解析蚂蚁 SEO 蜘蛛池:提升网站流量的有效利器

在当今数字化时代,网站流量对于企业和个人的在线业务成功至关重要。为了在竞争激烈的网络环境中脱颖而出,众多站长和 SEO 从业者不断探索各种优化策略,其中蚂蚁 SEO 的蜘蛛池成为备受关注的工具之一。 蚂蚁 SEO 蜘蛛池是一种创新的技术手段&a…

24/7/12总结

axios Axios 是一个基于 promise 网络请求库&#xff0c;作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpRequests。 get请求: <script>function…

Cannot resolve symbol ‘HttpServlet‘

问题&#xff1a;不自动导包。 解决方案&#xff1a; https://blog.csdn.net/chenyu_Yang/article/details/136597181

9.Python学习:Socket

1.网络通信要素&#xff08;IP端口传输协议&#xff09; 2.Socket编程 2.1TCP、UDP协议了解 2.2 Socket流程 服务端有两个socket对象&#xff0c;客户端有一个 3.Socket实战 服务端代码&#xff1a; import socket #创建Socket对象 sksocket.socket() #绑定ip与端口号-使…

一文搞定node.js和Vue脚手架的介绍以及安装

node.js的介绍以及安装 node.js的介绍 node.js提供了前端程序的运行环境&#xff0c;可以把node.js理解成是运行前端程序的服务器。node.js的安装 从官网下载安装即可&#xff1a;http://nodejs.cn/download/不要勾选这个,否则会下载很多东西 node -v 是 查看node的版本 npm…

Ubuntu 22.04.4 LTS (linux) 安装 Auditd 安全审计

1 安装auditd sudo apt update sudo apt-get install auditd 2 修改配置 #sudo vim /etc/audit/auditd.conf #日志文件位置 log_file /var/log/audit/audit.log #日志文件大小(Mb) max_log_file 8 #日志文件数量 num_logs 53 启动服务 sudo systemctl restart aud…

【TOOLS】Chrome扩展开发

Chrome Extension Development 1. 入门教程 入门案例&#xff0c;可以访问【 谷歌插件官网官方文档 】查看官方入门教程&#xff0c;这里主要讲解大概步骤 Chrome Extenson 没有固定的脚手架&#xff0c;所以项目的搭建需要根据开发者自己根据需求搭建项目&#xff08;例如通过…

前端工程化:Webpack配置全攻略

前端工程化&#xff1a;Webpack配置全攻略 前端小伙伴们&#xff0c;今天我们来聊聊那个让人又爱又恨的 Webpack。没错&#xff0c;就是那个配置起来让你想砸键盘&#xff0c;但又离不开它的构建工具。别担心&#xff0c;跟着我来&#xff0c;保证让你从 Webpack 小白变成配置…

【k8s部署elasticsearch】k8s环境下安装elasticsearch集群和kibana

文章目录 简介一.条件及环境说明二.需求说明三.实现原理及说明四.详细步骤4.1.规划节点标签4.2.创建三个statefulset和service headless配置4.3.创建service配置 五.安装kibana六.调整索引分区七.安装说明 简介 k8s集群中搭建有elasticsearch服务一般都会用到pvc&#xff0c;但…

苹果入局,AI手机或将实现“真智能”?

【潮汐商业评论/原创】 “AI应用智能手机不就是现在的AI手机。” 当被问到现阶段对AI手机的看法时&#xff0c;John如是说。“术业有专攻&#xff0c;那么多APP在做AI功能&#xff0c;下载用就是了&#xff0c;也用不着现在换个AI手机啊。” 对于AI手机&#xff0c;或许大多…

阿里云调整全球布局关停澳洲云服务器,澳洲服务器市场如何选择稳定可靠的云服务?

近日&#xff0c;阿里云宣布将关停澳大利亚地域的数据中心服务&#xff0c;这一决定引发了全球云计算行业的广泛关注。作为阿里云的重要海外市场之一&#xff0c;澳洲的数据中心下架对于当地的企业和个人用户来说无疑是一个不小的挑战。那么&#xff0c;在阿里云调整全球布局的…

JS爬虫实战之极验四代

极验四代滑块验证码 一、目标网站说明二、流程步骤1. 逆向步骤一般分为&#xff1a;2. 接口确认1- 确认流程2- 获取verify的参数3- 构建requests验证verify的参数4- 锁定secode参数的作用 ok&#xff0c;让我们去获取verify接口中的响应&#xff01;&#xff01;&#xff01; 3…

在若依框架基础上开发新功能

本文介绍如何在若依框架&#xff08;不分离版本&#xff09;的基础上开发新功能。 目录 运行若依框架 下载若依框架代码 IDEA打开若依框架代码 初始化数据库 修改数据库配置 运行项目 设计数据库 数据表命名规则 建表及初始化数据 开发新功能 后端CRUD功能 前端接口…

YOLOv10改进 | 添加注意力机制篇 | 添加LSKAttention大核注意力机制助力极限涨点

一、本文介绍 在这篇文章中&#xff0c;我们将讲解如何将LSKAttention大核注意力机制应用于YOLOv10&#xff0c;以实现显著的性能提升。首先&#xff0c;我们介绍LSKAttention机制的基本原理&#xff0c;它主要通过将深度卷积层的2D卷积核分解为水平和垂直1D卷积核&#xff0…

网络编程!

网络编程 【1】网络开发架构 &#xff08; 1 &#xff09; C / S 架构 C : client &#xff08;客户端&#xff09; S: server (服务端) APP - 就是服务端 C/S 架构通过客户端软件和服务器之间的交互&#xff0c;实现了前端界面和后端业务逻辑的分离&#xff0c;提供了一种…