Difference between revisions of "Aerohive AP330"

Jump to navigation Jump to search
(Finish load OpenWrt into memory instructions.)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
[[Category:Devices]]
 
[[Category:Devices]]
 
[[Category:Aerohive]]
 
[[Category:Aerohive]]
[[File:Aerohive_AP330.png|thumb|Aerohive AP330]]
+
[[File:Aerohive_AP330.png|thumb|Aerohive AP330 <br> [https://usermanual.wiki/Aerohive-Networks/HIVEAP350.Aerohive-AP330-AP350-UserGuide-Rev1 User Manual] <br> [https://www.aerohiveworks.com/datasheets/Aerohive_Datasheet_AP330_NEW.pdf Datasheet]]]
 
{{Warning|This device must be flashed via UART. Do not buy a stock AP330 unless you are comfortable with the install process below.}}
 
{{Warning|This device must be flashed via UART. Do not buy a stock AP330 unless you are comfortable with the install process below.}}
  
 
= Files =
 
= Files =
 
[https://wikidevi.wi-cat.ru/Aerohive_HiveAP_330 WikiDevi Page]
 
[https://wikidevi.wi-cat.ru/Aerohive_HiveAP_330 WikiDevi Page]
 +
 +
[https://openwrt.org/toh/hwdata/aerohive/aerohive_hiveap-330 OpenWrt Techdata]
  
 
[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 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>.
 
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>
 
<pre>
# ip addr add 192.168.1.101/24 dev eth0
+
sudo su
# systemctl start tftpd
+
ip addr add 192.168.1.101/24 dev eth0
# 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
+
systemctl start tftpd
# 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
+
cd /srv/tftp/
# 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
+
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-initramfs-kernel.bin
 +
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-fdt.bin
 +
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-sysupgrade.bin
 
</pre>
 
</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.
+
 
 +
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>
 
<pre>
 
=> setenv serverip 192.168.1.101                                                                                                                                                                                     
 
=> setenv serverip 192.168.1.101                                                                                                                                                                                     
Line 39: Line 46:
 
</pre>
 
</pre>
 
You should be prompted to press ENTER eventually, and see the familiar OpenWrt splash screen.
 
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 =
 
== Clearnet Wireless Traffic ==
 
== Clearnet Wireless Traffic ==
~ 70Mbps
 
 
<pre>
 
<pre>
Client connecting to 192.168.1.137, TCP port 5001 with pid 28923
+
Connecting to host 192.168.1.1, port 5201
Write buffer size: 128 KByte
+
[ 5] local 192.168.1.204 port 52820 connected to 192.168.1.1 port 5201
TCP window size: 246 KByte (default)
+
[ ID] Interval          Transfer    Bitrate        Retr Cwnd
------------------------------------------------------------
+
[  5]  0.00-1.00  sec  10.6 MBytes  89.2 Mbits/sec    0    462 KBytes     
[  3] local 192.168.1.204 port 34440 connected with 192.168.1.137 port 5001 (ct=1.75 ms)
+
[  5]  1.00-2.00  sec  11.6 MBytes  97.7 Mbits/sec    0    680 KBytes     
[ ID] Interval           Transfer   Bandwidth      Write/Err  Rtry     Cwnd/RTT        NetPwr
+
[  5]  2.00-3.00  sec  10.0 MBytes  83.9 Mbits/sec    0    759 KBytes     
3] 0.0000-10.1140 sec 72.0 MBytes  59.7 Mbits/sec  576/0         0      -1K/3708 us 2013.12
+
[  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
 +
 
 
</pre>
 
</pre>
 +
 +
== Clearnet Wired Traffic ==
 +
<pre>
 +
Connecting to host 192.168.1.1, port 5201
 +
[  5] local 192.168.1.108 port 50302 connected to 192.168.1.1 port 5201
 +
[ ID] Interval          Transfer    Bitrate        Retr  Cwnd
 +
[  5]  0.00-1.00  sec  71.5 MBytes  600 Mbits/sec    0    395 KBytes     
 +
[  5]  1.00-2.00  sec  18.0 MBytes  151 Mbits/sec    0  1.41 KBytes     
 +
[  5]  2.00-3.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  3.00-4.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  4.00-5.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  5.00-6.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  6.00-7.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  7.00-8.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
[  5]  8.00-9.00  sec  12.2 MBytes  102 Mbits/sec    1  1.41 KBytes     
 +
[  5]  9.00-10.00  sec  0.00 Bytes  0.00 bits/sec    0  1.41 KBytes     
 +
- - - - - - - - - - - - - - - - - - - - - - - - -
 +
[ ID] Interval          Transfer    Bitrate        Retr
 +
[  5]  0.00-10.00  sec  102 MBytes  85.3 Mbits/sec    1            sender
 +
[  5]  0.00-13.34  sec  99.6 MBytes  62.6 Mbits/sec                  receiver
 +
 +
 +
</pre>
 +
 
== Yggdrasil Wireless Traffic ==
 
== Yggdrasil Wireless Traffic ==
 
???
 
???

Latest revision as of 17:05, 19 December 2020

Aerohive AP330
User Manual
Datasheet
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

OpenWrt Techdata

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.

sudo su
ip addr add 192.168.1.101/24 dev eth0
systemctl start tftpd
cd /srv/tftp/
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-initramfs-kernel.bin
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/openwrt-mpc85xx-p1020-aerohive_hiveap-330-squashfs-fdt.bin
wget https://downloads.openwrt.org/snapshots/targets/mpc85xx/p1020/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

Connecting to host 192.168.1.1, port 5201
[  5] local 192.168.1.108 port 50302 connected to 192.168.1.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  71.5 MBytes   600 Mbits/sec    0    395 KBytes       
[  5]   1.00-2.00   sec  18.0 MBytes   151 Mbits/sec    0   1.41 KBytes       
[  5]   2.00-3.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   3.00-4.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   4.00-5.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   5.00-6.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   6.00-7.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   7.00-8.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   8.00-9.00   sec  12.2 MBytes   102 Mbits/sec    1   1.41 KBytes       
[  5]   9.00-10.00  sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   102 MBytes  85.3 Mbits/sec    1             sender
[  5]   0.00-13.34  sec  99.6 MBytes  62.6 Mbits/sec                  receiver


Yggdrasil Wireless Traffic

???