Blog

VPN 入门:给小白的一次系统科普

从 VPN 是什么、为什么需要 VPN,到虚拟网卡、隧道、路由、DNS、内网访问和分流模式,系统讲清 VPN 基础。

  • VPN
  • 网络
  • 云原生
  • 内网
  • 安全

学习云计算、服务器运维、企业内网访问时,经常会同时遇到这些词:

VPN、虚拟网卡、内网、隧道、路由、DNS、分流。

这些概念单独看都不算特别复杂,但一旦它们出现在一起,很多人就会有一种感觉:

我明明只是想连一下公司内网,为什么突然像在学网络工程。

其实 VPN 的核心目标并不神秘,它本质上是在解决一个非常实际的问题:

让你在公网环境下,也能像“在公司内部网络里一样”安全访问目标资源。

如果你是第一次接触 VPN,可以先记一句最核心的话:

VPN 就是在你和目标内网之间,建立一条安全的虚拟网络通道。

先用一句话理解 VPN

VPN 是 Virtual Private Network,中文通常叫“虚拟专用网络”。

这个名字里最重要的是三个词:

  • Virtual:虚拟的,不是拉了一根真实专线到你家
  • Private:专用的,不是所有公网用户都能随便进
  • Network:它本质上解决的是网络连通问题

所以 VPN 不是某个单独的软件图标,而是一整套“让你安全进入某个网络”的机制。

为什么需要 VPN

先想一个最常见的办公场景。

公司里有很多系统只开放给内网访问,比如:

  • 内部代码仓库
  • 堡垒机
  • OA 系统
  • 测试环境
  • 数据库管理平台
  • 监控平台

如果你人在公司办公室,电脑本来就在公司网络里,访问这些系统通常没问题。
但如果你在家、在外面、在咖啡店,用的是公网网络,就不能直接访问这些只开放给内网的资源。

这时 VPN 的作用就体现出来了:

  • 先验证你是不是合法用户
  • 再给你一条安全通道
  • 让你的设备“逻辑上接入”公司网络的一部分

这样你虽然物理上不在公司,但网络访问上会更接近“在公司内网里”。

VPN 到底解决了什么问题

VPN 一般同时解决三类问题:

1. 连通性问题

让本来不能直接访问的内网资源变得可访问。

2. 安全性问题

你的流量不会直接裸奔在公网里,而是经过加密和认证。

3. 身份控制问题

不是谁都能接入,通常要账号、证书、客户端、双因子认证等方式才能连上。

所以 VPN 不是“单纯加速上网”的工具,在企业场景里它更接近:

远程进入专用网络的安全入口。

什么是“虚拟网卡”

这几乎是所有小白第一次用 VPN 时最困惑的点。

先理解普通网卡

普通网卡是你电脑和真实网络通信的接口。

例如:

  • 有线网卡
  • Wi-Fi 网卡

它们负责让你的电脑接入真实网络。

再理解虚拟网卡

虚拟网卡不是一块真的插在电脑里的硬件,而是系统里“额外创建出来的一个网络接口”。

当你连接 VPN 时,很多客户端会在系统里创建一个虚拟网卡。
它看起来像一块新的网卡,系统也会给它分配:

  • IP 地址
  • 路由规则
  • DNS 配置

所以你可以把虚拟网卡理解成:

VPN 在你电脑里模拟出来的一张“专门用于走 VPN 流量”的网卡。

为什么 VPN 要用虚拟网卡

因为系统需要一个明确的“流量出口”来区分:

  • 哪些流量走你本地真实网络
  • 哪些流量走 VPN 通道

虚拟网卡出现后,操作系统就可以把部分目标地址的流量定向发给它。
然后 VPN 客户端再把这些流量加密、封装、送进隧道。

所以,虚拟网卡不是装饰,它是 VPN 工作机制里非常核心的一层。

一张图看懂 VPN 的基本结构

flowchart TD
  computer["你的电脑"]
  physical["真实网卡(Wi-Fi / 有线)"]
  virtual["虚拟网卡(VPN 创建)"]
  tunnel["VPN 加密隧道"]
  gateway["公司 VPN 网关"]
  resources["公司内网资源"]
  repository["代码仓库"]
  bastion["堡垒机"]
  oa["OA 系统"]
  test["测试环境"]
  database["内部数据库"]

  computer --> physical
  computer --> virtual
  virtual --> tunnel --> gateway --> resources
  resources --> repository
  resources --> bastion
  resources --> oa
  resources --> test
  resources --> database

这张图里最关键的是:

  • 真实网卡负责把数据送到公网
  • 虚拟网卡负责承接“应该走 VPN 的那部分流量”
  • VPN 网关负责把你接入目标内网

什么叫“隧道”

VPN 里另一个高频词就是“隧道”。

隧道可以先简单理解成:

在现有网络之上,又包出了一层专门的传输通道。

你的原始网络数据不会直接裸着发出去,而是会被:

  1. 封装
  2. 加密
  3. 通过公网传输
  4. 到达 VPN 服务端后再解开

就像你把一封信放进一个加密过的专用快递盒里,再通过普通道路送到公司。

这里:

  • 公网是“普通道路”
  • VPN 隧道是“专用加密快递盒”

VPN 连接后,电脑里到底发生了什么

如果按顺序理解,一个典型 VPN 连接过程大致是这样:

第一步:启动 VPN 客户端

比如你打开某个企业 VPN 客户端并登录。

第二步:身份认证

系统会检查你是不是合法用户,例如:

  • 用户名密码
  • MFA
  • 证书
  • 企业账号单点登录

第三步:建立虚拟网卡

客户端在系统里创建或启用虚拟网卡。

第四步:下发网络配置

VPN 服务端可能会给你下发:

  • 虚拟 IP
  • 路由规则
  • DNS 服务器
  • 可访问的网段

第五步:建立加密隧道

你的流量开始通过 VPN 隧道发往公司 VPN 网关。

第六步:访问内网资源

当你访问某个内部地址时,系统根据路由规则判断:

  • 该走本地网络
  • 还是该走 VPN

如果目标命中 VPN 路由,就通过虚拟网卡进入隧道。

为什么连上 VPN 后就能访问公司内网

这个问题的关键不在“软件开了”,而在“路由和网络身份变了”。

连接 VPN 后,通常会发生两件关键事情:

1. 你的电脑获得了 VPN 网络里的身份

例如拿到一个虚拟 IP。

这意味着公司网络会把你识别为“已接入 VPN 的合法终端”。

2. 系统新增了通往目标内网的路由

例如:

10.0.0.0/8 走 VPN
172.16.0.0/12 走 VPN
192.168.100.0/24 走 VPN

这样当你访问这些内网网段时,流量就不会走普通公网出口,而是会进入 VPN 通道。

所以你连上 VPN 后能访问内网,并不是因为“网页突然被放开了”,而是因为:

你的电脑被临时接进了一个受控网络路径里。

路由到底在这里起什么作用

路由 可以理解成系统里的“发货规则表”。

它决定:

  • 访问哪个地址时,数据该从哪个网络接口出去

在没有 VPN 的时候,很多流量默认走你的真实网卡。
有了 VPN 后,系统里会多一套规则,把某些目标网段指向虚拟网卡。

所以可以粗略理解成:

flowchart TD
  target{"目标地址属于哪一类?"}
  target -->|普通公网地址| physical["走真实网卡"]
  target -->|公司内网地址| virtual["走 VPN 虚拟网卡"]

这也是为什么 VPN 和“虚拟网卡”总是一起出现。

DNS 在 VPN 里为什么也很重要

很多人只关注“IP 通不通”,但实际工作里更常见的问题是:

我能连上 VPN,但内部域名还是打不开。

这通常和 DNS 有关。

因为很多内网系统不是靠公网域名访问的,而是靠公司内部 DNS 解析,比如:

  • git.internal.company
  • oa.intra.local
  • db-admin.corp

如果你连上 VPN 之后,系统仍然使用外部 DNS,就可能出现:

  • 域名解析不到
  • 被解析成错误地址

所以很多 VPN 连接成功后,除了路由,还会下发 DNS 配置。

什么是“全局模式”和“分流模式”

这是 VPN 使用中很常见的两个模式。

全局模式

全局模式可以粗略理解成:

你的大部分甚至全部流量都先走 VPN。

特点:

  • 管理简单
  • 安全控制更集中

缺点:

  • 带宽压力可能更大
  • 普通公网访问也绕进公司网络
  • 速度可能受影响

分流模式

分流模式是:

只有访问特定网段、特定域名或特定资源的流量才走 VPN,其余流量仍走本地网络。

特点:

  • 更节省 VPN 资源
  • 普通上网影响较小

缺点:

  • 配置更复杂
  • 某些场景排查问题更麻烦

一句话区分

全局模式:大多数流量都进 VPN
分流模式:只有指定流量进 VPN

VPN、代理、堡垒机有什么区别

这三个词在工作里经常一起出现,但它们不是同一个东西。

VPN

解决的是:

  • 网络接入
  • 安全连通
  • 远程进入受控网络

代理

代理更偏向于:

  • 代替你去访问目标
  • 转发特定协议流量

它不一定让你“进入另一个内网”,更多是流量转发角色。

堡垒机

堡垒机更偏向于:

  • 服务器运维入口
  • 登录审计
  • 权限控制

很多时候流程是这样的:

flowchart LR
  vpn["先连接 VPN"] --> bastion["访问堡垒机"]
  bastion --> server["从堡垒机进入服务器"]

所以它们的关系通常不是互斥,而是协作:

  • VPN 负责“进网络”
  • 堡垒机负责“进机器”

最常见的办公场景怎么理解

假设你在家办公,想访问公司测试环境。

大致流程可能是:

  1. 你先连接家里的 Wi-Fi
  2. 打开 VPN 客户端登录
  3. 系统创建虚拟网卡并建立隧道
  4. 公司给你分配虚拟 IP 和内网路由
  5. 你访问公司内网域名
  6. 流量通过 VPN 进入公司网络
  7. 如果要登录服务器,再通过堡垒机继续访问

把这条链路串起来之后,VPN 的位置就很清楚了。

小白最容易误解的几个点

1. VPN 不是“单纯翻墙软件”

在企业和运维场景里,VPN 的主要意义是:

  • 安全接入专用网络

而不是娱乐化理解里的“换个网络出口”。

2. 虚拟网卡不是坏东西

很多人看到系统里多了一个网卡会担心。
其实在 VPN 场景里,这通常是正常工作机制。

3. 连上 VPN 不代表所有东西都能访问

还要看:

  • 你的权限
  • 路由是否下发
  • DNS 是否正确
  • 目标资源是否真的对该 VPN 用户开放

4. 能上网不代表 VPN 正常

VPN 正不正常,不是看“浏览器还能不能打开百度”,而是看:

  • 目标内网资源是否可达
  • 内部域名是否能正确解析
  • 路由是否符合预期

一份适合记忆的总图

VPN 核心概念

1. VPN 是什么
  - 虚拟专用网络
  - 通过公网安全接入目标网络

2. 为什么要用
  - 远程访问公司内网
  - 加密传输
  - 受控接入

3. 关键组件
  - 真实网卡
  - 虚拟网卡
  - VPN 客户端
  - VPN 网关
  - 路由规则
  - DNS 配置

4. 核心机制
  - 身份认证
  - 分配虚拟 IP
  - 建立加密隧道
  - 下发路由和 DNS
  - 访问指定内网资源

5. 常见关系
  - VPN:进网络
  - 堡垒机:进服务器
  - 代理:转发特定流量

最后怎么真正理解 VPN

不要把 VPN 只理解成“一个连接按钮”。

更准确地说:

VPN 是一种让终端通过公网安全接入目标专用网络的机制,它通常依赖虚拟网卡、加密隧道、路由规则和 DNS 配置来实现内网访问能力。

当你能把这句话和下面这些概念对应起来时,说明你已经真正入门了:

  • 为什么需要 VPN
  • 虚拟网卡是什么
  • 隧道是什么
  • 为什么路由决定流量走向
  • 为什么 DNS 错了会导致内网域名打不开
  • 为什么连上 VPN 后才能访问某些内网资源

如果后面继续深入,这条学习线通常会延伸到:

  • 常见 VPN 协议
  • 企业 VPN 常见故障排查
  • 路由表和 DNS 实际查看方法
  • VPN、零信任、堡垒机三者的关系