前言
讲一下实现一号多用的校园网路由器,打开某宝,搜索校园网路由器,会出现一大堆解除校园网限制的路由器,这些路由器什么方法实现一号多用的呢,今天我就给大家讲讲具体原理。
校园网路由器
首先这些路由器配置极低,大多是一些老旧路由器套壳,但是,他唯一的优点就是可以实现校园网一号多用。
大多数学校的校园网都是一个账号限制一个设备或者两个设备,要知道,身为学生,一部手机一台电脑,还有其他数码设备需要联网,根本不够用,所以就出现了实现一号多用的路由器。首先,这些破解校园网的路由器就是把一些旧的路由器,刷入开源的openwrt系统,不过这个openwrt系统是他们自己定制的,所以界面会跟我们常看到的不一样,你购买他们的路由器,买的不是路由器,而是他们系统和售后。
什么是openwrt
OpenWrt是一个基于Linux的开源操作系统,专门为路由器和嵌入式设备设计。它允许用户在标准的PC硬件上运行路由器软件,并提供了一个可定制的、功能丰富的网络环境。简单来说,OpenWrt就像是一个为路由器定制的高级操作系统,它让用户可以完全控制自己的网络设备,安装和运行各种软件,就像在普通的计算机上一样。
如何在openwrt上实现认证
知道了使用的是openwrt系统,我就在想,如何实现这些功能呢,openwrt本质上也是linux,所以也可以完成账号认证的工作,我们来了解一下向校园网认证的过程,认证校园网时,输入账号密码,点击登录,就会向学校的认证服务器发送认证的post请求,我们只要抓包,抓到这段认证的请求再来到openwrt实现,也就实现了校园网认证。
校园网检测原理以及过检测的办法
接下来就校园网的检测,会检测你的设备,常见的检测方法有两种,一个是ttl检测,另一个是useagent,其他检测方法的我不做过多介绍,什么是ttl检测,TTL(Time To Live)检测是一种网络诊断工具,用于测量数据包从源头到目的地的存活时间。在计算机网络中,每个数据包都包含一个TTL字段,该字段指定数据包在网络中可以经过的最大路由器数。每当数据包经过一个路由器,TTL值就会减1。如果TTL值减到0,路由器将不再转发该数据包,而是发送一个ICMP(Internet Control Message Protocol)超时消息给源地址。
如果您想要确保经过OpenWrt设备的所有数据包都具有相同的TTL值,您可以通过配置设备的网络设置来实现。
这是一些可用的方法来确保经过OpenWrt设备的TTL值一致:
1. 全局修改TTL值:可以修改OpenWrt设备上全局的IP转发设置,以改变所有出站数据包的TTL值。这可以通过修改`/etc/sysctl.conf`文件中的`net.ipv4.ip_default_ttl`参数来实现。例如,设置`net.ipv4.ip_default_ttl = 64`将会使得所有从该设备发出的IPv4数据包的TTL值设置为64。
2. 使用iptables修改TTL:您可以使用iptables工具来为特定的数据包设置TTL值。例如,使用以下命令可以为所有经过设备的数据包设置TTL值为64:
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64
这个规则需要添加到OpenWrt设备的防火墙规则中,并且会在数据包离开设备前修改其TTL值。
3. 针对特定接口或流量修改TTL:如果只想为特定的接口或流量修改TTL值,您可以在iptables规则中指定接口或使用其他匹配条件。例如,只为通过eth0接口的数据包设置TTL值:
iptables -t mangle -A POSTROUTING -o eth0 -j TTL --ttl-set 64
ttl过检测很简单。
那么比较难的就是User-Agent,什么是User-Agent。
User-Agent是一个标识符,它告诉网站你的浏览器是什么。比如,如果你用的是Chrome浏览器,你的User-Agent可能看起来像这样:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.
这个字符串告诉网站你用的是Windows 10操作系统的64位Chrome浏览器,版本是58.0.3029.110。
简单来说,User-Agent就像是你在网上购物时告诉商家你用的手机型号,这样商家就可以根据你的手机型号给你推荐合适的商品。同样地,网站可以根据你的User-Agent来给你提供适合你浏览器的网页内容。
校园网一旦检测到你的设备信息不一样,就认定你不是一个设备上网,所以检测到你一号多用,会禁止你上网,所以,如何解决这个问题?
要确保经过 OpenWRT 的 HTTP 流量的 User-Agent 保持一致,可以在 OpenWRT 路由器上配置一个 HTTP 代理,然后在代理服务器上修改 User-Agent 头部。
1. 安装并配置透明代理软件:在 OpenWRT 路由器上安装透明代理软件,例如 Squid。确保将所有 HTTP 流量路由到该代理服务器上。
2. 修改 User-Agent 头部:在代理服务器上配置,通过适当的方法修改 User-Agent 头部,使其保持一致。这可以通过 Squid 的 ACL 和 HTTP 头部修改功能实现。你可以使用 Squid 的配置文件,在请求经过时检查 User-Agent 头部并进行修改。
要在 OpenWRT 上使用 Squid 来修改 HTTP 流量的 User-Agent 头部,你可以按照以下步骤进行配置:
1. 安装 Squid:
在 OpenWRT 上安装 Squid 软件包。你可以通过 SSH 连接到你的路由器,然后使用 opkg 包管理工具安装 Squid:
opkg update
opkg install squid
2. 配置 Squid:
编辑 Squid 的配置文件 /etc/squid/squid.conf
,你可以使用 vi 或 nano 编辑器进行编辑:
vi /etc/squid/squid.conf
在配置文件中添加以下内容:
acl myuseragent browser User-Agent "Your_Desired_User_Agent" request_header_access User-Agent deny myuseragent request_header_replace User-Agent "Your_Desired_User_Agent"
将 Your_Desired_User_Agent
替换为你期望的 User-Agent 字符串。
3. 重启 Squid:
保存配置文件并退出编辑器。然后重新启动 Squid 服务,使配置生效:
/etc/init.d/squid restart
4. 测试配置:
使用浏览器或其他工具发送 HTTP 请求,然后检查请求头部是否包含了你所配置的 User-Agent。你可以访问一些提供 User-Agent 检测的网站,比如 httpbin.org,来验证 User-Agent 头部是否被修改。
以上步骤是基本的配置步骤。根据你的具体需求和环境,可能需要进一步调整 Squid 的配置。此外,记得保持 Squid 的安全性配置,确保只有授权的用户能够访问 Squid 服务。
修改 User-Agent 头部可能会影响到一些网站或服务的正常访问,因为一些网站可能会根据 User-Agent 头部来做一些特定的逻辑处理。因此,在进行修改时,务必谨慎并进行充分的测试。
一些其他的思路
既然知道了原理那我们的windows电脑也可以实现认证,也不用抓包了,直接在电脑端连接进行认证,然后打开电脑的热点,如果设备比较多,我们把有线网卡的网络共享出去,接上路由器,然后你们懂了吧,只需要在电脑上实现伪装防止检测,也可以实现一样的功能,有的学校检测并不严格,但是校园网的检测方法有很多,所以,这里只是简单的说一下。
评论区