* Migrate /etc/config/dmz-mode to /etc/dmz-mode
* Migrate dmz_mode into /etc/config/aredn
* Use cmd append
* Changes should be in /etc/config.mesh
* Add commit
* add uci migration script
* removed debug lines
* added newline to end
* include gridsquare values
* migrate lat/lon/gridsquare to uci format
* remove from sysupgrade kept files list
* Memory and cpu performance improvements
* Fix bandwidth reporting
* Discard large arrays once we're done with them
* Fixup whitespace
* Improve string constructions
* Use available mem
* Print the Remote Nodes as we go (can be big)
* Local variables
* Stop re-reading arp/mac files
* Reduce calls to system 'cat'
* Simply lat/lon read
* Only read route30 once
* Whitespace
* Make meshstatus limits configurable
* and => &&, or => ||
* gzip content if we can
fixes#155
Aliases in NAT mode allows the node admin to create alias names for hosts on the LAN and then use those for creating port forwarding rules. The aliases DO NOT effect the rest of the mesh network and are not propagated via OLSR.
NAT Mode aliases are only usable on the local LAN where the IP addresses are known and routable only on the subnet. Since the NAT hides these IP addresses or the node masquerades, other mesh nodes and devices by definition only know about the node’s hostname. Thus aliases on the LAN in NAT mode are not propagated by OLSR across the mesh. You _CANNOT_ use an alias name in a service listing.
You _will_ be able to set an alternate hostname for any host on the nodes' LAN however.
A host named `CBY45-DELLLAPTOP` can also be known as `wxc-shack-laptop`. It may make remembering which host is which a bit easier.
Since OLSR does not propagate the alias, the "Do Not Propagate" checkbox while in NAT Mode is hidden.
Allows for aliased hostnames on the mesh. One IP/Host can be assigned to multiple hostnames.
This is useful for many things including virtual hosts, virtual machines, virtual email addresses, etc.
The possibilities are actually _endless_.
Fixes#516
fixes#522
tested by: Matthew KB9OIV <Matthew.annen@gmail.com>
tested by: Chris K3ADA <sutehk.cs@gmail.com>
Resolves 2 issues with tunnel iptable rules. A rule needed to be
shifted down by 1 position in chain given upgrade to openwrt 19.07.
Reload of rules was not correctly retaining chain order and creating
duplicate entries, inadvertantly blocking intended traffic.
Installation:
Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
Specifications:
* SoC: Qualcomm Atheros AR9344 (560 MHz)
* RAM: 64MB
* Storage: 8 MB
* Wireless: 2.4GHz N based built into SoC 2x2
* Ethernet: 2x 100/10 Mbps, integrated into SoC, 24V POE IN
Installation:
Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
Add option for hap ac lite to select which band to
use for LAN AP option, 2GHz or 5GHz. Also, ensure
all wireless cards are defined when disabled to
prevent default wireless config options.
* aredn: hAP ac lite enable 5GHz LAN Access Point
enable ability to bridge LAN physical ports with wireless
LAN Access Point capability. On dual band hAP ac lite,
used in parallel with mesh RF on 2GHz. Enables future
features on single band devices to turn off mesh RF and
repurposed for mesh LAN Access Point.
closes: #215
* initial commit
* feature: advanced configuration page
fixes#230
* add help page updates
* added menu links to perlfunc.pm
* add default value for serverpath
* move "Reset to Firstboot" button from setup page to advancedconfig page
* secure page
minor ui changes
* center the help icon
* implement callback capabilities pre/post
* hardening uci calls to prevent command injection attacks
* moved settings to custom aredn uci file
* resolve shellcheck warnings
groups with custom rules created in /etc/local/mesh-firewall
for echolink, ampr.net, and other integrations with internet
based appications can preserve rules across a firmware
upgrade by locating the custom rules in this directory
using a file named 59-custom-rules
Add support for the hAP lite model rb952UI-5ac2nD equivilent to
the UBNT AirRouter. The 5Ghz interface will be configured in a
2nd phase. This hAP lite model has double the RAM and Flash
of the AR. the 2Ghz is MIMO (5Ghz is single antenna).
with low memory conditions, typically on 32Mb RAM, the
device would become unresponsive in hours to days. The
symptoms only occured when no RF links. iw processes
would hang in Zombie state. Updates to use iwinfo where
possible and avoid using both iw and iwinfo. crontab
script is implemented to detect Zombie processes and free
up resources in the reduced chance the symptoms are still
occuring.
* config change to make uhttpd listen on port 80 and 8080
* add port 80 to tunnel firewall rules
* add port 80 to tunnel firewall rules in config, update help
* firewall rules for wan + dtdlink
Once the PR for this is accepted by Openwrt we will need to remove the file
001-add_support_for_TP-Link_CPE510_v2.patch
Removed 001-add_support_for_TP-Link_CPE210_v2.patch as PR #937 has been committed
Updated 99_setup_aredn_include to remove unused Rssi Led configuration
olsrd-watchdog can trigger when the olsrd service is restarted
Such as when a tunnel comes up, or when a config change is
made to olsrd.
procd already monitors olsrd and makes sure it remains running.
With procd we no longer need olsrd-watchdog and can remove it.
fixes AREDN->ticket:215
Change-Id: I5067d380a22bd0ab5e597746478ef3e1ba05d72d
It is possible for the system to run out of memory when dealing
with large file uploads and installs.
As part of the upgrade procedure shutdown services that are not
essential for node operations to allow more memory for install
to take place.
Includes changes to linkled to indicate this new state as it will
be shutdown as part of the cleanup process.
Memory gain (approximate)
dropbear 100kb
linkled 200kb
logd 200kb
odhcp 100kb
snmpd 500kb
xinetd 100kb
Total(approximate): 1200kb (around %4 on 32mb devices)
This is somewhat similar to files/usr/local/bin/upgrade_kill_prep
except that it kills only a select group of services
so that the system can handle the file upload while
upgrade_kill_prep does the final system cleanup to run the full
upgrade.
ref AREDN->ticket:204
Change-Id: Ic6d3aa028725064a97c4723f6d9b36e1e51d87a7
Inside the source files the word "contained" was mispelled
as "conained"
The website currently lists this correctly as "contained"
This was an error in the intial stamping of the source files in
changeset:5c3ee1d0686c6e6f2907fe4fc393d86d6c5a69b5/aredn_ar71xx
Line is part of "Additional Conditions" permitted by GPLv3.
Line does not impact coders prior to the AREDN setup date
as it was added by the AREDN team.
Change-Id: I3bc09aea548100f35c08aebe8686b8d4808d56d8
Signed-off-by: Conrad Lara - KG6JEI <KG6JEI@amsat.org>
Signed-off-by: Joe Ayers <ae6xe@arrl.net>
Signed-off-by: Darryl Quinn <k5dlq@arrl.net>
Signed-off-by: Trevor Paskett - K7FPV <snoopytjp@gmail.com>
Remove banner from the files set as it will override the build
version of the banner.
Patch 2 will be in arednbase repo.
Change-Id: Iefb8288985b39b8942419f43925d00aaab53d610
After OTA upgrade the timezone was kept in the system file
but not in the UI so when a user would save the timezone
would be overwritten.
fixes AREDN->ticket:186
Change-Id: I593afab0c3f67ba9d300228e9cbb47d7e3d894d1
Move httpd.conf to not store password and instead depend on the shadow password file.
Also tag the 40_aredn_migrate-httpdconf script to be +x. Not strictly necessary but wish to have this standard
Change-Id: I018d9a3294e45af2316b3c3947ef2a7d8081268b
RFC requires that the DHCP server include the default gateway (0.0.0.0/0) route as part the Classless network list.
Moved to node-setup so it can be set dynamically at setup run time.
fixes AREDN->ticket:155
Due to a firewall chain name changes in BB when a node was in NAT mode (instead of recommended direct mode) connections that went out over DTDLink as the first hop would not be masqed and as such would not work.
This changes the beacon rate from once every 100tu's to once every 500tu's
1tu=1024 microseconds
This will decrease the amount of RF time being used by beacon packets.
This is especially important on 900MHz and 2.4GHz using 5MHz wide channels where 10 nodes beaconing 10x a second at ~256kbit/s can use up around 45% of the RF channel in beacons alone.
Other bands and channels and widths are not expected to see as significant an advantage due to the faster data rates.
This adds support for 802.11n data rates on the mesh.
This should improve dataspeeds across the board
MIMO devices like Rocket and NanoStation should be able to use dual chains which allows diverse data transmission on each chain increasing throughput
MCS data rates in theory should cut through noise better than legacy modulation and have higher speeds on each step which should allow overall higher datarate between nodes.
Merging in latest release-3.15.1.0 changes into develop to provide a foundation with recent release fixes for the develop branch.
This should be 3.15.1.0b03 code.
Conflicts:
files/etc/crontabs/root
files/usr/local/bin/wscan
files/www/cgi-bin/sysinfo.json
We don't really need any files in there, and keeping the folder can interfere with the programs that populate /etc/aredn_include on firstboot from uci-default.
This will cause the node to boot up in default mode (with an AP on its interface on the default channels) during its first boot, and than very quickly reboot and come up under the mesh.
Not getting much debug information at moment, would like to put this in uci-defaults but with issues that I can't seem to log at moment (and not having serial cable for this device) I'm going with lets put it in /etc/init.d/local before nvram and similar gets set.
ref AREDN->ticket:115
Old code would set mac on the sub-vlan not the master interface which could cause issues.
Rework to be more functional in the future and to work correctly on vlan interfaces.
ref AREDN->ticket:115
Firewall rules don't get called because vtund is at /usr/sbin/vtund not /usr/bin/vtund
Also make the check if line posix compatible while we are chaning the path to be sure it works in the future too.
Remove the chmod step inside of setup.
Came across one time where this didn't trigger.
In addition this saves us from using additional storage space on the node as a +x creates a duplicate file.
wifi detect is called in /etc/init.d/boot before uci_apply_defaults is called.
Because of this if we don't have the data about the radio0path we need to remove the wifi config file first before calling wifi detect.
Needs to be in uci-defaults to be sure these data sets execute BEFORE the OS boots
We also need to get radio0 path because its mandatory for wifi to work.
Needed for sysupgrade from 3.0.2 to latest version.
Allows nodes to default to a common channel that is in the most common bandplan space for Part 97 usage.
Local cordination is still needed by users to make sure the channel matches the local deployment.
Defaults are as follows:
Band : Channel Freq : Bandwidth
900 : 912MHz : 5MHz
2400 : 1 2412MHz : 20MHz
3400 : 3420MHz : 5MHz
5800 : 149 5745MHz : 5MHz
2.4GHz keeps channel 1 at 20MHz because it is the standard deployment.
All other bands are still 'new' and no standard exist so we are creating one.
5MHz chosen because it better fits the emcomm goal. Smaller width should be stronger allowing for better networks.
Local networks can change as they see fit.
Remove setting RF channel on first boot in uci-defaults.
This should allow the node to use standard wifi channels when it boots allowing mesh setup to be run from a laptop or mobile device.
We will later move them to a real mesh channel during the mesh setup page.
Should also resolv issue where nodes were booting up on channel -2 and similar and wifi would refuse to start due to regdomain.
Config file is present upon initial start and in mesh mode.
Daemon still starts up in other modes but will not function w/o settings.
Firewall:
Permit access for UDP:161 (SNMPD) on WIFI and DTDLINK
Lan is permitted by default allow rules.
Makes the nodes advertise using DHCP Options 121 and 249 routes to the mesh (10.0.0.0/8) and the reserved (172.16.0.0/12) address ranges.
This change allows directing systems to prefer the mesh node for mesh ranges unless another network rule is more specific (such as a directly connected network)
This is mostly useful where a PC may have multiple network connections active as it improves the desire for the packets to travel via the mesh network.
Currently the:
10.0.0.0/8 range is used by mesh nodes and dtdlinking of mesh nodes.
172.27.0.0/16 is used for default LAN network on NAT nodes.
172.33.0.0/16 is for ad-hoc tunnels
All others in the advertised range are reserved for future network use.
Under Barrier Breaker sometimes OLSRD gets started before any interface is up causing OLSRD to shutdown because no interfaces exist.
Forces OLSRD to stay on and wait for the interfaces to come online.
Nodes sometimes show up as a mid1 entry when dtdlink and RF connected.
Sometimes the nodes will get the eth0 ip because wlan0 is not up yet.
Under Barrier Breaker the MainIP option is now supported as part of the uci system which allows us to restore using this setting.
We can now force the IP address that is claimed (wlan0) for the primary IP of the node.
Since a large number of the BBHNDev team has decided to create firmware fully independent of the BBHN Project the decision has been made to rebrand the firmware to differentiate from the origional BBHN work.
We would like to thank all those whom have worked on the BBHN firmware over the years and all those who continue to work on the firmware under AREDN(TM).
When a non mesh-gw node has a route via the WAN interface and through a mesh-gw it will choose the mesh-gw instead of the local WAN connection.and
We change the routing list to prefer the WAN link.
When the WAN is static configured the user will need to disable the WAN interface for the mesh internet to be chosen.
When the WAN is configured to dynamic the loss of a DHCP lease will allow the node to chose the remote mesh internet.
The simple solution would be to change the WAN to disabled and reboot to ensure a remote node is used instead if the local internet fails.
Thanks to Joe AE6XE and Clint AE5CA for pointing out this scenario.
By checking the "Keep Settings" box the node will run sysupgrade instead of mtd. Core settings are stored between installs and the _setup files are updated by pulling in missing items from the _setup.default files.
Using a press of around 5 seconds (3-7) the node will reset the passord to BBHN default and enable dhcp on the lan interface.
A press of around 10 seconds (8-12) will cause the node to reset the node to 'just flashed' status and cause the node to reboot.
Due to multiple issues that olsrd secure seems to make occur more often (but is not soley caused by OLSR Secure) causing olsr to crash olsr secure is being pulled while we work on the module.
This partialy reverts commit 553c126490.
tag: RequiresProtocolIncrement
Required for 900mhz devices to be supported due to band size.
This can also be useful for allowing more devices to fit into the same amount of RF space as nodes may often not need full 20mhz wide channels.
2.4ghz while using standard BBHN SSID is restricted to 20mhz for compatibility.
ref BBHN->ticket:50
SSID Version increment for
changeset:a4dd9a9bdd798b05d76d71d135d860f57cb83d8d/bbhn_ar71xx and changeset:553c126490790a3d9873741551813a635a439c0b/bbhn_ar71xx
ref BBHN->ticket:28 and BBHN->ticket:37
Due to the 10.x network no longer going out via wifi we now have a dedicated daemon for performing node identification out the wifi interface. The old fccid scripts are no longer used.
ref BBHN->ticket:28
NOTE: This patch requires a kernel upgrade to fully work.
Adds new value wifi_country.
Country HX is being chosen for HAM band use.
Country selection is needed to help the device stay withing regulatory domain for worldwide use.
ref BBHN->ticket:29
The dtdlink interface is vlan 2 on eth0 and is used for linking two or more devices together.
This will allow for band-to-band repeaters, sector antenna setups, etc.
see BBHN->ticket:28
Includes band/channel mapping
Code to set default RF channel on first boot
Add many 5ghz Ubiquiti devices in a testing phase including:
NanoBeam M5 (Intl), NanoBridge M5, AirGrid M5 HP, AirGrid M5, NanoStation M5, NanoStation Loco M5, Bullet M5, Rocket M5
see BBHN->ticket:29