惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
H
Hacker News: Front Page
Stack Overflow Blog
Stack Overflow Blog
B
Blog
I
InfoQ
GbyAI
GbyAI
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
F
Full Disclosure
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recent Announcements
Recent Announcements
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
T
Tailwind CSS Blog
S
Secure Thoughts
P
Privacy International News Feed
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
Cybersecurity and Infrastructure Security Agency CISA
Last Week in AI
Last Week in AI
W
WeLiveSecurity
Google Online Security Blog
Google Online Security Blog
P
Privacy & Cybersecurity Law Blog
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Project Zero
Project Zero
V2EX - 技术
V2EX - 技术
H
Heimdal Security Blog
博客园 - Franky
阮一峰的网络日志
阮一峰的网络日志
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Troy Hunt's Blog
V
Vulnerabilities – Threatpost
H
Help Net Security
Martin Fowler
Martin Fowler
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
G
GRAHAM CLULEY
博客园 - 【当耐特】

atpX

自建 S3 兼容对象存储服务 Garage 听风的歌 偶尔是深夜就好了 新玩具 AirPods Pro 3 公交车上的时间 从 WHOIS 到 RDAP 通过 WireGuard 访问 NFS 共享文件 自建音乐串流服务探索 我停止了探索 Fediverse 互联网背景噪音 我的数字生活降级 小城与确定性的墙 一只特立独行的猪 Fediverse 与社交 承认的勇气 mediaX - 轻量书影音记录管理工具 我的博客写作流程 网站新增 Misc 页面 擅长对线的鲍勃 在 Chroot 环境下使用 Rsync 同步 再见 JavaScript 当我玩博客时我在玩什么 为什么我的博客没有友链页面 小熊猫与大熊猫 (HDR 照片测试) 是时候为网站开启 HTTP/3 支持了吗 使用 AdGuard Home 搭建自用 DoH 服务 谈谈读书与消遣 2023 年终总结 西安两日游 从 AirPods「升级」到 EarPods Docker 搭建去中心化的微博客平台 Mastodon 聊聊 iPhone 15 Pro 使用感受 能否将 TOTP 二次验证存放在密码管理器里 认识史蒂夫·乔布斯 与“锤哥”克里斯·海姆斯沃斯一起养生 逃离爆炸的信息 你想活出怎样的人生 重温《龙珠》动画 为什么关闭评论 从域名注册商到 DNS 服务,找到自己的组合 如何提高用户网页阅读体验 从 Typecho 迁移到 Hugo 个人博客的最终归宿是静态网站吗 我选择了放弃 jQuery 关于我的小破站折腾速度优化这件事 贴一些 SmokePing 记录 我的域名邮箱选择 不存在的语录 Typecho 评论验证插件 CaptchaPlus 谈谈写字这件事 新的网站 Logo 探索 曲线解决 Typecho 图片占位抖动问题 自建 vaultwarden / bitwarden_rs 密码管理器 使用 Plausible 自建网站流量统计分析工具 如何优雅地徒手剥开火腿肠 简单的集中隔离生活记录 新玩具 M2 MacBook Air 使用 acme.sh 申请 Google 公共证书 Docker 搭建去中心化的微博客平台 Misskey 搭建 Lsky Pro 兰空图床 折腾树莓派系统的一天 我的吉卜力之旅 使用 Uptime Kuma 自建服务器/网站在线率监控 Spartan Host Review - Best Hosting & Service Support Debian 下 Nginx 配合 Fail2Ban 减少恶意扫描和攻击 升级 Typecho 到最新开发版本 v1.2.0 Linux rm 命令详解 Debian 系统安装 Docker 教程 BandwagonHost - Reliable Blog and Business VPS Hosting 使用 Isso 为 Hugo/Hexo 等静态网站添加评论功能 推荐 5 款免费开源的网站流量分析统计工具 搭建 Shynet 网站流量统计分析工具 聊聊 DDoS 攻击那些事 Hugo 使用 Fancybox 实现图片灯箱/放大功能 从 Debian 10 升级到 Debian 11 教程 使用 Umami 自建网站流量统计分析工具 Linux 一次执行多个命令的 3 种方式 Typecho 修改永久链接后旧链接 301 跳转到新链接 从不同需求推荐几家稳定可靠的 VPS 服务商 Build EchoIP service with Docker 浅谈一下这些年折腾过的 VPS 单线复用解决一根网线同时 IPTV 和宽带问题 不完全吃灰的树莓派 开发一个自己的 Telegram Bot 使用 Nginx 实现 TCP 四层反向代理 画画真难 我读村上春树 使用 acme.sh 自动签发和更新证书 卡拉马佐夫式悲剧 安装 File Browser 轻量网盘工具 新玩具树莓派到手 Linux 定时自动备份数据到 OneDrive/Google Drive 记一次服务器崩溃 使用 rsync 同步文件 短信的消失 幻灭的艺术家 新玩具戴尔 S2721DGF 开箱 蝴蝶 用 Docker 整合 SeafilePro 搭建私人云盘 搭建自己的 kms 服务器
记一次家庭网络折腾
ATP · 2022-12-18 · via atpX
my-home-network

上一次折腾家里的网络还是去年(单线复用解决一根网线同时 IPTV 和宽带问题),前几天刷论坛的时候看到了 Redmi AX6000 的车,不到 400 元的价格性价比很高,目前用着华硕 RT-AC1200-GU,表现很稳定,但 5G 穿墙信号有点弱,很快就说服自己可以入手,虽然大概率是再包装的退换货。

既然买了新路由器,自然得创造一个新的伪需求。

光猫桥接

换了一个性能更强的路由器,首先想到了直接路由器拨号,虽然现在的光猫拨号几乎不存在性能瓶颈,但使用路由器拨号有一个好处是可以完全掌控家里的网络,让光猫安安心心拨号就行了。

获取超级密码

  • 运营商:西南电信
  • 光猫:友华 PT926E
  • 网关:10.0.0.1

网上有不少获取超级密码的教程,我这里使用的是 U 盘 + F12 获取。

将 U 盘插入光猫,登录后台:

http://10.0.0.1/cgi-bin/luci/admin/storage/settings

按 F12,在 Console 控制台输入:

get_path_files("/mnt/usb1_2/../..")

进入根目录,找到 /var/config/lastgood.xml 拷贝到 U 盘上,之后取下 U 盘插上电脑查找关键字 SUSER_PASSWORD 即可获得超级密码。

你可以在光猫登录页面直接输入超级密码进入管理后台(不用修改用户名为 telecomadmin 也可以)

进入网络设置,选中连接名称为 4_INTERNET_B_VID,将模式修改为 Bridge 后应用。

电信光猫超级管理员后台
电信光猫超级管理员后台设置,修改为桥接模式。

设置路由器拨号

进入路由器设置上网方式为 PPPoE,输入宽带账号密码,本以为直接前面获取的 lastgood.xml 文件中搜索到的 pppUserpppPasswd 就可以了。可折腾了两个小时怎么也拨号不成功,一度让我陷入自我怀疑,到底是哪里出了问题… 情急之下直接将光猫恢复默认设置,可之后又出现了新的问题,网关地址恢复为了默认的 192.168.1.1,以前为了输入方便,家里的网络使用了 10.0.0.0/8 段(不知道为什么国内的网络设备都喜欢默认使用 192.168.0.0/16 段 - -),导致我无法进入光猫后台,只得找一根网线直接将笔记本接到光猫上才进入设置。为了以后折腾方便,还是决定将所有设备地址改回 192.168.0.0/16 段,包括两个交换机、路由器、PC 和树莓派,因为已经很晚了,迫于第二天还要搬砖,结束了第一天的战斗。

第二天,想了想是不是宽带拨号密码错了,有可能 lastgood.xml 中的密码是经过加密的,在光猫后台使用 F12 改文本框类型行不通,后来网上一篇文章中终于找到了光猫 PPPoE 密码的加密方式:

  • 假设明文是 m,则首先将明文倒过来,得到 m’
  • 将 m’ 的每个字符在 ASCII 层面 +1,新的字符组成密文 c

因此解密步骤如下:

  • 将密文 c 倒过来得到 c’
  • 将 c’ 的每个字符在 ASCII 层面 -1,得到 PPPoE 密码 m

例如我的 lastgood.xml 文件中 pppPasswd 为 2345678,则正确的密码为 7654321。

尝试之后终于成功拨号上网了,目前的家庭网络拓扑如下:

家庭网络拓扑图
家庭网络拓扑图。

还有一些其它的接法:光猫设置宽带和 IPTV 为一个 VLAN 可节省一根光猫到交换机的网线;光猫当 VLAN 交换机,可节省一个交换机。这里为了物尽其用,就不研究了。

Redmi AX6000 开启 SSH

Redmi AX6000 开启 SSH 参考了恩山上某大佬的帖子,我到手后将路由器固件升级为了 1.0.64,方法依然有效。这里也简单的记录下,防止以后迷路。

  • 路由器初始密码:找到 Redmi AX6000 的 SN 码(包装盒上和路由器背面都有),并在此计算初始密码,将其保存下来,路由器恢复出厂设置后会用到
  • 路由器的 stok:登录路由器的 web 端管理界面,从上方地址栏即可获得 stok

开启开发者模式

1.更改路由器的 crash 分区,使其进入到开发者模式,在浏览器地址栏输入:

http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3B%20zz%3D%24%28dd%20if%3D%2Fdev%2Fzero%20bs%3D1%20count%3D2%202%3E%2Fdev%2Fnull%29%20%3B%20printf%20%27%A5%5A%25c%25c%27%20%24zz%20%24zz%20%7C%20mtd%20write%20-%20crash%20%3B%20

将其中 stok=token 的 token 替换成前面获取的路由器 stok,下面相同。

2.设置 Bdata 参数,在浏览器地址栏输入:

http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3B%20bdata%20set%20telnet_en%3D1%20%3B%20bdata%20set%20ssh_en%3D1%20%3B%20bdata%20set%20uart_en%3D1%20%3B%20bdata%20commit%20%3B%20

3.重启路由器,在浏览器地址栏输入:

http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20

* 每次重启路由器 stok 值都会改变。

通过 Telnet 开启 ssh

在 Windows Terminal 中输入:

telnet 192.168.31.1

输入后会直接进入【ARE U OK】的界面,表示 Telnet 成功。

开启 SSH 并修改密码为 admin123:

bdata set boot_wait=on
bdata commit
nvram set ssh_en=1
nvram set telnet_en=1
nvram set uart_en=1
nvram set boot_wait=on
nvram commit

sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear
/etc/init.d/dropbear restart
echo -e 'admin123\nadmin123' | passwd root

目前从 Telnet 开启的 SSH,路由器重启会失效,因此添加一个开启自动运行的脚本,来实现自动开启 SSH。缺点就是恢复出厂设置或重新刷机后需要重新添加。

ssh root@192.168.31.1
mkdir /data/auto_ssh && cd /data/auto_ssh
curl -O https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
chmod +x auto_ssh.sh

uci set firewall.auto_ssh=include
uci set firewall.auto_ssh.type='script'
uci set firewall.auto_ssh.path='/data/auto_ssh/auto_ssh.sh'
uci set firewall.auto_ssh.enabled='1'
uci commit firewall

修改时区

在 SSH 中执行:

uci set system.@system[0].timezone='CST-8'
uci set system.@system[0].webtimezone='CST-8'
uci set system.@system[0].timezoneindex='2.84'
uci commit

关闭开发者模式

mtd erase crash
reboot

注意事项

每次升级固件或重置固件都可能需要在 Telnet 下重新开启 SSH:

sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear
/etc/init.d/dropbear restart
echo -e 'remember3\nremember3' | passwd root

然后在 SSH 中执行:

mkdir /data/auto_ssh && cd /data/auto_ssh
curl -O https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
chmod +x auto_ssh.sh
uci set firewall.auto_ssh=include
uci set firewall.auto_ssh.type='script'
uci set firewall.auto_ssh.path='/data/auto_ssh/auto_ssh.sh'
uci set firewall.auto_ssh.enabled='1'
uci commit firewall

Redmi AX6000 的固件本身就是小米定制的 OpenWrt,开启 SSH 之后就可以发挥想象自己探索各种玩法了。

一天体验下来,以前的死角也能上网了,虽然速度比较慢,红米 Redmi AX6000 的信号确实比老华硕 RT-AC1200-GU 强一些,但不多。总的来说升级还是不亏的,开启 SSH 后如果要求不高,也能一定程度上替代软路由了,适合退烧养老。


Updated 2022-12-19

AX6000 的一些问题

迫于某🐱速度只能跑到 60M 左右,一番折腾无果,怀疑是固件的问题,这几天又把最近几个固件试了一遍,发现了一些问题:

  • 1.0.48 固件重启后 5G WiFi 过几分钟之后才能搜到
  • 1.0.60 固件无法搜到 5G WiFi 信号
  • 1.0.64 固件正常

而且我不是一个人,也有不少网友遇到,果然某夕夕水还是深。几个固件试下来速度并没有多少区别,先用着最新的 1.0.64 固件,有空再仔细研究或者刷 OpenWrt 试试。