Aerohive AP330
Contents
Files
Flashing From The Stock Firmware
Aerohive routers come with a super locked down operating system on them. They're optimized for management via something called the Hive Manager, which is a cloud platform owned by Aerohive. This obviously won't do!
In order to flash OpenWrt, we will need to interrupt the boot-up process using a serial cable and a program called minicom. We will then load OpenWrt directly into RAM, and boot from memory. After booting a temporary copy of OpenWrt in this way, we can run a sysupgrade within OpenWrt to flash OpenWrt onto the hard-drive. This is not as hard as it sounds. Before proceeding, you will want to obtain a console cable, and download minicom.
Interrupt The Boot Process
- Connect your laptop to the Aerohive with a console cable
- launch `minicom` in a terminal
- Connect the Aerohive to power, and quickly press any key to interrupt the boot process
- Enter the password
AhNf?d@ta06
if prompted. - You should see a prompt starting with
=>
Use Tftpboot To Load OpenWrt Into Memory
There are a couple steps missing from the commit message. Namely, you should assign your 'laptop' a static IP address, and connect it to the Aerohive with an ethernet cable. If you don't know the name of your ethernet interface, run ip link
.
ip addr add 192.168.1.101/24 dev eth0 systemctl start tftpd curl https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-initramfs-kernel.bin > /srv/tftp/openwrt-mpc85xx-p1020-aerohive_hiveap-330-initramfs-kernel.bin curl https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-fdt.bin > /srv/tftp/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-fdt.bin curl https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-sysupgrade.bin > /srv/tftp/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-sysupgrade.bin
Back in the console of the Aerohive (minicom,) first set the necessary environment variables, then use tftpboot to load the OpenWrt firmware directly into working memory.
=> setenv serverip 192.168.1.101 => setenv ipaddr 192.168.1.1 => tftpboot 0x1000000 192.168.1.101:openwrt-mpc85xx-p1020-aerohive_hiveap-330-initramfs-kernel.bin => tftpboot 0x6000000 192.168.1.101:openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-fdt.bin => bootm 0x1000000 - 0x6000000
You should be prompted to press ENTER eventually, and see the familiar OpenWrt splash screen.
Perform The Sysupgrade
Once you've loaded OpenWrt into working memory and launched a remote shell, all that's left is to install OpenWrt permanently. This is the easy part! First, we'll copy the sysupgrade file onto the Aerohive, then we'll run the sysupgrade.
On your laptop,
scp /srv/tftp/*sysupgrade.bin root@192.168.1.1:/tmp/sysupgrade.bin ssh root@192.168.1.1 sysupgrade /tmp/sysupgrade.bin
You did it! You can now install whatever packages you find useful.
From a remote shell on the Aerohive,
opkg update opkg install curl opkg install luci [...]
Benchmarks
Clearnet Wireless Traffic
Connecting to host 192.168.1.1, port 5201 [ 5] local 192.168.1.204 port 52820 connected to 192.168.1.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-1.00 sec 10.6 MBytes 89.2 Mbits/sec 0 462 KBytes [ 5] 1.00-2.00 sec 11.6 MBytes 97.7 Mbits/sec 0 680 KBytes [ 5] 2.00-3.00 sec 10.0 MBytes 83.9 Mbits/sec 0 759 KBytes [ 5] 3.00-4.00 sec 10.0 MBytes 83.9 Mbits/sec 0 897 KBytes [ 5] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 0 897 KBytes [ 5] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec 0 987 KBytes [ 5] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 0 987 KBytes [ 5] 7.00-8.00 sec 10.0 MBytes 83.9 Mbits/sec 0 987 KBytes [ 5] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 0 987 KBytes [ 5] 9.00-10.00 sec 10.0 MBytes 83.9 Mbits/sec 0 987 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 106 MBytes 88.9 Mbits/sec 0 sender [ 5] 0.00-10.06 sec 104 MBytes 86.4 Mbits/sec receiver
Clearnet Wired Traffic
~ 1000Mbps
Client connecting to 192.168.1.137, TCP port 5001 with pid 20358 Write buffer size: 128 KByte TCP window size: 357 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.107 port 49540 connected with 192.168.1.137 port 5001 (ct=0.42 ms) [ ID] Interval Transfer Bandwidth Write/Err Rtry Cwnd/RTT NetPwr [ 3] 0.0000-10.0053 sec 1.09 GBytes 935 Mbits/sec 8926/0 0 -1K/488 us 239615.55
Yggdrasil Wireless Traffic
???