Since the last production release, there have been 136 separate ‘pull requests’ in the AREDN github repository. Those requests pulled these significant improvements and new features into the AREDN software:
1. The conversion from Perl programming to Lua is complete - the result is a significantly smaller, somewhat faster, code base.
2. Due to the recovered space in the image, tunnels are now always installed, so nothing needs to be done with them during future upgrades.
3. After this upgrade, future upgrades should be much more reliable, especially on low memory devices.
4. Tunnels will be prevented from accidentally connecting over the mesh.
Tunnels normally connect via the WAN interface, that being the point of the things. However, if the WAN interface on a node goes down for some reason (the tunnel server/client Internet fails) the node will select a new way to talk to the Internet by first routing over the Mesh. When this happens, tunnels could end up being routed partially over the mesh, which is bad because tunnels are also part of the mesh. So, we now prevent this by default by adding a firewall rule.
5. You can now adjust the poll rate for alerts. AREDN alerts and local alerts (those yellow banner things you see sometimes) were polled twice a day. This is now configurable.
6. There is now a 60-second timeout when tunnel connections are interrupted.
Node tunnels run over TCP/IP so they guarantee that what is sent is what will be received. This is all fine when things are running reliably, but if a connected tunnel fails for a bit, but then recovers, this guarantee means very old, pending traffic will still be delivered. In AREDN’s case, this traffic is not useful to the user, and for OLSR it is positively dangerous to deliver ancient routing information. This is all low level protocol stuff and there will be no visible effects to users.
7. Nodes which are only connected via the WAN port and tunnels (no Wifi, no LAN) can cause some configuration problems because AREDN really wants either the LAN port to be connected or the WiFI to be enabled. We made some changes, so this is no longer a requirement. Thanks to K1KY, who has some unusual setups, for finding this.
8. Automatic NTP sync - we now locate an NTP server (either the one configured or by searching the mesh for a local one) and sync the time daily.
9. Added the ability to change the default VLAN for the WAN port. Currently not available on devices which contain network switches.
10. Included iperf3 by default, as well as a simple web UI. Its use is described here in the AREDN online docs.
11. Updated the Advanced Configuration page; sorted items on the page into categories.
12. Added the capability of loading firmware updates "locally" after copying them to the node via SCP. This is useful if you’re trying to update a distant node over marginal links. Information on how to use it is in the AREDN online docs, here.
13. Nodes will now drop nodenames and services that haven't been included in a broadcast for approximately 30 minutes.
14. The hardware brand and model have been added to the main page.
15. Messages banner will only be displayed on the Status & Mesh pages, keeping the setup & admin pages uncluttered:
16. Channels -3 and -4 have been added to 2 GHz, for use in those countries where it’s legal.
17. Added link quality management. It’s designed to make the AREDN network more stable and improve the available bandwidth.
When enabled LQM accomplishes this in two ways:
First, it drops links to neighbors which won't work well. Links are dropped that don't have good SNR, are too far away, or have low quality (forcing retransmissions).
Second, it uses the distance to the remaining links to optimize the radio which improves the bandwidth. This mechanism replaces the older ‘auto-distance’ system which was often confused by distant nodes with which it could barely communicate.
Many LQM parameters are capable of being modified to allow for local network circumstances. There’s documentation on LQM in both the node help file and in the AREDN on-line docs.
NOTE 1: LQM is turned off by default, unless it was previously enabled in a nightly build.
NOTE 2: Latitude and longitude need to be configured in order for LQM to work properly.
IMPORTANT NOTE: If you’re running MeshChat and/or iPerfSpeed, after this upgrade you’ll need to install compatible versions of them (but note that with the built-in throughput test you may no longer need iPerfSpeed). URLs for those versions:
iperfSpeed: https://github.com/kn6plv/iperfspeed/raw/master/iperfspeed_0.6-lua_all.ipk
MeshChat: https://github.com/kn6plv/meshchat/raw/master/meshchat_2.0_all.ipk
This is incredible news. What a huge list up upgrades. Especially the LQM and NTP changes.
I thought it would be another 6 months or so before we saw a stable release that included the new Lua front end. And all of the other changes are just icing on the cake.
Thanks to the whole team.
Hi OMs.
I've upgraded remotely (on the fly) our local Italy [Tuscany] Mesh without any problem.
2 x uAPac
2 x SXT (I need 3 attempts to reach the upgrafe from remote)
1 x NanoStation
1 x GLiNet 750
Update was easy and fast.
Great job, guys!!! Interface is very faster... I've to check for other improvements.
73 de Leo IZ5FSA