使用 VPN ,一定要知道的几个真相!
你们好,我的网工朋友。
今天想和你聊聊VPN。在VPN出现之前,企业分支之间的数据传输只能依靠现有物理网络(例如Internet)。
但由于Internet中存在多种不安全因素,报文容易被网络中的黑客窃取或篡改,最终造成数据泄密、重要数据被破坏等后果。
除了通过Internet,还可以通过搭建一条物理专网连接保证数据的安全传输,VPN应运而生。
今天就给你说说关于VPN你不得不知道的那些真相,满足一下很多小白网工的好奇心。
不过该学的技术,还是得学啊。
今日文章阅读福利:《VPN知识点-技术图谱》
私信我,发送暗号“VPN”,即可获取该知识点技术图谱,更简单清晰地把VPN技术梳理透。
01 什么是VPN?
VPN的英文全称是Virtual Private Network,这是一种虚拟专用网络,或者再通俗一点讲,VPN是一种中转服务。
在VPN出现之前,企业分支之间的数据传输只能依靠现有物理网络(例如Internet)。
但由于Internet中存在多种不安全因素,报文容易被网络中的黑客窃取或篡改,最终造成数据泄密、重要数据被破坏等后果。
除了通过Internet,还可以通过搭建一条物理专网连接保证数据的安全传输,VPN应运而生。
当我们的电脑接入VPN后,对外公网的IP地址就会发生改变。
所以有些人利用VPN把自己的IP,变成了国外的IP地址,就是咱们通俗说的翻墙。
VPN 是一种隐藏你的Internet 协议 (IP) 地址的服务。
这使你可以匿名浏览互联网,因为没有人可以将你的数据链接到你的IP地址。
要了解VPN的作用,只需分解“虚拟”、“私有”和“网络”这三个词:
VPN是“虚拟的”,因为它们是一种数字服务。你不需要电缆或硬件即可使用它们。
VPN是“私人的”,因为它们会加密你的连接并让你在没有政府、互联网服务提供商 (ISP)、网络犯罪分子和其他旁观者窥探的情况下浏览互联网。
VPN是“网络”,因为它们在你的设备、VPN服务器和互联网之间建立了安全连接。
2014-2016年期间,我国的VPN无论在技术或市场方面,均取得了井喷式的发展。
三年间,我国防火墙/VPN的市场规模分别达到了49.41亿元、63.47亿元和77.45亿元。
迅速膨胀的市场,也一度让行业出现了“乱象丛生”的问题。我国互联网网络接入服务市场面临难得的发展机遇,但无序发展的苗头也随之显现。
02 VPN关键技术点,我来告诉你
01 VPN关键技术:隧道技术
VPN技术的基本原理是利用隧道(Tunnel)技术,对传输报文进行封装,利用VPN骨干网建立专用数据传输通道,实现报文的安全传输。
位于隧道两端的VPN网关,通过对原始报文的“封装”和“解封装”,建立一个点到点的虚拟通信隧道。
隧道的功能就是在两个网络节点之间提供一条通路,使数据能够在这个通路上透明传输。
VPN隧道一般是指在VPN骨干网的VPN节点之间建立的用来传输VPN数据的虚拟连接。
隧道是构建VPN不可或缺的部分,用于把VPN数据从一个VPN节点透明传送到另一个上。
隧道通过隧道协议实现。
02 VPN关键技术:身份认证、数据加密与验证
身份认证、数据加密和认证技术可以有效保证VPN网络与数据的安全性:
1. 身份认证
可用于部署了远程接入VPN的场景,VPN网关对用户的身份进行认证,保证接入网络的都是合法用户而非恶意用户。也可以用于VPN网关之间对对方身份的认证。
2. 数据加密
将明文通过加密变成密文,使得数据即使被黑客截获,黑客也无法获取其中的信息。
3. 数据验证
通过数据验证技术对报文的完整性和真伪进行检查,丢弃被伪造和被篡改的报文。
03 常见VPN技术—IPSec
IPSec(IP Security) VPN一般部署在企业出口设备之间,通过加密与验证等方式,实现了数据来源验证、数据加密、数据完整性保证和抗重放等功能。
- 数据来源验证:接收方验证发送方身份是否合法。
- 数据加密:发送方对数据进行加密,以密文的形式在Internet上传送,接收方对接收的加密数据进行解密后处理或直接转发。
- 数据完整性:接收方对接收的数据进行验证,以判定报文是否被篡改。
- 抗重放:接收方拒绝旧的或重复的数据包,防止恶意用户通过重复发送捕获到的数据包所进行的攻击。
04 常见VPN技术—GRE
通用路由封装协议(General Routing Encapsulation,GRE)是一种三层VPN封装技术。
GRE可以对某些网络层协议(如IPX、IPv4、IPv6等)的报文进行封装,使封装后的报文能够在另一种网络中(如IPv4)传输,从而解决了跨越异种网络的报文传输问题。
如图所示,通过在IPv4网络上建立GRE隧道,解决了两个IPv6网络的通信问题。
GRE还具备封装组播报文的能力。
由于动态路由协议中会使用组播报文,因此更多时候GRE会在需要传递组播路由数据的场景中被用到,这也是GRE被称为通用路由封装协议的原因。
05 常见VPN技术—L2TP
L2TP是虚拟私有拨号网VPDN(Virtual Private Dial-up Network)隧道协议的一种,它扩展了点到点协议PPP的应用,是一种在远程办公场景中为出差员工或企业分支远程访问企业内网资源提供接入服务的VPN。
L2TP组网架构中包括LAC(L2TP Access Concentrator,L2TP访问集中器)和LNS(L2TP Network Server,L2TP网络服务器)。
06 常见VPN技术—MPLS
MPLS是一种利用标签(Label)进行转发的技术,最初为了提高IP报文转发速率而被提出,现主要应用于VPN和流量工程、QoS等场景。
根据部署的不同,MPLS VPN可分为MPLS L2 VPN或者MPLS L3 VPN。
企业可以自建MPLS专网也可以通过租用运营商MPLS专网的方式获得MPLS VPN接入服务。
MPLS VPN网络一般由运营商搭建,VPN用户购买VPN服务来实现用户网络之间(图中的分公司和总公司)的路由传递、数据互通等。
基本的MPLS VPN网络架构由CE(Customer Edge)、PE(Provider Edge)和P(Provider)三部分组成。
03 使用VPN是否违法?
会问这些问题的人,应该是看到过这些新闻:
由于众所周知的原因,在中文互联网环境中,“VPN”是一个讳莫如深的词汇,如果你想要查询相关科普资料,都得去搜索它的中文正式译名“虚拟专用网络”才能收到。
这使得很多对网络知识一知半解的朋友,错误的会将“VPN”与“翻墙软件”简单画上了等号,造成了许多的误会和不便。
事实上,“VPN”只不过是一种网络通信技术,即在公用网络上建立专用网络,进行加密通讯。
而“翻墙软件”确实会用到这一项技术,但这项技术的应用远远不止这些,很多企业也会运用这一技术实现不同办公地点的远程访问,远程数据传输等。
我们经常说的“翻墙”违法,一般是指绕开我国的法律管制,浏览境外服务器的相关网页内容。
很多正经做这类服务的软件被误解为“翻墙”软件,比如贝锐的“蒲公英”,明明是一个正经的异地组网服务提供商,却因为早年名字里含有“VPN”就被误解到今天。
当然,翻墙是否违法也是分情况的。
官方文件这么说:
为了维护公平有序的市场秩序,促进行业的健康发展,也为了加强对计算机信息网络国际联网的管理,保障国际计算机信息交流的健康发展,其实我国就制定了《中华人民共和国计算机信息网络国际联网管理暂行规定》,其中规定了:
计算机信息网络直行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。
如违反上述规定,公安机关会责令停止联网,给予警告,可以并处15000元以下的罚款;有违法所得的,没收违法所得。
而在2017年的1月,工信部发布了《关于清理规范互联网网络接入服务市场的通知》(以下简称“《通知》”)。
《通知》明确:未经电信主管部门批准,不得自行建立或租用专线(含虚拟专用网络VPN)等其他信道开展跨境经营活动。
民间可以使用的非法“梯子”越发稀少,跨国企业租用VPN逐步实现规范化管理。
其实政府也明确了对于VPN的监管态度和原则,即:
外贸企业、跨国企业因办公自用等原因,需要通过专线等方式跨境联网时,可以向依法设置国际通信出入口局的电信业务经营者租用。
根据《国际通信出入口局管理办法》第十九条企业可以向设置国际通信信道出入口的电信业务经营者申请,并且所申请的国际联网专线只能企业内部使用,不能用于经营电信业务。
总而言之:在我国的管理中VPN服务在民众当中属于“违法”行为,它是通过技术非法浏览境外服务器的相关网页。
但是外贸企业、跨国企业可以向政申请,进行合法使用。
如果你偷摸去了 一些不该去的网站,甚至是发表一些过激言论的话,那么不仅是员工,连带着公司也会收到处罚。
所以,大部分公司都会给自己的员工做几个简单的规定:
严禁利用公司账号资源,从事其他与工作无关的事情。
你可以自己想一下,如果你真干了这种事,估计离丢饭碗也不远了。
整理:老杨丨10年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
相关文章:

使用 VPN ,一定要知道的几个真相!
你们好,我的网工朋友。 今天想和你聊聊VPN。在VPN出现之前,企业分支之间的数据传输只能依靠现有物理网络(例如Internet)。 但由于Internet中存在多种不安全因素,报文容易被网络中的黑客窃取或篡改,最终造…...

数电实验-----实现74LS153芯片扩展为8选1时间选择器以及应用(Quartus II )
目录 一、74LS153芯片介绍 管脚图 功能表 二、4选1选择器扩展为8选1选择器 1.扩展原理 2.电路图连接(Quartus II ) 3.仿真结果 三、8选1选择器的应用 1.三变量表决器 2.奇偶校验电路 一、74LS153芯片介绍 74ls153芯片是属于四选一选择器的芯片。…...

如何实现MATLAB与Simulink的数据交互
参考链接:如何实现MATLAB与Simulink的数据交互 MATLAB是一款强大的数学计算软件,Simulink则是一种基于模型的多域仿真平台,常用于工程和科学领域中的系统设计、控制设计和信号处理等方面。MATLAB和Simulink都是MathWorks公司的产品࿰…...

【数据结构】归并排序
👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:数据结构 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵 希望大佬指点一二 如果文章对你…...

数字引领,智慧赋能|袋鼠云与易知微共同亮相2023智慧港口大会
2023年10月19日,由中国港口协会、中国交通通信信息中心、天津港(集团)有限公司主办,中国港口协会智慧港口专业委员会、《港口科技》杂志社等单位承办的以“数字引领 智慧赋能”为主题的“2023智慧港口大会”在天津顺利召开。 袋鼠…...

星火模型(Spark)的langchain 实现
星火模型的langchain实现 测试已通过,希望有所帮助。 使用前请先安装环境: pip install githttps://github.com/shell-nlp/spark-ai-python.git注意: 一定要使用上面方式安装spark库,因对官方的库做了改动。官方的库已经长时间不…...
python运算符重载之构造函数和迭代器
1 python运算符重载之构造函数和迭代器 python运算符重载是在类方法中拦截内置操作-当类的实例使用内置操作时,pytho自动调用对应方法,并且返回操作结果。 NO#描述1拦截运算运算符重载拦截内置操作,比如打印、函数调用、点号运算、表达式运…...

【数据处理】Python:实现求条件分布函数 | 求平均值方差和协方差 | 求函数函数期望值的函数 | 概率论
猛戳订阅! 👉 《一起玩蛇》🐍 💭 写在前面:本章我们将通过 Python 手动实现条件分布函数的计算,实现求平均值,方差和协方差函数,实现求函数期望值的函数。部署的测试代码放到文后了,运行所需环境 python version >= 3.6,numpy >= 1.15,nltk >= 3.4,tqd…...
new/delete 和malloc/free的区别
C中: 创建单个数据空间: char *ch new char; delete ch; ch NULL; 创建多个数据空间: char *ch new char[4]; delete [] ch; ch NULL; C语言中: 创建单个数据空间: char *ch malloc(sizeof(char)); fre…...

Linux程序设计(上)
系列文章目录 文章目录 系列文章目录前言一、unix, linux, GNU, POSIXLinux程序 二、shellshell语法1.变量2.语句 函数命令命令的执行dialog工具-- 三、文件操作1. Linux 文件结构2. 系统调用和设备驱动程序3. 库函数4. 底层文件访问5. 标准I/O库6.格式化输入输出7. 文件和目录…...

mysql面试题——存储引擎相关
一:MySQL 支持哪些存储引擎? MySQL支持多种存储引擎,比如InnoDB,MyISAM, MySQL大于等于5.5之后,默认存储引擎是InnoDB 二:InnoDB 和 MyISAM 有什么区别? InnoDB支持事务,MyISAM不支持InnoD…...

趣学python编程 (四、数据结构和算法介绍)
数据结构和算法在编程中非常重要。数据结构是组织和存储数据的方式,而算法是解决问题的方法和步骤。你要挑战的蓝桥杯,实际也是在设计算法解决问题。其实各种编程语言都只是工具,而程序的核心数据结构算法。犹如练武,数据结构和算…...

使用Pandas进行时间重采样,充分挖掘数据价值
大家好,时间序列数据蕴含着很大价值,通过重采样技术可以提升原始数据的表现形式。本文将介绍数据重采样方法和工具,提升数据可视化技巧。 在进行时间数据可视化时,数据重采样是至关重要且非常有用的,它支持控制数据的…...

Django(九、choices参数的使用、多对多表的三种创建方式、Ajax技术)
文章目录 一、choices参数choices参数的用法choices 参数用法总结 二、MVC与MTV模式1.MVC2.MTV 三、多对多的三种创建方式1.全自动创建2.纯手动创建半自动创建 四、Django与Ajax1.什么是Ajax常见的场景Ajax案例 一、choices参数 在没有用到choices参数之前,我们在D…...
德语B级SampleAcademy
德语B级 一, 反身代词(1)A 主语和宾语一致(2)D 双宾语,主语与直接宾语不一致(3), 补充单词(4)真反身代词(5)假反身代词(6)真假反身代词(7)相互反身(8)非反身#反身#相互反身 二,Nomen…...
vue3自定义hooks
获取dom的id属性 index.ts import { onMounted } from "vue" type option {el: string }export default function(option:option):Promise<{name: string}> {return new Promise((resolve)>{onMounted(()>{const dom:HTMLElement document.querySele…...

Consistency Models 阅读笔记
简介 Diffusion models需要多步迭代采样才能生成一张图片,这导致生成速度很慢。一致性模型(Consistency models)的提出是为了加速生成过程。 Consistency models可以直接一步采样就生成图片,但是也允许进行多步采样来提高生成的质…...
杭电oj 2034 人见人爱A-B C语言
此处的c和a指向同一块内存空间,改变c就是改变a,反之亦然,此处是为了方便看这么写的,如果不想c和a指向同一空间请分别开辟空间(即不如此写camalloc) #include<stdio.h> #include<stdlib.h>int …...
springboot(ssm大学生成绩管理系统 成绩管理平台Java(codeLW)
springboot(ssm大学生成绩管理系统 成绩管理平台Java(code&LW) 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0&…...

SOME/IP 协议介绍(五)指南
指南(信息性) 选择传输协议 SOME/IP直接支持互联网上使用最广泛的两种传输协议:用户数据报协议(UDP)和传输控制协议(TCP)。UDP是一种非常简洁的传输协议,仅支持最重要的功能&#…...

大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

MeshGPT 笔记
[2311.15475] MeshGPT: Generating Triangle Meshes with Decoder-Only Transformers https://library.scholarcy.com/try 真正意义上的AI生成三维模型MESHGPT来袭!_哔哩哔哩_bilibili GitHub - lucidrains/meshgpt-pytorch: Implementation of MeshGPT, SOTA Me…...

【汇编逆向系列】六、函数调用包含多个参数之多个整型-参数压栈顺序,rcx,rdx,r8,r9寄存器
从本章节开始,进入到函数有多个参数的情况,前面几个章节中介绍了整型和浮点型使用了不同的寄存器在进行函数传参,ECX是整型的第一个参数的寄存器,那么多个参数的情况下函数如何传参,下面展开介绍参数为整型时候的几种情…...