Difference between revisions of "Aerohive AP330"

Jump to navigation Jump to search
(Skeleton for instructions and first benchmark.)
(add datasheet link)
(8 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
= Files =
 
= Files =
 
[https://wikidevi.wi-cat.ru/Aerohive_HiveAP_330 WikiDevi Page]
 
[https://wikidevi.wi-cat.ru/Aerohive_HiveAP_330 WikiDevi Page]
 +
 +
[https://www.aerohiveworks.com/datasheets/Aerohive_Datasheet_AP330_NEW.pdf Datasheet]
  
 
[https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/ OpenWRT Snapshots]
 
[https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/ OpenWRT Snapshots]
Line 20: Line 22:
 
# launch `minicom` in a terminal
 
# launch `minicom` in a terminal
 
# Connect the Aerohive to power, and quickly press any key to interrupt the boot process
 
# Connect the Aerohive to power, and quickly press any key to interrupt the boot process
 +
# Enter the password <code>AhNf?d@ta06</code> if prompted.
 
# You should see a prompt starting with <pre>=></pre>
 
# You should see a prompt starting with <pre>=></pre>
 +
 
== Use Tftpboot To Load OpenWrt Into Memory ==
 
== Use Tftpboot To Load OpenWrt Into Memory ==
There are a couple commands missing from the commit message.
+
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 <code>ip link</code>.
 +
<pre>
 +
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
 +
</pre>
 +
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.
 +
<pre>
 +
=> 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
 +
</pre>
 +
You should be prompted to press ENTER eventually, and see the familiar OpenWrt splash screen.
  
 
== Perform The Sysupgrade ==
 
== 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,
 +
<pre>
 +
scp /srv/tftp/*sysupgrade.bin root@192.168.1.1:/tmp/sysupgrade.bin
 +
ssh root@192.168.1.1
 +
sysupgrade /tmp/sysupgrade.bin
 +
</pre>
 +
 +
You did it! You can now install whatever packages you find useful.
 +
 +
From a remote shell on the Aerohive,
 +
<pre>
 +
opkg update
 +
opkg install curl
 +
opkg install luci
 +
[...]
 +
</pre>
  
 
= Benchmarks =
 
= Benchmarks =
Line 38: Line 76:
 
[  3] 0.0000-10.1140 sec  72.0 MBytes  59.7 Mbits/sec  576/0          0      -1K/3708 us  2013.12
 
[  3] 0.0000-10.1140 sec  72.0 MBytes  59.7 Mbits/sec  576/0          0      -1K/3708 us  2013.12
 
</pre>
 
</pre>
 +
== Clearnet Wired Traffic ==
 +
~ 1000Mbps
 +
<pre>
 +
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
 +
</pre>
 +
 
== Yggdrasil Wireless Traffic ==
 
== Yggdrasil Wireless Traffic ==
 
???
 
???

Revision as of 17:27, 8 February 2020

Aerohive AP330
Warning: This device must be flashed via UART. Do not buy a stock AP330 unless you are comfortable with the install process below.

Files

WikiDevi Page

Datasheet

OpenWRT Snapshots

OpenWRT commit message

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

  1. Connect your laptop to the Aerohive with a console cable
  2. launch `minicom` in a terminal
  3. Connect the Aerohive to power, and quickly press any key to interrupt the boot process
  4. Enter the password AhNf?d@ta06 if prompted.
  5. 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

~ 70Mbps

Client connecting to 192.168.1.137, TCP port 5001 with pid 28923
Write buffer size:  128 KByte
TCP window size:  246 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.204 port 34440 connected with 192.168.1.137 port 5001 (ct=1.75 ms)
[ ID] Interval            Transfer    Bandwidth       Write/Err  Rtry     Cwnd/RTT        NetPwr
[  3] 0.0000-10.1140 sec  72.0 MBytes  59.7 Mbits/sec  576/0          0       -1K/3708 us  2013.12

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

???