总结一下如何免费薅机上Wi

总结一下如何免费薅机上Wi

开个技术贴和大家分享一下在美国坐飞机时蹭网的经验。本帖特指不给信用卡号的蹭网,那种交钱之后让信用卡公司补贴的不算。(听说好多大公司员工都可以直接从公司拿机上Wi-Fi coupon…)

写在前面

已经接近21世纪中叶了,免费Wi-Fi应该是基本人权才对!好多年前住酒店Wi-Fi还要收钱,现在还有哪家收肯定被骂死。给最先推Wi-Fi不收钱的JetBlue点赞。

以前在国内需要十八般武艺才能正常上网,后来发现坐飞机的时候薅Wi-Fi只需要5%的功力就足够了,特此鸣谢当年的艰苦训练。

Tl; dr Best Practice

请参见热心坛友总结的DP

recolic:

Update: 随着乘坐了更多的航班,我的表格有一些扩充:

Airline

System

Best Method

Note

AA

SNI Spoof

tested

AC

SNI Spoof

NO DNS, tested

DL

Gogo

SNI Spoof

tested

DL

Viasat

SNI Spoof

tested

OZ

Panasonic

Iodine

tested, too slow

BR

Panasonic

MAC Spoof

tested

NH

Panasonic

SNI Spoof

tested

JL

Panasonic

MAC Spoof

not tested

UA

Panasonic

SNI Spoof

tested

Airline in-flight wifi crack guide - Recolic's Blog

第零关:免费Wi-Fi

大家一定要多多支持这些诚意满满的航司,有Zipair、JetBlue、Hawaiian等等。Delta已于2024年底加入此行列,AA也已官宣将于2026年初加入,United安装Starlink的飞机也会免费,至此美国三大航都迈入了21世纪,非廉航里只剩Alaska-branded flight还在死守。

某些航司(如JAL)每个设备可以免费试用1小时,重复刷1小时的方法见下。

第一关:T-Mobile

这一档的航司包括Alaska和AA,仅限旧系统的飞机。操作方法很简单,有个输入T-Mobile手机号免费试用1小时的选项。这里不需要是自己的手机号,只需要收集一些用T-Mobile的朋友的号码就行。(升级系统后会强制要求接收短信验证码,就没办法了。)

首先科普一些技术基础知识:机上Wi-Fi系统会同时通过设备的网卡硬件地址(MAC地址)和浏览器cookie信息记住设备。所以想不断刷1小时试用的话,两者都要改。建议在笔记本上操作,方便改MAC地址。

Update: 手把手指南

第一次登录请务必用浏览器隐身窗口打开wi-fi登录页面。电脑浏览器看不到T-mobile免费选项,请按Ctrl+Shift+I或者F12打开调试控制台,然后找到 这个按钮,变成模拟手机浏览器模式之后再打开wi-fi登录页面,就能看到T-mobile选项了。

满一个小时后,关掉浏览器隐身窗口,改MAC地址,然后再打开浏览器隐身窗口,换手机号重复即可。

修改MAC地址具体操作方式:

Windows: 在设备管理器里

image1280×1158 212 KB

macOS: 打开一个terminal然后输

sudo ifconfig en0 ether 01:23:45:67:89:01 (记得修改成随机的数字),然后输密码确认

未越狱的iOS: 只能刷两次。连上之后在wi-fi连接详情里找这个选项,可以打开或关掉,打开一个小时,关掉一个小时。

image1120×1032 124 KB

Android easy mode: 同上,可以刷两次。在wi-fi连接详情里找这个选项。

image1244×870 74 KB

Android expert mode: 去开发者选项里打开Enhanced Wi-Fi Mac Randomization。

(如果手机没打开开发者选项,请在设置的“关于”界面找到系统版本号,点7下。)

第一关之二: Boingo白嫖

这一档其实全球好多航司都能参与,坛友提到了汉莎、国泰等等。

大部分wi-fi登录界面有一行小字“Roaming”,可以选其他服务商登录互认,其中可以选Boingo。可以通过Mastercard卡号和一些技巧获得白嫖Boingo账号,然后免费上网。

Mastercard送免费Boingo的Membership 玩卡

https://redeem.boingo.com/mcsi/

只校验前6位,只要卡号符合Luhn算法就行。只有特定的几家银行的Bin可以

https://creditcardgenius.ca/blog/boingo-wifi-mastercard

部分银行的名单

下面这个Bin绝对是可以的:557914

前段时间这个福利缩水了,每个Boingo账号只能免费用12次机上wi-fi每次90分钟。但是考虑到创建多个账号的成本为0,没太大实际影响。

Bonus关:只能上Google

好多航司的主页用了Google Analytics脚本,因此Google IP在白名单里。简单情况下,去航司主页随便瞎逛逛之后,直接用浏览器就可以打开Gmail/GDocs之类的Google服务。

这种情况下,有一个很蛋疼的挑战方式是打开Google Colab,因为Colab里面运行的python代码是可以自由访问互联网的。我曾经尝试写过一些代码,从Colab网页里用python+javascript连接本地的代理程序来回转发流量,确实可以成功上网,只是网速很感人(飞机上延迟太高了)…

如果被reset了,说明航司更新了软件匹配SSL握手的SNI域名。从压箱底的老软件堆里找出 GoAgent ,可以强行继续用Google服务。不过有更好的方案,请看下一节。

第二关:改SNI Header

这一档的航司包括Delta和United等等。他们只检查请求的域名(SNI),却不检查目的地IP地址。这个思路已经被 @camh 提到过了: 免费用aa wifi - #16,来自 camh

具体操作的时候,可以再次从压箱底的老软件堆里找出 shadowsocks+simple-obfs 连接自己的服务器,在配置里用的SNI域名填一个白名单域名即可。

请注意,尽量先打开Free Messaging之类的免费上部分网站的功能,有助于提高成功率。比如AA+ViaSat系统可以免费Apple Music,先点开,会触发计费系统解禁设备、让白名单扩大。

以前我还需要来回尝试不同的域名(Google Analytics一般管用,但是有时候不管用,不管用的时候assets.adobedtm.com管用),偶尔打开航司主页去分析一下各种资源的域名,最近才反应过来,可以直接写 delta.com 或 united.com …写Google Analytics的好处是坐不同公司飞机不用来回改。

Update: AA区域航班有些Gogo提供的Wi-Fi最近进行了暖心升级(“inflightinternet.com”),封锁了这种方法,但是支持T-Mobile,退回上一关。

Update 2: 楼下帖子里还提供了一个一定在白名单里的域名

recolic:

把SNI改成xxx.paypal.com

第三关:只能上CDN,需要domain fronting

我记得AA某些机型的机上Wi-Fi用的不是Gogo而是松下(“pacwisp”),有完全不同的一套防火墙逻辑,之前做的各种准备都不管用。但是CloudFlare的IP在他们的白名单里,想必是因为航司主页某个资源用了他们作为CDN。

这时候需要自己有个网站被CloudFlare代理,然后利用网站后端作为代理。我自己还没有操作过,但是国内好多人都在用类似的思路科学上网,有成熟的工具,细节在此略过。

举一反三,我也见过机上Wi-Fi付费之前允许连接CloudFront/Akamai CDN的情况,也能用类似的思路,但是成为这两家CDN的客户更难一点。CloudFlare毕竟免费,严格来说免费档的TOS说禁止用做代理,但自己一个人用飞机上可怜的一丢丢网速应该没事…

第四关:需要搭DNS服务器配合

汉莎疑似有更复杂的防火墙,只允许连接DNS请求返回里包含的IP,但是可以向错误的DNS服务器发起请求;我猜想只需要DNS返回的是自己的代理的IP就可以免费上网了。可惜我没来得及debug好就落地了。后来配置好了一个DNS服务器来配合,发现意外收获是可以用在xfinity wifi上。十分期待下次去欧洲的时候试试管不管用。

第五关:只能DNS隧道

太慢了,适合急着发文字消息的情况。细节在此按下不表。Spirit好像在这一档。

同场加映:真的要给钱的话记得用安卓手机,付费后开热点

IrishCoffee:

android好像可以把wifi 通过wifi共享给别的设备

相关推荐

紧随梅罗步伐,墨西哥队长瓜尔达多成出战五届世界杯第6人
篯铿的意思
365bet日博亚洲

篯铿的意思

📅 10-28 👁️ 1759
灵魂碎片掉落计时器
365体育app

灵魂碎片掉落计时器

📅 07-29 👁️ 3449