EA6500v1 解锁5G频段

这是一个5年前留下的坑,12年买的EA6500v1,港版,5G频段只能看到 36,40,44,48,中国能用的不给用。
最近几年一直在用华硕系,两个ac68u两个ac88u,EA6500v1一直在吃灰,原配的电源适配器(12v2A)也被我挪走他用了。
想把EA6500送人吧,但是又觉得如果5G频段没解锁,别人用起来也尴尬。想当年,因为802.11d的原因,macbook经常找不到5G的SSID,我只能强制连一个Country Code是US的别人家的WiFi,才能看到_5GHz的。

后来试过DD-WRT解锁,因为不稳定,所以想解锁了再切回来,但是没用。
中间看到过 https://securityevaluators.com/knowledge/case_studies/routers/linksys_ea6500.php 这个安全报告,也试着写了个脚本去构造备份文件上传,试图直接启用频道,未果。
后来看到DD-WRT的Wiki上有张图,标识了主板上的几个点,可以用console直接来改设备,于是买了ttl卡,直接开搞。
图在这里:

EA6500v1 固件 1.1.29.162351 在这里 https://dl.sskaje.me/EA6500/
USB-TTL、杜邦线、排针(5pin)
CoolTerm (Windows下可以用PuTTY)

固件可以用 binwalk 直接解包,mac下squashfs没法搞,所以我直接去linux下操作的。期间还会需要 sasquatch,从https://github.com/devttys0/sasquatch 下载,然后build即可。
我把解包好的目录打了个包,可以从这里下载。

TTL板我从淘宝上买了个,链接是 https://detail.tmall.com/item.htm?id=16809187607 ,选了个偏贵的。
里边送了杜邦线和排针,杜邦线一头6个针脚一体的,直接插上。
参考前边的EA6500主板图,Vcc/TxD/RxD/n.c./GND,其中GND的地线没有用焊锡填充,所以从TTL线送的排针里拿出一个,把最边上的针脚的高度调一下,使得排针不用刻意固定就能与主板上的焊点接触上。
TTL板的针脚有6个,VCCIO/GND/TXD/RXD/RTS/CTS。杜邦线对应的 Vcc 连 VCC,GND连GND,TxD连RXD,RxD连TXD,其他不接,按这个对应关系接好排针。

TTL电脑端接线

TTL路由主板

我的macOS High Sierra没有额外装驱动就识别到了串口设备。
CoolTerm 配置波特率 115200,其他默认。在CoolTerm主界面点Connect,确认排针已经稳定接触好焊点之后,给EA6500上电,就能看到CoolTerm里有输出了。

在启动的时候,按 ctrl + c,多按几次就能看到 CFE> 的提示符了。

之前在研究构造备份文件的方案时,看到syscfg里有好多code,例如 wl0_country_code, wl1_country_code, ccode, wl_country。
这回全改成US,启动之后就 wl: Bad Channel 了。
/etc/regccode 这个文件内容如下

而,在CFE里,使用 devinfo show 看到的

乱试几种组合都无效后,恢复了配置,然后从固件的启动脚本里找了找

于是看到了这个函数

只要 ccode 和 regrev任意一个字段都是空的,系统就会默认到 Q2/13 这个code。
所以reboot,重新进入CFE。

操作命令如下

进入系统后,终于看到新的频道被释放出来了。

console里看频道信息和country
Web Console里看频道列表
macOS WiFi 扫描工具里看频段
EA6500v1 解锁5G频段 by @sskaje: https://sskaje.me/2017/12/ea6500v1-unlock-5ghz-channels/

OpenVPN Site-to-Site VPN between Asus Merlin And Ubnt EdgeRouter

前言

Network Topology
Network Topology

RT-AC68U 使用PPPoE拨号上网,但是分配的IP是100.64.204.111, 看着像公网IP实际却是Carrier-grade NAT.

现在需要将RT-AC68U与一台在公网的EdgeRouter使用OpenVPN Site-to-Site连接起来,并在RT-AC68U端实现policy-based routing。
需要让RT-AC68U下的所有设备能访问EdgeRouter LAN的网络,并根据需求透过VPS访问指定互联网。

本实验参考下列文章:
Set up OpenVPN Site-to-Site on UBNT EdgeRouter Lite
EdgeRouter OpenVPN Connectivity Monitor
EdgeRouter 策略路由实现分析
EdgeRouter Policy Based Routing Using DNSMASQ IPSET

Continue reading “OpenVPN Site-to-Site VPN between Asus Merlin And Ubnt EdgeRouter” »

OpenVPN Site-to-Site VPN between Asus Merlin And Ubnt EdgeRouter by @sskaje: https://sskaje.me/2017/10/openvpn-site-to-site-vpn-asus-merlin-ubnt-edgerouter/

EdgeRouter 部署 WireGuard

安装

从 https://github.com/Lochnair/vyatta-wireguard/releases 下载对应的包
ERL, ER等 mips架构的,下载 octeon 版本
ERX 下载 ralink版本。

可以选择上传到路由上,或者ssh登录路由,sudo suroot,执行类似如下的命令

下载完成后

配置

执行下列命令生成私钥、共享密钥,公钥

将最后一个命令的输出复制下来,配置到服务器端

获取服务器端的公钥,替换下文的“公钥”并执行命令

配置好设备后,配置nat服务

剩下就是配置路由规则了,可以参考我的其他blog.

EdgeRouter 部署 WireGuard by @sskaje: https://sskaje.me/2017/06/deploy-wireguard-on-edgerouter/

Incoming search terms:

Ubuntu部署WireGuard

安装WireGuard

按照官方说明,可以使用下列命令装依赖,不够的自己看着装

直接从git里拉。

直接make就行

配置

参考前一篇文章“WireGuard wg-quick PostUp的高级玩法”,可以直接无视官方和其他各种第三方给的教程。

前文给了一个参考的配置。

按上述配置,假定的网络环境如下:
服务器:IP 1.1.1.1,WireGuard内网 IP 192.168.10.1,公网环境
节点1: IP 2.2.2.2,WireGuard内网 IP 192.168.10.40,LAN IP 192.168.1.0/24
节点2: IP 3.3.3.3,WireGuard内网 IP 192.168.10.50,LAN IP 192.168.2.0/24

此处,服务器、节点1、节点2均有公网IP

如果节点IP不固定,或者是没有公网IP,那就改为如下配置

VPS上,将配置文件保存为 /etc/wireguard/wg0.conf,执行下列命令,启用Wireguard:

为了让网络正常工作,还需要在VPS的公网接口上启用NAT

修改 /etc/sysctl.conf,启用 ‘net.ipv4.ip_forward=1‘,然后执行 ‘sysctl -p

接下来是大招

You are not authorised to read all content in this post.

Please login…

Ubuntu部署WireGuard by @sskaje: https://sskaje.me/2017/06/deploy-wireguard-on-ubuntu/

WireGuard wg-quick PostUp的高级玩法

真的很高级。

wg-quick是WireGuard用来启动网络设备的**脚本**。

注意了,迄今为止,wg-quick是用bash写的一个脚本,不知道未来会不会变,至少目前shebang是

Continue reading “WireGuard wg-quick PostUp的高级玩法” »

WireGuard wg-quick PostUp的高级玩法 by @sskaje: https://sskaje.me/2017/06/wireguard-wg-quick-postup%e7%9a%84%e9%ab%98%e7%ba%a7%e7%8e%a9%e6%b3%95/