V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mikewang
V2EX  ›  宽带症候群

FakeHTTP - 伪装 TCP 连接为 HTTP,解除白名单限速

  mikewang · 2025 年 6 月 1 日 · 30476 次点击
这是一个创建于 224 天前的主题,其中的信息可能已经有所发展或是发生改变。

FakeHTTP

https://github.com/MikeWang000000/FakeHTTP


原理:

在 TCP 三次握手之后,立即发送一个 HTTP GET 请求,Host 为指定域名。使用 NFQUEUE 实现。


相关帖子:

  • /t/1118730 [长文] 移动白名单上传限速机制,以及解决办法
  • /t/1120910 [未测试] 绕过上海电信白名单限速

命令(需要 sudo ):

fakehttp -h www.example.com -i eth0

特点:

因为 nf_deaf 是内核模块,需要手动编译,有一定使用门槛。FakeHTTP 选择使用 iptables + NFQUEUE 方案,使用 musl 静态编译,通用全部主流 Linux 发行版。

一些说明:

  • iptables ( iptables-legacy 或者 iptables-nft 都行)规则都在 mangle 表内。
  • FakeHTTP 检查入站的第一个 ACK 或者 SYN-ACK ,后续数据包打上 fwmark 不再检查。
  • TTL 值默认为 3 ,可以通过 -t <ttl> 调整。要让这个 HTTP 数据包刚好通过限速检查,但不被目标服务器收到。
  • 精简的 OpenWRT 可能需要 opkg install kmod-...,主要是要有 nfqueue 、conntrack 功能。
  • 不支持 WSL (比较麻烦)

特别说明:

首次使用 FakeHTTP ,请不要远程操作。若使用不当,可能造成远程机器断网。


备注:

目前因为 NAT 规则还没有适配,仅支持本机解除限速。后续会支持下游机器。

第 1 条附言  ·  2025 年 6 月 4 日

NAT 已适配。nft 规则 和 IPv6 在日程中,敬请关注。

TG 交流群:https://t.me/hellonatter

这里有 Natter 的作者(本人)和 NATMap 的作者 @heiher,以及热心群友们,共用同一个群聊。欢迎交流。

178 条回复    2025-12-25 10:31:49 +08:00
1  2  
nicefrp
    1
nicefrp  
   2025 年 6 月 1 日
star 了
qaz741wsd859
    2
qaz741wsd859  
   2025 年 6 月 1 日
问个小白问题:这对入站和出站连接都生效么?
NewYear
    3
NewYear  
   2025 年 6 月 1 日
困惑,这个是用于“回家”吗,也就是说需要有外网 IP ,而且被检测为家用宽带开放 HTTP 服务?
microka
    4
microka  
   2025 年 6 月 1 日
感谢,先收藏了,正好需要。
mikewang
    5
mikewang  
OP
   2025 年 6 月 1 日
#2 @qaz741wsd859 入站出站都生效。主要针对出站,入站还在测试中。

#3 @NewYear 不是,这个不是协议。和是否有公网/开放端口没有关系。可以通俗的理解为:在正常的 TCP 传输中加一点 HTTP 特征,骗过限速。

FakeHTTP 只处理已有的 TCP 报文,自身不提供服务。
alpha9318
    6
alpha9318  
   2025 年 6 月 1 日
支持一下👍
march1993
    7
march1993  
   2025 年 6 月 1 日
何苦要用到内核模块,本地实现一个 socks5 client 把流量加上 http 头发到目标主机不就好了吗。。
povsister
    8
povsister  
   2025 年 6 月 1 日
这个思路真是 6
mikewang
    9
mikewang  
OP
   2025 年 6 月 1 日   ❤️ 1
@march1993 #7
?目标端口不认识 HTTP 怎么通信
geekvcn
    10
geekvcn  
   2025 年 6 月 1 日
没用,我这是单线程限速 5M ,但是总速不限制,投诉就说上传没问题达标,因为总速确实能达到,但是 Github 发布项目这类单线程上传永远 5M 。用之前那个内核模块试了还是铁打的单线程上传 5M
geekvcn
    11
geekvcn  
   2025 年 6 月 1 日   ❤️ 1
root@route:/tmp/upload# ./fakehttp -h 4gsuzhou1.speedtest.jsinfo.net.prod.hosts.ooklaserver.net -i pppoe-wan
Sun Jun 1 15:31:50 2025 [main() - src/fakehttp_nfq.c:501] FakeHTTP version 0.9.0
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:381] 104.18.31.1:80 ===ACK===> 114.*.*.228:48726
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:392] (*) 104.18.31.1:80 <===HTTP(*)=== 114.*.*.228:48726
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:348] 104.18.31.1:80 ===SYN-ACK===> 114.*.*.228:55182
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:363] 104.18.31.1:80 <===ACK(*)=== 114.*.*.228:55182
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:374] 104.18.31.1:80 <===HTTP(*)=== 114.*.*.228:55182
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:381] 104.18.31.1:80 ===ACK===> 114.*.*.228:54762
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:392] (*) 104.18.31.1:80 <===HTTP(*)=== 114.*.*.228:54762
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:381] 104.18.31.1:80 ===ACK===> 114.*.*.228:54762
Sun Jun 1 15:31:53 2025 [callback() - src/fakehttp_nfq.c:392] (*) 104.18.31.1:80 <===HTTP(*)=== 114.*.*.228:54762

用的绝对是白名单域名,所以我总结了又两个限速节点,一个是出省前,一个是出国前,后者目前基本没办法破,前者只要流量不是太离谱就不会被限制
est
    12
est  
   2025 年 6 月 1 日
@allin1 pcdn 警察快来看,这个如果被 pcdn 利用拿来刷流量怎么办啊。
Terminl
    13
Terminl  
   2025 年 6 月 1 日
@mikewang 7#的意思是实现一个 socks5 代理转发,不通过内核转发。
allin1
    14
allin1  
   2025 年 6 月 1 日
@est 你就是 pcdn 的,所以是你要拿来刷流量吗
https://www.v2ex.com/t/1135261?p=1#r_16319720
对自己名声真有自信
slowman
    15
slowman  
   2025 年 6 月 1 日
谢谢, openwrt 用上了
mikewang
    16
mikewang  
OP
   2025 年 6 月 1 日   ❤️ 2
@Terminl #13
可能是你误解了其中的原理。FakeHTTP 只插入,不转发。

SYN -- SYN-ACK -- ACK -*- 数据 1 -- 数据 2 ...

FakeHTTP 在 [ ACK -*- 数据 1 ] 之间,直接对外发送含有 HTTP 特征的 TCP 报文,不涉及任何转发。

nfqueue 的作用是:1. 截取通信中的数据包 2. 拦截 TCP 栈处理流程,将 HTTP 特征在 [数据 1] 前发送出去。

转发全部流量是消耗资源且会带来延迟的,FakeHTTP 不会采用这种方式。
imokkkk
    17
imokkkk  
   2025 年 6 月 1 日
@1423 头像太帅辣
ArcherLeo
    18
ArcherLeo  
   2025 年 6 月 1 日
有新发现,我拿了我类原生 Android 12 的机器试了下(已经 ROOT ),如果你手机挂了梯子的软件,然后,再用“VPN 热点”软件开启共享,似乎也有效,我见终端有输出。
ArcherLeo
    19
ArcherLeo  
   2025 年 6 月 1 日
我手机是开了 USB 网络共享模式的,且绑定了 VPN 热点,似乎对 NAT 下的设备都有效,前提是得开着 VPN 软件,VPN 状态也得是开的状态。
dizhang
    20
dizhang  
   2025 年 6 月 1 日
请问下我上海电信精品网用户,最近半年一直被电信限制 pt 上行只有 1-2MB/s ,测速正常是上行 300mb/s ,用的是软路由,系统是爱快,有没有什么方法可以解除这种限速,万分感谢!
igamebox
    21
igamebox  
   2025 年 6 月 1 日
关了再开提示

Sun Jun 1 23:18:24 2025 [main() - src/fakehttp_nfq.c:565] ERROR: nfq_create_queue()
mikewang
    22
mikewang  
OP
   2025 年 6 月 2 日   ❤️ 1
@dizhang #20 根据你描述这种情况来看,FakeHTTP 就能解决这个问题。把 -h 参数指定为测速网站域名就好。
爱快是 Linux 内核,但估计也是精简掉 nfqueue 功能了。可以试试,不行还是得装内核扩展。
像 Debian / Ubuntu / Fedora 等 Linux 发行版肯定是没问题的,开箱即用。

@igamebox #21 大概率是没退干净,用 ps 命令或者 pgrep fakehttp 看下进程号
Ipsum
    23
Ipsum  
   2025 年 6 月 2 日 via Android
有点意思,下来看看。
qwvy2g
    24
qwvy2g  
   2025 年 6 月 2 日 via Android
假如路由器有硬件加速,这个还有用吗?
FastAce
    25
FastAce  
   2025 年 6 月 2 日 via Android
@mikewang 不知道免流场景能不能用,能用不得刷爆
dddedd
    26
dddedd  
   2025 年 6 月 2 日 via Android
@1423 hdr 亮瞎了🤣
microka
    27
microka  
   2025 年 6 月 2 日
我是 ARMv8 的 ImmortalWrt ,下载了 fakehttp-linux-arm64.tar.gz
将解压出来的两个文件上传到 ImmortalWrt 的 root 目录,并设置执行权限
root ssh 登录 ImmortalWrt ,进入 /root 目录,执行 fakehttp -h www.speedtest.cn -i wan
提示 -ash: fakehttp: not found
请问应如何使用呢?
Ipsum
    28
Ipsum  
   2025 年 6 月 2 日 via Android
@microka 试试 ./xxx
microka
    29
microka  
   2025 年 6 月 2 日
@Ipsum #28 可以了,谢谢
qwvy2g
    30
qwvy2g  
   2025 年 6 月 2 日 via Android
用的是 CPE 设备名字 wwan0 ,运行后没有输出日志,但是能明显感觉出来打开网页没有之前迟滞感。
Rokaki
    31
Rokaki  
   2025 年 6 月 2 日
问个小白问题,插入的额外数据到对方服务器不是无法识别吗
mikewang
    32
mikewang  
OP
   2025 年 6 月 2 日
@Rokaki #31 对方收不到的。详见上文 [一些说明] 第三条解释。
Lentin
    33
Lentin  
   2025 年 6 月 2 日
似乎没有针对 ipv6 进行处理 可以加一下吗?
NewYear
    34
NewYear  
   2025 年 6 月 2 日
@mikewang #32

想了好久都没看明白啥原理,看到楼上你的提示才发现。

“TTL 值默认为 3”

这句话是如此的普通,杀伤力是如此的强大,好好的 TTL 机制竟然能玩出这种效果,真就很离谱。

你说的不支持 NAT ,是指路由器会重新对 TCP 包进行编号,导致服务器认为“前面有个数据包我咋一直没收到”吧。

唉,看你们各种玩出花,我只能跟着你们思路走,就有种白学了网络协议的感觉。

而且知道是一回事,要做到又是一回事,我的感受俩字,太牛逼了!!!
qwvy2g
    35
qwvy2g  
   2025 年 6 月 2 日 via Android
@Rokaki ttl 很小可能还没到运营商骨干网就丢了。
NewYear
    36
NewYear  
   2025 年 6 月 2 日
哈哈哈,你这么“天秀”,会让很多学网络的人觉得自己很呆……


另外,这种特征明显,应该很容易识别,不过却也无法简简单单的识别,对设备的要求应该不低。
qwvy2g
    37
qwvy2g  
   2025 年 6 月 2 日 via Android
是运营商先不讲无德,测速白名单这是以前长宽,鹏博士等二级运营商干的事。
ioooou
    38
ioooou  
   2025 年 6 月 2 日
@mikewang 在 Debian12 上运行时提示:

bash fakehttp -h www.speedtest.cn -i eth0
Mon Jun 2 01:18:04 2025 [main() - src/fakehttp_nfq.c:501] FakeHTTP version 0.9.1
iptables v1.8.9 (nf_tables): Could not fetch rule set generation id: Invalid argument

请问如何解决?
microka
    39
microka  
   2025 年 6 月 2 日
请问这个对 IPv6 连接也生效吗?
rick13
    40
rick13  
   2025 年 6 月 2 日
@1423 老哥你这头像太强了
Y25tIGxpdmlk
    41
Y25tIGxpdmlk  
   2025 年 6 月 2 日
@rick13 #40 为什么都说强,我怎么没看出区别?需要手机 APP 才能看到 HDR 效果吗?苹果还是安卓哪个 APP 支持 HDR 头像显示的,我试试
rick13
    42
rick13  
   2025 年 6 月 2 日
@Y25tIGxpdmlk macOS ,chrome 浏览器,我手机上用第三方 app 反倒看不到
rick13
    43
rick13  
   2025 年 6 月 2 日
@Y25tIGxpdmlk 怪了,用 macOS 和 iOS 的 Safari 看不到,用 macOS 的 chrome 就能,谷歌倒反天罡
zjsxwc
    44
zjsxwc  
   2025 年 6 月 2 日
是这样的原理吗?

不用 fakehttp 时的请求内容:
```
[IP 头部: 源 IP=客户端 IP, 目标 IP=1.2.3.4]
[TCP 头部: 源端口=随机端口, 目标端口=1234]
[SSH 协议数据: SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.5 ...]
```
因为不带 http 特征,于是这种方式会被限速。



用了 fakehttp 的请求内容:
```
第一个数据包:[IP 头部: 源 IP=客户端 IP, 目标 IP=1.2.3.4]
[TCP 头部: 源端口=随机端口, 目标端口=1234]
[HTTP 请求:
GET / HTTP/1.1\r\n
Host: www.example.com\r\n
...
]
后续 N 个数据包:[IP 头部: 源 IP=客户端 IP, 目标 IP=1.2.3.4]
[TCP 头部: 源端口=随机端口, 目标端口=1234]
[原始 TCP 数据: 如 SSH 协议数据包、自定义应用数据]
```
带了 http 特征,于是这种方式不会限速。
dizhang
    45
dizhang  
   2025 年 6 月 2 日
@mikewang 爱快好像没有可以定制的地方,比如你说的装内核扩展啊,不过还是多谢指点了
Lentin
    46
Lentin  
   2025 年 6 月 2 日
@dizhang #45 ikuai 比较封闭,似乎不支持添加模块 建议单独用 openwrt 当边界网关才能实现
kingsmart
    47
kingsmart  
   2025 年 6 月 2 日
@Lentin 用 opwrt 旁路由该如何实现?
dizhang
    48
dizhang  
   2025 年 6 月 2 日
@Lentin 谢谢,是说软路由安装 openwrt 拨号是吗
mikewang
    49
mikewang  
OP
   2025 年 6 月 2 日
#34 @NewYear
没错,TTL 是关键。不支持 NAT 是因为我写的 iptables 规则有点问题,不应在 PREROUTING 链处理。最新版本已修复。

#35 @qwvy2g
TTL 值也可以自行修改 `-t` 调大,如果你觉得不够用。当然设置太大了,被服务器收到就有问题了。服务器多半会回给你一个 RST 。

#38 @ioooou
看起来是你正使用 iptables-nft ,但是是不是有 Docker 或者其他程序在使用 iptables-legacy 导致冲突。
试试 sudo update-alternatives --config iptables ,切换为 iptables-legacy 。

#39 @microka
IPv6 还没有适配,将来会考虑。

#44 @zjsxwc
可以大致这样理解。不过 HTTP 特征的数据包和后续真正的数据包是共用同一个 TCP Sequence 的。
HTTP 特征由于 TTL 值很低,被半路丢弃,目标服务器收不到。
opengg
    50
opengg  
   2025 年 6 月 2 日 via Android
服务端需要处理吗?
mikewang
    51
mikewang  
OP
   2025 年 6 月 2 日
#50 @opengg
不需要。HTTP 特征由于 TTL 值很低,被半路丢弃,目标服务器收不到,所以不需要任何处理。
marsteel
    52
marsteel  
   2025 年 6 月 2 日
大众汽车公司去年 9 月份承认,他们在美国的柴油车上安装了一个“欺骗装置”或软件,能够操纵和歪曲汽车排放的检测数据。 :D
microka
    53
microka  
   2025 年 6 月 3 日
大佬,目前在 openwrt 上使用,本地 Windows 要保持 ssh 运行,请问有什么办法在其在 openwrt 上独立运行?
microka
    54
microka  
   2025 年 6 月 3 日
Mon Jun 2 18:47:07 2025 [main() - src/fakehttp.c:812] ERROR: recv(): No buffer space available
刚重启路由器,运行后跑测速,没一会儿就崩了,这个有办法解决吗?
mikewang
    55
mikewang  
OP
   2025 年 6 月 3 日
#53 @microka
目前可以通过 nohup 命令在后台运行(可以网上查一下它的用法)。

以后的版本可以通过 `-d` 命令后台运行。
FakeHTTP 目前还是 beta 公测状态,在 v1.0 之前还有不少功能需要完善( IPv6/输出日志到文件/后台运行/支持多网络接口/...),以及 bug 修复。

#54 @microka
感觉是短时间建立了大量的 TCP 连接,然后你的路由器来不及处理了🤦‍♂️ 可以把日志发到 GitHub issue 上面(可码掉 IP 地址),然后我看一下怎么改进。
microka
    56
microka  
   2025 年 6 月 3 日
@mikewang #55 感谢大佬,已提 issue ,麻烦了~
fengyaochen
    57
fengyaochen  
   2025 年 6 月 3 日 via iPhone
上海移动有没有白名单地址可以伪装,晚高峰到上海联通就不限速到上海电信就限速,这个应该没用吧
freedomNet
    58
freedomNet  
   2025 年 6 月 3 日
发现小小的问题,如果用 kill 就不能再 ssh 服务器,但如果是 exiting normally ,那就没问题。遇到这种问题,都会特意运行一次,然后再用 Ctrl + C exit normally.
mikewang
    59
mikewang  
OP
   2025 年 6 月 3 日   ❤️ 1
@fengyaochen #57
有可能只是晚高峰正常拥堵,线路不好。FakeHTTP 只能解决对基于 HTTP 域名(不)限速的场景。

@freedomNet #58
因为直接 kill ,将不给 FakeHTTP 机会去清除它加的 iptables 规则,导致队列阻塞(没有 fakehttp 进程去消化这些 SYN-ACK/ACK 数据包了)。
这个问题其实挺重要的,今天晚上的版本会解决这个问题。
yyysuo
    60
yyysuo  
   2025 年 6 月 3 日
想请教一下,如果用 openwrt 裸核开了 sing-box 开了 tun+auto_redirect 会有效吗,sing-box 本身也会添加 nft 规则的。kmod-nft-queue
iptables-mod-nfqueue
这 2 个包默认不带,自行安装是有效的么?
goodryb
    61
goodryb  
   2025 年 6 月 3 日
@imokkkk 直接 block ,一切都恢复平静了
Lentin
    62
Lentin  
   2025 年 6 月 3 日
我的光猫是路由模式的,fakehttp 跑在旁路,WiFi 设备在访问光猫公网端口对应的旁路端口会被 nat 为公网源地址访问内网地址,fakehttp 处理之后会导致访问不了,大佬看看有没有更优雅的方法解决一下,我之前用的这个方法:
https://www.v2ex.com/t/1120910?p=1#r_16192422
Zeaxion
    63
Zeaxion  
   2025 年 6 月 3 日
似乎对 TLS 无效啊,坐标 028 ,v2 wss 协议,省内点对点,fake 改头,也起不来速度
协议换成 v2 ws ,不加 tls ,fake 改头,可以
hackroad
    64
hackroad  
   2025 年 6 月 3 日
routeros 不适用,得在前面再挂一层。
mikewang
    65
mikewang  
OP
   2025 年 6 月 3 日
#60 @yyysuo
FakeHTTP 会新增一个优先级最高的规则,但是只匹配第一个 SYN-ACK / ACK 。因此我觉得不太会影响别的组件。
kmod 用 opkg 能装的上,就是能用的,不然安装时就会报错。

#62 @yyysuo
你这种情况相当尴尬,ttl=3 意味着半径为 3 以内的公网 IP 主机都没法正常通信( FakeHTTP 做了局域网 IP 排除,但是你很不幸地被 NAT 成公网了)
你把匹配的数据包 -j MARK --set-mark 512 吧(默认值,或者是你设定的-m 值),匹配这个值的数据包不会被 FakeHTTP 处理。暂时没想到别的办法。
songofsaya
    66
songofsaya  
   2025 年 6 月 3 日
我只觉得太强了,Star 了~
Lentin
    67
Lentin  
   2025 年 6 月 3 日
@mikewang #65

思来想去,还是用一个比较 2B 的方法 每五分钟执行一次 iptables 规则
#!/bin/bash
PUBIP=$(curl -s curl https://4.ipw.cn) || exit 1
iptables -t mangle -S POSTROUTING | grep -q "$PUBIP" && exit 0
iptables -t mangle -I POSTROUTING -d $PUBIP -j MARK --set-mark 512
bfdh
    68
bfdh  
   2025 年 6 月 3 日   ❤️ 1
关于 TTL 有个想法,增加一个动态计算的功能,因为 TTL 的典型值一般为 32/64/128/255 (不确定实际应用中有多少服务器会修改这个值),那么根据收到报文的 TTL 值可以推测出中间经过的跳数,进而动态地设置每条连接的 TTL 值。

另外,iptables 操作建议加行-w 参数,否则可能会因为有其他 iptables 实例在运行导致命令失败,尤其是在路由器上。
mikewang
    69
mikewang  
OP
   2025 年 6 月 3 日
@bfdh #68

1 )往返的路径不一定是同一条,估算容易出问题。虽然大多数情况是差不多的,但是没有 100%把握就需要容我考虑一下。
2 )-w 参数在旧版 iptables 不支持,会直接报错,因此考虑兼容性我没有写上。
kuanat
    70
kuanat  
   2025 年 6 月 3 日 via Android
这个思路有意思,手动点赞
chord
    71
chord  
   2025 年 6 月 3 日
理论上在 TCP 应用层的层面可以实现吗?
playboy0
    72
playboy0  
   2025 年 6 月 3 日
这个作者的很多项目都很秀,我是从 Natter 接触到的,不知道作者平时咋学习的,实在佩服
chord
    73
chord  
   2025 年 6 月 3 日
有没有办法通过本地的 socks5 代理转发,不通过内核转发。
mikewang
    74
mikewang  
OP
   2025 年 6 月 3 日
@bfdh #68

查了一下,`-w` 是在 v1.4.20 支持的,已经是十多年前了。已更新采用 `-w` 选项,感谢建议。
mikewang
    75
mikewang  
OP
   2025 年 6 月 3 日
#71 @chord
不可以的,详见 16 楼。这里没有涉及转发,并且插入的 TCP 报文是特殊构造的,可以被中途丢弃且不影响原有 TCP 连接。
你可以简单理解为 FakeHTTP 工作在旁路(但实际上是队列处理的)。
jja
    76
jja  
   2025 年 6 月 4 日 via iPhone
太强了。请问是否可以在 docker+macvlan 网络+NET_ADMIN 权限的环境中运行呢?我目前的旁路网关是这样跑的。
mikewang
    77
mikewang  
OP
   2025 年 6 月 4 日
@jja #76
我不确定容器下的 iptables 能否正常工作,试了才知道。
需要的权限是:CAP_NET_RAW + CAP_NET_ADMIN
--net=host 肯定是没问题的。
jja
    78
jja  
   2025 年 6 月 4 日 via iPhone
楼上这么多跑在 OpenWrt 上的,但是这不是还不支持 NAT 吗 🤔
git00ll
    79
git00ll  
   2025 年 6 月 4 日
@1423 头像咋这么亮
mikewang
    80
mikewang  
OP
   2025 年 6 月 4 日
@jja #78 已经支持。
a9k1n9
    81
a9k1n9  
   2025 年 6 月 4 日
手机端实行起来太麻烦了,主要是 iptables connbytes 模块。
shiyunjin
    82
shiyunjin  
   2025 年 6 月 4 日
会加上原生 nft 支持吗?
mikewang
    83
mikewang  
OP
   2025 年 6 月 4 日
#81 @a9k1n9 connbytes 是我最近才加上的,其实不重要,后面我打算直接忽略报错。

#82 @shiyunjin 会加上的。(其实如果谁会用 iptables-translate 工具翻译一下,帮我提个 PR 就好了)最近先修 bug ,修完加上 nft 和 ipv6
chord
    84
chord  
   2025 年 6 月 5 日
@mikewang 会不会考虑支持 WINDOWS 系统?
tenwx
    85
tenwx  
   2025 年 6 月 5 日
@FastAce 我也想到了这个,感觉可行
mikewang
    86
mikewang  
OP
   2025 年 6 月 5 日
@chord #84 FakeHTTP 基于 NFQUEUE 编写,是和 Linux 内核高度绑定的。
zzyyzz
    87
zzyyzz  
   2025 年 6 月 5 日
湖南电信有用,不开启前 iperf 上传到阿里云服务器,限速在 20Mbps 。
开启后,恢复到 50Mbps 。

以下为实验,按顺序操作:
1.阿里云服务器开启 iperf3 5201 端口;
2.关闭 fakehttp ,上传 20Mbps ;
3.开启 fakehttp ,上传 50Mbps ;
4.关闭 fakehttp ,上传 50Mbps ;
5.阿里云服务器开启 iperf3 8085 端口;
6.关闭 fakehttp ,上传 20Mbps ;
7.阿里云服务器开启 iperf3 5201 端口;
8.关闭 fakehttp ,上传 50Mbps ;
9.开启 fakehttp ,上传 50Mbps ;

可以得出结论,湖南电信应该是目的 ip+目的端口白名单模式,什么时候从白名单移出未知;
湖南其余运营商我名下宽带暂未限速。
colinzhao
    88
colinzhao  
   2025 年 6 月 5 日
在 openwrt 上运行,如果同时跑着 clash 会有冲突吗
godymho
    89
godymho  
   2025 年 6 月 5 日
@1423 为什么你这个头像要明显亮一点,hdr 吗
slowman
    90
slowman  
   2025 年 6 月 6 日
@godymho 本站搜索 hdr 头像 有答案
mikewang
    91
mikewang  
OP
   2025 年 6 月 6 日
@Lentin #67
更新一下,因为默认值 512 与 mwan3 的默认掩码冲突了(当时没发现),v0.9.5 之后,默认值改为 0x8000 ,65 楼回答作废,更新为 -j MARK --set-mark 0x8000 ,谢谢~

@colinzhao #88
理论上不应和任何其他工具发生冲突。如果出现报错或者其他问题,欢迎汇报。
laev
    92
laev  
   2025 年 6 月 6 日
@1423 被管理看到你要被 ban
c398425861
    93
c398425861  
   2025 年 6 月 6 日
manjaro 要装哪个包,报错
Fri Jun 6 20:37:41 2025 [main() - src/fakehttp.c:921] FakeHTTP version 0.9.6
Fri Jun 6 20:37:41 2025 [main() - src/fakehttp.c:1012] ERROR: nfq_create_queue(): Invalid argument (Missing kernel module?)
157003892
    94
157003892  
   2025 年 6 月 6 日
让我想起了多年前用 openvpn 免流的日子
Mast
    95
Mast  
   2025 年 6 月 8 日
希望大佬后期出个支持 OP 的面板
aa51513
    96
aa51513  
   2025 年 6 月 9 日
这难道不应该是一个客户端+一个服务端模式?
只运行客户端就行了?那添加的 http 伪装信息,我的 ssh server 怎么认识?
zyp38263547
    97
zyp38263547  
   2025 年 6 月 9 日
emmm,那用 routeros 还有机会玩吗。先把 syn,ack 包转发到 openwrt ,再由 openwrt 发伪装包,得考虑怎么跳过 nat 的问题。
thinsychen
    98
thinsychen  
   2025 年 6 月 9 日
routerOS 主路由有什么好的方案?
wm5d8b
    99
wm5d8b  
   2025 年 6 月 9 日
浙江电信对于 http 照样白名单,试下来除了 Home Assistant 和 Synology 、Qnap 的页面,其他页面对外暴露,请求一次端口就封了
Lentin
    100
Lentin  
   2025 年 6 月 9 日
更新一下脚本 解决本地访问本地公网 IP 的 nat loopback 问题,crontab 五分钟执行一次
#!/bin/bash
PUBIP=$(curl -s http://ipv4.gdt.qq.com/get_client_ip) || exit 1
nft list chain ip mangle bypass | grep -q $PUBIP && exit 0
nft -f - <<EOF
flush table ip mangle
table ip mangle {
chain bypass {
type filter hook prerouting priority mangle -10; policy accept;
ip saddr $PUBIP meta mark set 0x8000
}
}
EOF
1  2  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2730 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 15:08 · PVG 23:08 · LAX 07:08 · JFK 10:08
♥ Do have faith in what you're doing.