校园网白嫖思路分享:局域网中转

您所在的位置:网站首页 校园网给别人开热点会扣费吗 校园网白嫖思路分享:局域网中转

校园网白嫖思路分享:局域网中转

2024-07-09 14:08| 来源: 网络整理| 查看: 265

本文将分享一些校园网的白嫖思路(WireGuard / SoftEther VPN Server基于 UDP 53 端口的 VPN 三层白嫖、Socks 5 白嫖+科学上网二合一的四层白嫖),也就是不花一分钱就和一般用户一样使用校园网。

2023/2/23: 更新各平台配置NAT命令和L2TP方法,并根据先前在评论区的答复介绍可以直接放弃的一些不可行的思路

前提条件

下面列出的思路均要求使用一个校园网的服务器作为中转,因此,需要能够在不需要付费、认证后就能上网的网络环境(一般为办公区或实验室网络)下放一个电脑(树莓派也行);或者有任意学校服务器的使用权。

整体思路就是找个在学校里面地方搭个服务器中转流量

各种思路基于 UDP 53 端口的 VPN 三层白嫖

原理:UDP 53 是 DNS 协议所用端口,由于门户(Portal)认证为了实现 HTTP 劫持跳转到登录页面,必须使得浏览器能够正常地进行 DNS 解析,因此在不认证、不付费的情况下也会放行 UDP 53 端口的流量。

特点:不需要校园网认证,不需要购买校园网,不需要校园网账号。此外由于 VPN 自带加密,因此可以克服开放 Wi-Fi 网络通信完全不加密的缺陷。

下面所列出的两个思路均是三层(IP)级的 VPN 方法,可以转发所有三层报文,因此支持 ICMP 协议(可以用ping)。

注意:使用 UDP 53 端口需要所在网络没有DNS劫持的问题,如果你所在的网络存在DNS劫持(例如,OpenWRT的DHCP/DNS下的”DNS重定向”功能就是DNS劫持),则该方法会失败。

实现思路1:WireGuard

我特别推荐此方案。WireGuard 是几乎无状态的VPN协议,切换网络零感知,不需要重新连接VPN,对于经常睡眠-唤醒的电脑特别有用。睡眠唤醒后可以立刻上网。此外 WireGuard 在 Linux 和 Windows 操作系统上均是纯内核态的实现,性能极其高。

方法:搭建一个 wireguard 服务端,然后端口监听在 53 上

搭建 Linux 服务端的教程很多,一键包也很多。但若要搭建 Windows 服务端,请一定要阅读我之前的这篇文章。

缺点:搭建确实有些复杂,另外配置文件对于不懂计算机网络的人来说实在是晦涩难懂

实现思路2:SoftEther VPN Server

这是我在实现 WireGuard 方案前所使用的一个方案,此方案比 实现思路1:WireGuard 要差一些,主要体现在有状态、连接耗时长,从睡眠中唤醒后要等大约 30 秒才能可以上网。

优点:比 WireGuard 部署简单。如果不一定必须使用 53 端口的话,客户端不需要安装任何软件即可开始使用(SoftEther VPN Server 同时实现了 L2TP/OpenVPN/SSTP 协议)。

方法:搭建一个 SoftEther VPN Server 服务端,然后如下图所示:

注意一个坑:不要使用 SecureNAT!SoftEther VPN 的 SecureNAT 基于桥接实现,并不是直接使用本机网络做 NAT,这会导致服务端 802.1X 认证对客户端无效,也就是说客户端连上 VPN 后还得再登录一个校园网账号!这个问题我建议的解决方法有二:

关闭 SecureNAT 对于 Linux,使用 TAP 模式,建立一个 TAP 网卡并对这个网卡设置 NAT(命令见下文) 对于 Windows,桥接到虚拟机用来 NAT 上网的网卡,例如 VMWare workstation 用户可以设置桥接到 VMware Network Adapter VMnet8 网卡,Hyper-V 用户见下文

对于Linux,设置Tap网卡的NAT命令如下:假设 eno1np0 为你的物理上网网卡,tap_sevpn 为SoftEther VPN Server虚拟网卡

iptables -I FORWARD -i eno1np0 -j ACCEPT iptables -I FORWARD -o eno1np0 -j ACCEPT iptables -I FORWARD -i tap_sevpn -j ACCEPT iptables -I FORWARD -o tap_sevpn -j ACCEPT ifconfig tap_sevpn 192.168.235.2/24 # 为SoftEther VPN Server虚拟网卡 配置IP段 iptables -t nat -A POSTROUTING -o eno2np1 -j MASQUERADE

对于 Linux:这样就可以通过NAT上网了,但是你还会发现Softether只是设置了NAT,但不会给用户分配 IP 地址,请继续这样配置:注意按红框操作,注意网关地址和SecureNAT网卡IP地址不同。注意只开DHCP不开虚拟NAT。最后配完再开启securenat

实现思路3:OpenVPN

思路3仍然使用 SoftEther VPN Server(因为官方的服务器软件实在是太难用了),不同的是,我们不是使用 SoftEther 的 VPN over DNS 功能,而是点击上图的 OpenVPN / MS-SSTP 设置 ,把 OpenVPN 端口修改为 53

OpenVPN性能不怎么好,纯用户态实现。

实现思路4:裸 L2TP

裸L2TP性能也很好,毕竟也是内核级实现。思路3仍然使用 SoftEther VPN Server(因为官方的服务器软件实在是太难用了),需要注意,校园网可能不允许 GRE 或 IPSec,导致常规L2TP/IPSec无法使用,因此我推荐使用不加密的裸 L2TP。裸 L2TP 客户端在 Windows 上配置方法如下:

通常来说关掉证书验证、不输入预共享密钥(PSK)、禁用加密的 L2TP/IPSec就是裸L2TP。Android 和 IOS 不支持裸 L2TP。OpenWRT 的 L2TP 默认就是裸 L2TP,不需要特别的操作。

非 UDP 53 端口 VPN 三层白嫖

前提条件:即使没有购买校园网,学校也给你分配了校园网账号,只是登录这个校园网账号并不能上网,但是仍可以连通局域网网段(10.0.0.0/8,172.20.0.0/12, 192.168.0.0/16)内的服务器。(已知卓智-锐捷方案正是如此)

这个方案就是上面所列出的三个方案换个端口。

非 UDP 53 端口四层白嫖

前提条件:即使没有购买校园网,学校也给你分配了校园网账号,只是登录这个校园网账号并不能上网,但是仍可以连通局域网网段(10.0.0.0/8,172.20.0.0/12, 192.168.0.0/16)内的服务器。(已知卓智-锐捷方案正是如此)

优点:白嫖-梯子 二合一,白嫖后就自动科学上网。不像上面的方案,如果服务器本身没有设置 TUN/TAP 级别的全局代理,对于 Android 这种只能同时运行一个 VPN 的操作系统,白嫖就不能科学上网,科学上网就不能白嫖。

缺点:是四层代理,因此不支持 ICMP 协议(不能用ping,ping返回的都是代理软件生成的虚假结果)

裸 Socks5 方法

这种方法简单粗暴,打开你服务器上的代理软件,直接选上 “允许来自局域网的连接” 就行。以 Clash for windows 为例:

然后客户端使用任意支持裸 socks5 代理的软件上网即可(例如 V2rayN)

缺点:与服务器的通信完全明文不加密。

ShadowSocks / V2ray 方法

与搭建一个科学上网服务器的方法完全一样,不再赘述。需要注意的是 V2ray 不支持真正意义上的 UDP。

UDP 53 端口四层白嫖方法

与非 UDP 53 端口四层白嫖具有同样的优点,但是使用 UDP 协议来封装,因此能跑在 53 端口上。

通常使用 KCP 协议来将 TCP 流量封装为 UDP 流量。根据你要封装的协议,有以下实现方法,请点击链接查看:

对于 Socks5,使用 KCPTun 程序 封装 Socks5 协议,实现用 UDP 53 端口来跑 Socks5。KCPTun 程序实际上可以封装任何 TCP 应用,但是对于手机端使用体验不好。(Android) 对于 V2ray,使用 mKCP 传输方法。 大部分 v2ray 客户端都支持 mKCP 方法。 对于 ShadowSocks,使用 KCPtun 插件。 大部分 ShadowSocks 客户端都支持 mKCP 方法(Android)。 不建议的方法

PPTP:PPTP 依赖 GRE 隧道,然而 GRE 协议很可能被封了。以我所在的学校校园网为例,只允许 TCP/UDP/ICMP,其他协议一律无法使用。

IKEv2:依赖 IPSec。可能被封了。

SSTP:虽然SEVPN自带,但是基于 HTTPS+TCP,网速极其堪忧。

GRE/IPIP/VXLAN/MPLS:需要两端都是静态 IP,在校园网白嫖的实际生产环境不可行。

转载请遵守 CC BY-NC-SA 4.0 协议并注明来自:校园网白嫖思路分享:局域网中转-不花钱、不认证、高速上网(禁止采集站转载)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3