AI 是否能完全替代码农的 1 点思考
2025-03-22 01:51:00
在最近使用 Copilot 和 Cursor 进行 Coding 的时候,偶尔会考虑现在的 AI 对于开发者到底意味着什么,我感觉其实 AI 带来的最大价值不是彻底取代开发人员,而是大幅提升了领域专家...
AI 生成 UI 设计的 Cursor 实践
2025-03-05 03:31:00
最近在探索 AI Coding in Front-End 的时候看到一篇较为🐂🍺的文章《一个提示词 claude 生成一个 app 的 ui/ux》(UC 震惊部提前预定作者入职)。虽然标题比较震惊,...
论如何打击 LLMs 过度的自信心爆棚,让其产生的内容更准确、真实
2025-02-22 02:03:00
本文为未经 AI 润色的原文如我之前的某次分享,我一直感觉 LLMs 们喜欢胡说八道满嘴放炮,平常大家都说这是「LLMs 的幻觉情况」,但我还是恶意的称呼为它们喜欢胡说八道。在《Does Fine-T...
关于 DeepSeek NSA 论文的一点思考
2025-02-19 01:09:00
今天看到 DeepSeek 团队前几日发布的论文《Native Sparse Attention: Hardware-Aligned and Natively Trainable Sparse Att...
Claude 4:混合型大模型的崭新思路与未来潜力
2025-02-15 02:21:00
今天在 Twitter(求马王爷还我 Twitter 原名!!)看到一个消息,来自一个推文大致提到:「Claude 4 in the coming weeks」,具体内容可以参考这条推文。重点是:Cl...
Deep Research:开源替代方案与未来发展潜力
2025-02-14 01:17:00
最近大家都在谈论 CloseAI 的 Deep Research 模式,称其研究效果非常强大,但面对高达 200???? 的价格,不少人却感到难以承受。幸运的是,开源社区也有不少项目尝试复现类似的效果...
观 OpenAI 广告有 1 点感
2025-02-12 03:19:00
本文为未经 AI 润色的原文今天看了 OpenAI 的广告,一开始只是觉得这个创意很有意思。视频采用了黑白点画风格,从一个小小的圆点开始,随着画面展开,逐渐呈现出越来越复杂的图像,展现了人类历史上各个...
关于 DeepSeek-R1 与 CoT 模型的提示词策略一点记录
2025-02-11 02:23:00
今天在公司和同事们开会,讨论到了 CoT(Chain of Thought)模型 和 通用模型 在提示词策略方面的差异,尤其是与 DeepSeek-R1 的训练过程有关的内容。此话题让我想起了之前阅读...
DeepSeek V3 与 AI 训练新思路:低成本硬件与技术突破
2025-02-09 01:29:00
今天在站会上和同事讨论了从一个 AI 应用团队(即 AI 的使用者)向 AI 全链路团队(即从模型训练到应用全程都参与)转型的可能性。这让我联想到了最近看到的一篇关于 DeepSeek V3 技术的访...
关于「AI 创始人的惨痛教训」系列文章的 1 点感想
2025-02-01 01:36:00
本文为未经 AI 润色的原文我个人一直不相信当前生成式 AI 的能力,认为 AI 总是会胡说八道。年前有一天中午和 Ricky 在食堂,达哥也在边上,我提到如何建立对 AI 在严肃工作领域的信任感。我...
关于「人工智能」分类下文章的说明
2025-02-01 00:43:00
在「人工智能」分类下,发布的所有文章其实来源于我工作中的一些学习笔记。为了将这些笔记更清晰、更易读地呈现给大家,我选择了使用 AI 对内容进行调整和润色。通过这种方式,文章的表达更为流畅,信息传达也更...
对 v2c 进行了一次前端的重构
2024-09-17 20:24:00
0x0自从 2019 年把博客迁移到 Typecho,再到 2020 年用 React 自己写了博客的前端进行了前后端分离后,我的博客前端就几乎没怎么动过了。期间其实也多次想开始重构,但总是因为工作忙...
如何让 uTools 通过代理服务器连接网络
2024-06-18 14:35:00
总的来说就是为 uTools 添加启动参数 --proxy-server 即可通过代理访问网络。备注:此方法只能代理掉 chromium 侧的流量,无法覆盖 uTools 本身非渲染进程的流量、插件 ...
关于这三年:我也是当过美食博主了
2024-05-26 22:15:00
是的,I am back!很久没有更新博客了,一方面是忙于工作无心更新(这是个借口),另一方面是自从 2021 年 8 月发生了丢失数据的问题,导致很多历史文章都消失在互联网长河中。虽然尽了很大的努力...
关于
FydeOS AI LogoFydeOS LogoAI
是如何诞生的
2023-12-06 22:01:00
0x0 为什么要做这个项目 FydeOS Logo AI 项目的初衷是为了让用户可以更加自然地控制操作系统,能够使用自然语言与系统进行交互。例如,通过语音或文本与系统对话,控制软件、查找信息,甚至快速解答工...
[家宴 · 2021]也许是今年最认真的一顿饭,红红火火锅
2021-12-31 23:33:00
在 2020 年,我曾经搞过几次家宴,邀请了一众好友来家里吃吃喝喝。甚至在 V 站加了不少好友,对他们说『下次家宴有空来家里一起吃』,但是事实上因为种种原因,2021 年非但没有邀请 V 友来家里吃饭...
【一场灾难】多站点数据丢失说明
2021-08-23 21:47:16
大概在一个多月前,包括 我的博客、LoveLive.tools(渣男:说话的艺术)、Mr.Task 等网站突然无法访问,服务器无法连接。本来以为只是服务提供商突发故障(之前也出现过,后来都正常恢复),...
[LoveTime] 一个与爱情和时间线相关的项目
2021-03-20 11:11:00
0x0 为什么做这个项目大概在一年前,我注册了 lovetime.tools 的域名。说来也是奇怪,我总是喜欢在脑子里冒出一个想法之后立刻注册相关的域名,但是往往实际完成上线的时间都会拖很久。比如 渣...
有目的 (di) 地 (de) 瞎折腾 —— 为了温暖的被窝而实现远程开机
2021-01-09 13:14:00
0x0这个冬天真的太 TM 的冷了,冷到我想一天 24 小时都呆在床上哪儿也不去。本来在这个美好的周六是可以实现这个同样美好的愿望,但是一大早同事来的电话击碎了我的梦想 —— 线上项目出了点问题需要排...
[家宴・2020] 入冬的第一次聚会,是带些许火辣的味道
2020-11-18 20:00:00
0x0是入冬的日子了,终于送走了盘踞在头上小两三个月的秋老虎。说来也是奇怪,在我记忆中大概七八年前,大概还是我上初中的时候,总是能精准的掐着日子算到什么时候要入冬了,左右不过是国庆过后五六天就可以翻出...
下一篇
弹出
关闭

再战运营商缓存之 使用 iptables 对付死 X 缓存劫持

起因

与移动的缓存问题进行斗争要追溯到两年前,那时候因为移动竟然连 cnpm 的数据都进行缓存。并且令人喷饭的是:移动的缓存服务器不但经常速度慢到堪比万年王八跑马拉松,甚至还经常宕机,导致我只想安安静静的写个代码却不得不面对一片鲜红的报错:

1.jpg

就此事我也不止一次的投诉到移动的客服部门并且要求至少将我这个宽带的账号加到所谓“白名单”中。当时还写过有理有据的投诉邮件:

2.png

但是不知道是福建移动的客服和技术部门是临时工还是其他什么原因,在承诺会解决问题后也一直没有改善。不得已,只能暂时用比较蠢的办法去解决这个问题:使用路由器上的 iptables 判断数据包的内容,如果数据包内包含已知的移动缓存服务器地址(范围)就丢弃这个包:

iptables -I FORWARD -m string --string "Location: http://211.143.146." --algo bm -j DROP

这个方法有效,但是移动的缓存服务器是无穷无尽的,每次都去添加规则真的让人头大。而且这样进行文本的对比太占用资源可能会造成网速下降。后来不得已换了其他运营商的宽带,也就慢慢忘了这茬。

但是最近因为搬家后重新用上了移动的宽带(无奈之举,小区只有移动的口),又要开始面对移动无穷无尽的缓存黑洞:下载些东西总会被移动友好的劫持,并且慷慨的用小水管般的下载速度回馈广大新老用户。

3.png

4.png

无奈之下只能重新想办法对付令人作藕的移动缓存。

分析劫持过程

重新打开许久没用的 Wireshark,选定一个确定会被劫持到缓存服务器的地址,抓包分析一下劫持的经过:

5.png

可以看到我们对源站发起 GET 请求之后,源站返回了一个 302 跳转的包。显然这个 302 跳转包是移动伪造的劫持包。那应该就这个劫持包来分析一下特征并将其丢弃应该就可以对移动的缓存说 886 了。

分析了几个移动返回的 302 劫持包后,发现一个特征:这些包的 TTL 都比较小,范围是 20-30 之间。正常的服务器给的包应该没这么低(吧)。

6.png

7.png

解决

继续使用路由器的 iptables,根据这个特征,写一个 iptables 规则来丢弃这些劫持包:

iptables -I FORWARD -p tcp -m tcp -m ttl --ttl-gt 20 -m ttl --ttl-lt 30 -j DROP

这样是不是就完美了呢!不,考虑到可能还真的有其他幺蛾子服务器发来的真实数据包的 TTL 也在 20-30 的区间范围内,应该再加一层判断。对比了移动的 302 劫持包和正常的 302 跳转包的报文后,发现移动的劫持包的状态位包含 FIN, PSH, ACK 而正常的 302 跳转包一般不会这三个都有:

移动的劫持包 ↓
8.png

正常的 302 包 ↓
9.png

(同时可以看到正常 302 包的 TTL 都没这么低)

那么就在 iptables 规则里加上状态位是否包含 FIN, PSH, ACK 的判断:

iptables -I FORWARD -p tcp -m tcp -m ttl --ttl-gt 20 -m ttl --ttl-lt 30 --tcp-flags ALL FIN,PSH,ACK -j DROP

这样应该就能在丢弃移动劫持包的同时尽可能减少误伤正常数据包的可能。

测试一下

访问一下刚才确定会被劫持的地址:

A.png

Bravo! 看起来移动的劫持包已经被路由器的 iptables 丢弃了,所以可以下载源站的内容了。

总结

这个方法不一定对所有地区的运营商劫持都有效果,主要还是靠分析一下运营商劫持包的特征加以判断再写成 iptables 规则进行丢弃,有需要的同学可以自己试一下。