VPN原理浅谈

VPN原理

引入

之前在hack the box练习的时候呢,需要使用openvpn工具连接到htb;

每次用谷歌浏览器呢,都要用到vpn;

停留一分钟,想这个vpn的原理是什么嘞,搜肠刮肚,就蹦出个虚拟专用网络;

大学对vpn的体验就是,使用easyconnect去连接一个大学的vpn链接,然后输入自己的账号和密码,就可以校外访问知网啊、其它资源库了。

所以说有个重要的作用就是,需要访问一个内网的时候,但是又不在其内网覆盖的范围,那就要用到VPN。

已知VPN的功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。

前置知识

已知,为了与外网通信,计算机是需要申请 全球唯一的IP地址 的,而有的计算机不与外网通信的话,那就任选一个内部IP地址即可,但是当它要和外网通信时,可能出现IP冲突的情况;所以就有规定,专用IP地址不能用作全球唯一的IP地址

专用IP地址:

A类 10.0.0.0 到 10.255.255.255

B类 172.16.0.0 到 172.31.255.255

C类 192.168.0.0 到192.168.255.255

所以,不同机构内部是可以使用相同的内网地址的,还有MAC地址是唯一的

内网地址怎么访问外网?

NAT技术

在浏览器上输入个要访问的网址,然后呢,路由器收到这个消息了,它给互联网服务提供商(ISP,移动或电信)说它要上网,然后ISP返回一个目前没人用的全球唯一IP,当你没有对外访问的需求了,再把这个IP还给ISP,它可以再分配。

域名劫持

关于为什么访问谷歌浏览器,需要vpn

我的朋友,你可知道什么叫做GFW,当我才写这篇博客时,我才知道这个专业术语,我们所说的”翻墙”,你知道的。

这个东西牵扯到了一个叫 域名劫持 的东西

首先,DNS的域名解析流程,我们知道的

客户端先问本地DNS服务器,它不知道,再由本地DNS按照域名层次结构,依次向不同级别的域名服务器发出迭代查询请求

这些请求是通过通过 **无连接的UDP协议 **进行通信的,DNS服务器识别自己发出的数据包,就是通过匹配端口号,匹配了就是正确回复。

然后说回域名劫持,DNS响应数据包的源IP容易被伪造,所以攻击者通过伪造权威域名服务器的应答,将目标网站域名解析到错误的地址,达到让用户无法访问目标网站的目的

防火长城(GFW),对UDP 53端口上的所有请求进行检测,一旦发现了与黑名单关键词相匹配的域名查询请求,就会马上伪装成目标域名的解析服务器,返回虚假的查询结果。因为UDP的不可靠性,查询者只能接收到最先到达的格式正确结果,之后的就被抛弃掉了嘞。

原理

以访问Google为例

VPN,它的全球唯一IP没有被GFW掉,现在的访问路径就是,主机->VPN->Google。 GFW以为我在访问VPN,就没有阻止。

自己搭建

当然了,VPN只是一种技术,如果自己搭建服务器,那要买一个物理硬件,突然就舍不得搭建了。

当然了,虚拟服务器VPS就出现了;

可以在VPS提供的网站上建立自己的一个虚拟主机。虽然是虚拟,那本质上的每次请求,也都是用实际的物理服务器处理的,这个虚拟和实际差不了多少。

这样的访问路径就是:用户->VPN->虚拟服务器->实际上的物理服务器提供数据和计算

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2023-2025 是羽泪云诶
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信