CQU校园网解决方案

本文将详细讲解本人(一名刚刚升入大二的重大学子)大一时两周军训闲暇时间的校园网折腾历程,本人很业余,文章内容都是自己从网上不同来源信息的理解融合,这篇文章完成时间是2025年7月,即我实际使用校园网刚满一年整。

入学前的我还憧憬着大学生活,电竞房的宿舍,千兆的网速,热心的舍友,60分万岁…等到真正进来了才知道……
电竞房——花了一点时间,搞定了,极繁主义集大成者!或许后续再写一篇文章介绍?
校园网——本文的重点
热心的舍友——?
好吧整体来说还是很爽的
可是重庆真的好热啊——T^T


现状:关于CQU的校园网

CQU校园网包年套餐只提供了30Mbps的带宽,一年前写的草率了,主播入住一年校园网发生了很多变化,现在我来详细介绍一下CQU目前校园网的套餐

重大校园网套餐:

普通套餐:只包含无线网和宿舍内宽带

速度 包月不限速 包年不限速 10GB限量
30Mbps(已下架) 30¥/月 300¥/年 10¥/10GB(超出部分2¥/GB)
100Mbps(已下架) 60¥/月
50Mbps(新套餐) 30¥/月 300¥/年 10¥/10GB(超出部分2¥/GB)
150Mbps(新套餐) 60¥/月

融合套餐:包含无线网、宿舍内宽带以及一张电话卡

以下我只介绍电信的套餐,电信是重大校园网的服务商

价位 校园网 流量 通话分钟 其他福利(视频会员真的很值
29元/月 不包含校园网 20G通用+30G定向流量+240G校内流量 300分钟 套餐内每月可领取音视频会员(你能想到的视频会员大部分都可以选择)
39元/月 不包含校园网 20G通用+30G定向流量+240G校内流量 300分钟 套餐内每月可领取音视频会员(你能想到的视频会员大部分都可以选择)+Mifi(随身Wifi)
59元/月 150Mbps宽带(等同于60¥/月的普通套餐) 20G通用+30G定向流量+240G校内流量 300分钟 套餐内每月可领取音视频会员(你能想到的视频会员大部分都可以选择)

注意!!!以上所有套餐里我只推荐融合套餐的59元档
至于原因——

校园网奇谭(其一)
重大的校园网去年多次更新,影响最大的就是加入了严格限速,早期重大的校园网是ipv4计费限速,ipv6免费不限速,这样其实对于我们有两个优势,第一是通过一些技术可以实现校园网的免流不限速,第二对于一些本来就支持ipv6的服务商比如国内的腾讯等互联网大厂以及大部分的海外厂商包括Steam,从他们的服务器下载资源时可以通过ipv6跑到惊人的速度,主播第一年选择的套餐是30Mbps的包年套餐,Steam选择合适的节点配合重定向工具速度可以达到300Mbps以上无上限,我也尝试了通过VPS服务器走ipv6线路实现免流,总之这样的操作已经绝版,这样的故事也已经成为历史——
不过后来可能良心发现提速了


校内上网的一些可行方案

入住的前一天晚上我就花了一晚上时间研究了以下几个方案:

  1. 手机热点
    目前可能门槛最低,网络质量虽然一般,但是是绝大多数清纯大学生的都能轻易上手的方案。
    那么代价是什么呢?
    首先目前市面上已经没有所谓无限流量的套餐,下载大型游戏或软件时流量根本不够,其次方便快捷的同时带来的是不稳定的网络、手机的高功率负载,长时间使用甚至可能给手机带来不可逆的损伤!所以为了手机爹的健康长寿这个方案是最先被pass掉的

  2. CPE设备
    CPE(CustomerPremisesEquipment,客户端设备)是指位于用户端的网络终端设备,用于与运营商对接服务,是网络解决方案的重要组成部分,通常是路由器、防火墙或者路由安全一体机等设备。说白了就是一个专业的用于收集信号的热点共享设备,可以说是随身wifi的ProPlusMax,同样需要购买流量卡套餐,但是他的网络更稳定,目前市面主流的有华为,鲲鹏等推出的5Gcpe通过恰当调试都能达到500Mbps以上稳定的网络。
    但是!
    目前cpe还没有实现普及,高昂的设备价格,还有额外的流量卡套餐费用使得这成为了目前成本最高的方案,除此之外,cpe稳定的前提是有稳定基站提供信号,不同的学校基站覆盖面积不同,即使有不错的信号覆盖,机器调试门槛也很高,最终也是被我遗憾否决(当然如果有人愿意寄给我一台5gcpe供我“测试”,这说不定也是一个不错的方案😉)

  3. 校园网(最终决定的方案)
    CQU的宿舍宽带口只提供学校的校园网服务,移动联通营业厅的套餐无法接入宿舍,300一年其实不算贵,让人无法接受的是只有30Mbps50Mbps的带宽(计费限速)还有只能连接两台设备(一台电脑一台手机)的设备数限制,那么真的没有办法吗?

校园网的问题大致可以分为两部分来解决

1. 限速问题:(看看就好,无法稳定实现,而且还有VPS服务器成本,无法真正实现免费上网,不如突破设备数限制后利用单线多播提速)

补充:CQU校园网更新后已经彻底无法实现免流不限速,所以如果你是🐛的学生可以跳过了
对于这个问题目前唯一的解决办法就是所谓的“社会工程学”手段
简单说就是混进校园网服务中心给自己账号开特权

限速是我着手解决的第一个问题,目前各大高校校园网限制速度计费的只有IPV4的流量,而公网IPV6的是不计费不限速的。国内的网站大多首选IPV4链接大多都不支持IPV6,国外IPV6更多一点。
当然如果你只是想用Steam下载游戏,那么只需要直接单方面让Steam通过IPV6下载就好,这很简单(应该有人发现将Steam下载服务器改到国外后,校园网下载速度格外的快,原因也是因为这个),具体可以用羽翼城大佬(他的博客:Dogfight360 – 羽翼城个人博客)写的CDN重定向工具讲Steam流量重定向到IPV6,配合他的Usbeam Hosts Editor选择合适的host就可以实现steam的不限速免流下载。
通过以上Steam的例子我们可以得到启发,如果能让我们的流量全部通过IPV6上传下载,我们就可以实现校园网的不限速免流。那么我们也提到了国内很多网站都不支持IPV6,那么有什么办法来让我们全局IPV6访问网站吗?
目前前人为我们提供的方案就是——通过一台支持IPV6的服务器来转发流量
网上有很多教程,大概可以分为两类:
A:国内IPV6服务器直接转发
B:国外服务器间接转发

A方案需要家里一台分配到公网ip的主机,本人离家过远,开始着手时已经到达学校,故此方案放弃,但是仍然优先推荐

B方案简单的说就是先通过IPV6把流量发到国外服务器再转为IPV4返回国内,出去绕一圈,实现了IPV6的“伪装”,进而实现全局的IPV6免流(这里要注意VPS服务器需要租用成本大概一个月5美金)。我参考的是(实现校园网IPv6免流量上网与科学上网 | 搭建VPS ~ 极星网)这篇文章,因为效果一般,不稳定,所以这里不是很推荐,当然可以尝试学习,不成功或者效果不好服务器的租金都可以全额退还。

2. 限制设备数问题(本文的重头戏!)

设备数限制应该是困扰目前大学生最多的校园网问题引出的问题包括且不限于,时不时需要重新登录认证,不能多设备同时使用,不支持热点共享,不支持路由器,不能用其他联网智能设备

校园网检测多设备上网的方法有大致五种

  • TTL检测:IPV4数据包包头的一个特征值,流量每经过一个设备数字减一,目的是防止无限循环的转发占用服务器资源,在这里通过这个字段检测可以区别出设备是否是在经过其他设备共享来上网
  • UA检测:http数据包包头的特征字段,取决于浏览器内核版本等信息,同样可以用来检测共享上网
  • 时间戳检测:数据包转发会有延迟,时间上的差异导致了上下游设备时间戳的不同
  • IP-id检测
  • DPI检测
    目前来看CQU听说只用到了前两种检测方式,具体不清楚我在编译路由器固件时还加入了IPid以及时间戳的防检测

如何实现防检测

  • 针对TTL:直接修改TTL为统一值
  • 针对UA:利用前人开发的ua2f修改数据包UA
    有大佬还在基础上开发了更强大的ua3f(大佬的博客:SunBK201’s Blog
  • 针对IPid:利用Openwrt内核模块rkp-ipid实现修改
  • 针对时间戳:通过局域网中建立NTP服务器统一授时

实现以上的基础是通过强大的Openwrt系统
为了满足我们特定的需求针对不同的路由器我们需要自主编译我们需要的固件,之后再刷入我们的路由器,接下来让我们开始吧


路由器刷机无门槛教程

观前提示

为防止做无用功,有一些观前提示
为解除设备数限制,我们采取路由器刷机的解决方案
本文为低成本低门槛的教学,只讲解最常见的单路由器可实现的方案,如果学校要求不可以使用路由器则可以选择x86架构交换机平替

  • 完成之后的效果:
  1. 可以宿舍内多设备同时上网不受限制
  2. 同一宿舍可以合租合用一个校园网
  3. 可以在宿舍内玩一些智能家居
  • 硬件要求:需要购置可刷机且合适的路由器(我用的是小米红米路由器AC2100搭载的是mt7621芯片,我这里推荐搭载mt7981芯片的路由器可以自行搜索)
  • 网络要求:速度要求不高,但是起码稳定的网络校园网即可
  • 愿意花时间钻研学习,动手能力强
  • 对于我们接下来要做的事情有基本的认知

刷机前准备:

推荐的路由器:因为学校的网速有限我用的闲鱼淘的学校附近的RedmiAC2100架构是MT7621,前几年刷机热门架构。如果你的校园网速度能有个几百兆,推荐最近比较热门的MT7981架构,性能更强。

编译平台选择:

1. 本地虚拟机编译(编译过程复杂,速度慢,但是UA2F在编译时需要修改固件,如果选择UA3F则可以通过云编译即方案一

我一开始选择的编译方法,在VM虚拟机上部署了一个Ubuntu系统,编译环境用Openwrt或者第三方的x-wrt,各有优缺点前者在国内有大量镜像源,相对来说编译中的数据包软件包下载更快,后者是在前者基础上开发的第三方平台,编译更方便,但是国内镜像源少编译中网络资源获取慢,导致编译中难免有断联,出错,时间过长的问题,编译一次可能就得一整个下午,当然编译快慢也看电脑性能,但是第一次编译因为要在线下载编译所需的前置工具,会非常非常慢,这也是让我放弃这个的主要原因……编译一下午发现有error天都塌了T_T
当然如果你网络环境好,可以选择这个方法。
这里参考了B站Up主YeWenXuan64的视频【正片】面对校园网的多设备检测,「我」的解决方案是——

零、编译前准备

0.1、VM虚拟机上部署一个Ubuntu系统(自行查找教程)
0.2、更改系统更新服务器

打开Ubuntu系统设置-关于-软件更新-下载自-选择一个国内的服务器

0.3、打开主目录在根目录下右键打开终端开始后续操作

一、部署编译环境

1.1、更新系统
1
2
sudo apt -y update
sudo apt -y full-upgrade
1.2、部署编译环境
1
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python3 python3-pyelftools libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev python3-setuptools

二、下载OpenWrt及其软件包

2.1、部署(官方版)OpenWrt编译包并更新feeds
1
2
3
4
5
6
7
git clone https://github.com/openwrt/openwrt.git --branch=openwrt-23.05

cd openwrt

./scripts/feeds update -a

./scripts/feeds install -a
2.2、部署UA2F、rkp-IPID等防检测软件包与其他软件包与更新feeds
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
git clone https://github.com/Zxilly/UA2F.git package/UA2F

git clone https://github.com/CHN-beta/rkp-ipid.git package/rkp-ipid

git clone https://github.com/jerrykuku/luci-theme-argon.git package/luci-theme-argon

git clone https://github.com/jerrykuku/luci-app-argon-config.git package/luci-app-argon-config

#git clone https://github.com/lucikap/luci-app-ua2f.git package/luci-app-ua2f

git clone https://github.com/linkease/istore.git package/istore

./scripts/feeds update -a

./scripts/feeds install -a
2.3、更改内核MD5标识的生成为官方的
2.3.1、在openwrt根目录,创建并编写文件名为vermagic,内容为Openwrt 23.05.4发行版的MD5,即如下第二行
1
2
3
#23.05.4

59d1431675acc6823a33c7eb2323daeb

^11cf71

2.3.2、去到openwrt/include/kernel-defaults.mk 更改编译规则,(不用mkhash md5生成,而直接拷贝根目录下的vermagic文件到linux_dir/.vermagic)

搜索字段grep ‘=[ym]’

1
grep '=[ym]' $(LINUX_DIR)/.config.set | LC_ALL=C sort | mkhash md5 > $(LINUX_DIR)/.vermagic

改为

1
cp $(TOPDIR)/vermagic $(LINUX_DIR)/.vermagic
2.3.3、修改自己编译出来的ipk依赖的md5,(即修改package/kernel/linux/Makefile  如果不改这个,编译时生成ipk时,会报错,因为ipk还是依赖于kernel的config文件生成的md5。 这里我们直接读取linux_dir/.vermagic文件)

搜索STAMP_BUILT字段

1
STAMP_BUILT:=$(STAMP_BUILT)_$(shell $(SCRIPT_DIR)/kconfig.pl $(LINUX_DIR)/.config | mkhash md5)

改为

1
STAMP_BUILT:=$(STAMP_BUILT)_$(shell cat $(LINUX_DIR)/.vermagic)

三、配置OpenWrt固件设置

3.1、配置固件各模块

⬆️⬇️移动光标,Enter进入,Y勾选,N取消勾选,按两次Esc离开

1
make menuconfig
  1. 以下为两个示例请根据自己路由器或硬件实际情况选择
  • x86硬件平台设置(选择箭头后对应的)
1
2
3
4
5
6
7
Target System–>x86

Subtarget–>x86_64

Target Profile–>Generic x86/64

Target Images 后两项数字分别改为 256 和 2048
  • RedmiAC2100硬件平台设置
1
2
3
4
5
Target System–>MediaTek Ralink MIPS

Subtarget–>MT7621 based boards

Target Profile–>Xiaomi Redmi Router AC2100
  1. 配置rkp-ipid模块
1
2
3
Kernel modules–>Other modules–>

• kmod-rkp-ipid
  1. 配置ua2f模块
1
2
3
4
5
6
7
Network->Routing and Redirection->

• ua2f

Base system->

• firewall4(默认开启)
  1. 配置iptables模块
1
2
3
4
5
6
7
8
9
10
11
12
13
Network–>Firewall–>选中:

• iptables-mod-filter    #rkp-ipid所需模块

• iptables-mod-ipopt   #防TTL检测依赖

• iptables-mod-u32     #rkp-ipid所需模块

• iptables-nft

Kernel modules–> Netfilter Extensions–>

• kmod-ipt-u32(默认已选)
  1. 加入防TTL检测依赖
1
2
3
4
5
6
7
Network–>Firewall–>

• iptables-mod-ipopt(上面已选)

Kernel modules–> Netfilter Extensions–>

• kmod-ipt-ipopt(默认已选)
  1. 其它依赖
1
2
3
4
5
6
7
8
9
10
11
12
13
Network ->

• ipset

Network -> Firewall ->

• iptables-mod-conntrack-extra

Utilities  -> docker

Utilities  -> dockerd

Kernel modules–>Network Support –>kmod-tun
  1. 基本界面配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
LuCI–>Collections –>

• luci (lede 默认已选)

LuCI–>Modules–>Translations–>

• Chinese Simplified (zh_Hans) (lede 默认已选)

LuCI–>Modules–>

• luci-compat

LuCI–>Applications–>

• luci-app-argon-config

• luci-app-store

• luci-app-ttyd

• luci-app-ua2f

• luci-app-dockerman

LuCI–>Themes–>

• luci-theme-argon (根据需要选管理界面的主题)
3.2、内核编译配置
1
make kernel_menuconfig -j$(nproc) V=cs
1
2
3
4
5
6
7
8
9
10
11
Networking support -> Networking options -> Network packet filtering framework (Netfilter)(先选中再进去) -> Core Netfilter Configuration -> 选中:

• Netfilter NFNETLINK interface

• Netfilter LOG over NFNETLINK interface

• Netfilter connection tracking support

• Connection tracking netlink interface

• NFQUEUE and NFLOG integration with Connection Tracking (打开)

四、开始编译

1
2
3
make download -j$(nproc) V=cs

make -j$(nproc) V=cs

编译时间较长(可能会是一整个下午)请耐心等待,结束后在openwrt/bin/targets/你路由器的target/你路由器的subtarget/
取出带有squashFS-combined-efi.img.gz的镜像文件压缩包,将固件刷入你的路由器这步请根据自己路由器的型号自行检索教程

五、路由器设置

访问软路由的管理界面-系统-启动项-本地启动脚本在”exit 0“前插入以下两部分内容并保存

5.1、UA2F方案启动项
1
2
3
4
5
6
7
8
9
10
11
12
#开机自启UA2F

service ua2f start

service ua2f enable

#防火墙:

iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53

iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53

5.2、防 IPID 检测
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
iptables -t mangle -N IPID_MOD

iptables -t mangle -A FORWARD -j IPID_MOD

iptables -t mangle -A OUTPUT -j IPID_MOD

iptables -t mangle -A IPID_MOD -d 0.0.0.0/8 -j RETURN

iptables -t mangle -A IPID_MOD -d 127.0.0.0/8 -j RETURN

# 由于本校局域网是 A 类网,所以我将这一条注释掉了,具体要不要注释结合你所在的校园网内网类型

# iptables -t mangle -A IPID_MOD -d 10.0.0.0/8 -j RETURN

iptables -t mangle -A IPID_MOD -d 172.16.0.0/12 -j RETURN

iptables -t mangle -A IPID_MOD -d 192.168.0.0/16 -j RETURN

iptables -t mangle -A IPID_MOD -d 255.0.0.0/8 -j RETURN

iptables -t mangle -A IPID_MOD -j MARK --set-xmark 0x10/0x10

# 防时钟偏移检测

iptables -t nat -N ntp_force_local

iptables -t nat -I PREROUTING -p udp --dport 123 -j ntp_force_local

iptables -t nat -A ntp_force_local -d 0.0.0.0/8 -j RETURN

iptables -t nat -A ntp_force_local -d 127.0.0.0/8 -j RETURN

iptables -t nat -A ntp_force_local -d 192.168.0.0/16 -j RETURN

iptables -t nat -A ntp_force_local -s 192.168.0.0/16 -j DNAT --to-destination 192.168.1.1

# 通过 iptables 修改 TTL 值

iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64

# iptables 拒绝 AC 进行 Flash 检测

iptables -I FORWARD -p tcp --sport 80 --tcp-flags ACK ACK -m string --algobm --string " src=\"http://1.1.1." -j DROP
5.3、系统时间,NTP服务器设置
  1. 访问软路由的管理界面-系统-系统-常规设置-时区-Asia/Shanghai-保存并应用
  2. 访问软路由的管理界面-系统-系统-时间同步-删除所有候选NTP服务器并分别加入以下四个
1
2
3
4
5
6
7
8
9
10
11
#NTP服务器

作为 NTP 服务器提供服务

ntp.aliyun.com

time1.cloud.tencent.com

time.ustc.edu.cn

cn.pool.ntp.org
  1. 勾选作为NTP服务器提供服务,绑定NTP服务器选择lan,保存并应用
5.4、更改软件包库的索引版本
  1. 访问软路由的管理界面-系统-软件包-配置opkg-更改distfeeds.conf
  2. 将所有releases/*/targets中*部分改为前面我们选择的23.05.4
  3. 将所有releases/*/packages中*部分改为前面我们选择的23.05.4
5.5、重启软路由

访问软路由的管理界面-系统-重启-执行重启

5.6确认UA2F和rkp-IPid正常工作
  1. 访问软路由的管理界面-状态-系统日志
  2. 查看UA2F和rkp-IPid后面是否有Successful、正常等表示成功的字样
  3. 路由器设置完毕电脑连接网络打开网址UA检测-HTTP查看真实UA是否为一串F
    一切顺利,那么就大功告成了!!!

2. 大佬搭建的的云端编译平台(牛逼,编译速度快,UA2F请勿使用此方案,采用本地编译的方案二

应该说是效率更高门槛更低的方法

零、编译前准备

0.1、打开Openwrt云编译平台Kwrt
0.2、注册并登录

一、编译

1.1、选择你路由器的名称型号
1.2、点击常用软件包添加自己想要的

点一下变色了就是添加上了,不要一下添加一大堆,会挤爆路由器内存的

1.3、在定制软件包中填写我们需要的rkp-ipid及其前置软件包(软件包之间用空格分开)
1
kmod-rkp-ipid iptables-mod-filter iptables-mod-ipopt iptables-mod-u32 iptables-nft kmod-ipt-ipopt ipset iptables-mod-conntrack-extra
1.4、设置一个路由器的IP地址(管理界面的访问地址)和登陆密码
1.5、点击构建新脚本并下载

紧接着根据自己的路由器型号自行搜索教程将固件刷入

二、最后的路由器设置

2.1、连接一个可以稳定使用的网络(有线或无线可以连校园网)
  1. 访问软路由的管理界面-网络-无线-扫描(任意一个)
  2. 连接网络
2.2、登陆终端控制台
  1. 访问软路由的管理界面-服务-终端
  2. 用户名root
  3. 密码是你在Kwrt中设置的
2.3、从URL安装ShellCrash
1
2
3
4
5
6
7
8
#GitHub源(可能需要代理)
export url='https://raw.githubusercontent.com/juewuy/ShellCrash/master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null

#jsDelivrCDN源
export url='https://fastly.jsdelivr.net/gh/juewuy/ShellCrash@master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null

#作者私人源
export url='https://gh.jwsc.eu.org/master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null

选择稳定版-在/etc目录下安装

2.4、打开ShellCrash操作界面完成配置
  1. 终端输入
1
crash
  1. 接下来的选项数字分别为
1
2
3
4
1-路由器设备配置局域网代理
0-否
1-开始导入
2-导入外部配置文件链接
  1. 粘贴以下链接
1
2
#用于UA3F的Clash配置(无外部代理)
https://cdn.jsdelivr.net/gh/SunBK201/UA3F@master/clash/ua3f-cn.yaml
1
2
1-确认导入配置文件
0-不立即启动服务
  1. 接下来的选项数字分别为
1
2
3
4
5
6
2-切换内核文件
3-Clash.Meta内核
0-返回上级菜单
2-内核功能设置
1-切换Clash运行模式
1-Redir模式
  1. 设置代理全部端口并启动Clash服务
1
2
3
4-使只代理常用端口为未开启状态
0-返回上级菜单
1-启动Clash服务
  1. 在终端输入以下内容来安装UA3F并设置其基本参数
1
2
3
4
5
#从URL安装UA3F
opkg update
opkg install curl libcurl luci-compat
export url='https://blog.sunbk201.site/cdn' && sh -c "$(curl -kfsSl $url/install.sh)"
service ua3f reload
1
2
3
4
5
#设置UA3F自动启动
# 启动 UA3F
uci set ua3f.enabled.enabled=1
uci commit ua3f
service ua3f start
2.5、设置本地启动脚本

访问软路由的管理界面-系统-启动项-本地启动脚本在”exit 0“前插入以下部分内容并保存

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 启动 UA3F
uci set ua3f.enabled.enabled=1
uci commit ua3f
service ua3f enable
service ua3f start

#防火墙:
iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53

# 防 IPID 检测
iptables -t mangle -N IPID_MOD
iptables -t mangle -A FORWARD -j IPID_MOD
iptables -t mangle -A OUTPUT -j IPID_MOD
iptables -t mangle -A IPID_MOD -d 0.0.0.0/8 -j RETURN
iptables -t mangle -A IPID_MOD -d 127.0.0.0/8 -j RETURN
# 由于本校局域网是 A 类网,所以我将这一条注释掉了,具体要不要注释结合你所在的校园网内网类型
# iptables -t mangle -A IPID_MOD -d 10.0.0.0/8 -j RETURN
iptables -t mangle -A IPID_MOD -d 172.16.0.0/12 -j RETURN
iptables -t mangle -A IPID_MOD -d 192.168.0.0/16 -j RETURN
iptables -t mangle -A IPID_MOD -d 255.0.0.0/8 -j RETURN
iptables -t mangle -A IPID_MOD -j MARK --set-xmark 0x10/0x10

# 防时钟偏移检测
iptables -t nat -N ntp_force_local
iptables -t nat -I PREROUTING -p udp --dport 123 -j ntp_force_local
iptables -t nat -A ntp_force_local -d 0.0.0.0/8 -j RETURN
iptables -t nat -A ntp_force_local -d 127.0.0.0/8 -j RETURN
iptables -t nat -A ntp_force_local -d 192.168.0.0/16 -j RETURN
iptables -t nat -A ntp_force_local -s 192.168.0.0/16 -j DNAT --to-destination 192.168.1.1

# 通过 iptables 修改 TTL 值
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64

# iptables 拒绝 AC 进行 Flash 检测
iptables -I FORWARD -p tcp --sport 80 --tcp-flags ACK ACK -m string --algobm --string " src=\"http://1.1.1." -j DROP
2.6、设置系统时间,NTP服务器
  1. 访问软路由的管理界面-系统-系统-常规设置-时区-Asia/Shanghai-保存并应用
  2. 访问软路由的管理界面-系统-系统-时间同步-删除所有候选NTP服务器并分别加入以下四个
1
2
3
4
5
6
7
8
9
10
11
#NTP服务器

作为 NTP 服务器提供服务

ntp.aliyun.com

time1.cloud.tencent.com

time.ustc.edu.cn

cn.pool.ntp.org
  1. 勾选作为NTP服务器提供服务,绑定NTP服务器选择lan,保存并应用
2.7重启软路由

访问软路由的管理界面-系统-重启-执行重启

2.8确认UA3F、rkp-IPid和Crash正常工作
  1. 访问软路由的管理界面-服务-终端
  2. 登录终端并输入
1
crash

检查Crash服务是否正在运行
3. 访问软路由的管理界面-终端-UA3F查看UA3F是否为Running状态
4. 访问软路由的管理界面-状态-系统日志查看rkp-IPid后面是否有Successful、正常等字样
5. 路由器设置完毕电脑连接网络打开网址UA检测-HTTP查看真实UA是否为三个F
一切顺利,那么就大功告成了!!!

结语

本文详细分享了关于我对于校园网的种种限制的解析和实践,当然!这不是一个手把手教你反抗校园网安全使用条例的教程,只是我个人学习历程的分享,请勿试图使用本文分享的一些技术手段来扰乱校园网环境与秩序,希望大家能通过本文,提升自己的见识,学习一些新的有用的知识

Author

MathLeee

Posted on

2025-07-23

Updated on

2025-07-23

Licensed under