Commit Graph

435 Commits

Author SHA1 Message Date
Tim Wilkinson 93ad1f5ee7
Strip out as many dependncies from Lua Manager as possible to save memory (#522) 2022-10-13 12:07:36 -05:00
Tim Wilkinson 8fb2869881
Force a GC before the lua manager sleeps (#516) 2022-10-08 15:30:39 -05:00
Tim Wilkinson fe2122eae6 Merge vtun and xlink into one meshrouting hotplug script 2022-10-04 22:06:04 -07:00
Tim Wilkinson 64e4c1e3cd Support adding extra network links to OLSR
This is useful for non-AREDN backbone links, etc.
2022-10-04 22:06:04 -07:00
Steve bf105adf84
fix recoverymode script (#512) 2022-09-27 22:03:55 -05:00
Tim Wilkinson c341bba378
Switch to more active wifi reset (#508) 2022-09-20 18:29:03 -05:00
Tim Wilkinson b8fe2578a3
Add more 3XX redirects + 401 authentication (#506)
* Add more 3XX directs

* Allow pages which require user authentication
2022-09-12 16:09:19 -05:00
Tim Wilkinson 5efd0276fe Add a wifi scan trigger for when the nodes detected becomes zero 2022-09-10 12:39:44 -07:00
Tim Wilkinson 238d0fcd70
Stop node's LQM neighbors including itself (#502) 2022-09-09 08:50:39 -05:00
Tim Wilkinson 6ba17b8e5a
Snapshot hostnames after updates so we have a consistent copy to display (#488) 2022-09-06 09:58:18 -05:00
Tim Wilkinson 0cd4fd3edc
If redirect ends at an https link assume it is valid (we cannot check it) (#491) 2022-08-29 10:31:03 -05:00
Tim Wilkinson 9daf640c85 Optionally include static routes (and preserve them across upgrades) 2022-08-28 08:17:35 -07:00
Tim Wilkinson 1824b945c8 Dont validate hostname in NAT mode.
Hostname is always valid for NAT but not in the valid_hosts table.
2022-08-22 08:04:15 -07:00
Tim Wilkinson 46f48a92f2 Remove 172.16.0.0/12 route 2022-08-15 11:16:24 -07:00
Tim Wilkinson e1ddbabb85 Migrate LAN-to-WAN options to advance configuration 2022-08-15 11:16:24 -07:00
Tim Wilkinson d16e9e4f90 If address ping fails, also try an arping in case local device blocks pings 2022-07-26 23:48:24 -07:00
Tim Wilkinson 12e33e3d21 Layer-3 test (both tcp and udp) of non-http services 2022-07-21 15:16:45 -07:00
Tim Wilkinson 6eb4f64d23 Run an hourly check on the services we publish and disable any that
are not reachable
2022-07-21 15:16:45 -07:00
Tim Wilkinson dd590a6102
Handle dtd bridge device (#431) 2022-07-13 16:19:56 -05:00
Tim Wilkinson 7887497cb3 Allow auto-distance to be overridden when LQM cannot determine the
distance to other nodes
2022-06-27 15:29:39 -07:00
Tim Wilkinson f8d71b6552 Never block short DtD links regardless of quality.
Ignore invalid mac from arp table when building lookup table.
 This avoids a problem where a mac can be in the table twice,
 once valid and once invalid with an old ip address.
2022-06-22 11:57:29 -07:00
Tim Wilkinson a65e09e2ad Remove #NOPROP from /etc/ethers where it was being incorectly parsed.
The AREDN code now cross references entries in /etc/ethers with those in
/etc/hosts to determine if an IP is #NOPROP.
2022-06-21 08:32:48 -07:00
Tim Wilkinson bdb46624f0 DtD links have to be close by 2022-06-16 20:34:39 -07:00
Tim Wilkinson 6b1ec622aa DtD links have to be close by 2022-06-16 20:34:39 -07:00
Tim Wilkinson 28f25cf951 Allow user to force certain macs to be accepted 2022-06-16 20:34:39 -07:00
Tim Wilkinson fb2ec36bb6 LQM2 2022-06-16 20:34:39 -07:00
Tim Wilkinson b86213a66f
LQM fixes 6 (#379) 2022-05-31 21:54:02 -05:00
Tim Wilkinson ba94a86ce3 Fix empty initial lqm status.
Limit distance between DtD nodes which are considered at the same site.
Some network setups use non-ham networks to connect nodes over DtD links.
These should not be consider the same site, so we limit how far appart DtDed
nodes can be when optimizing.
2022-05-26 23:32:37 -07:00
Tim Wilkinson 2f96f2bc7a Really old sysinfo.json dont have link_info 2022-05-25 21:55:27 -07:00
Tim Wilkinson 53632d322d
LQM fixes 4 (#370)
* Tidy LQM status
Remove TX Estimate which was duplicating information on the mesh page and
confusing folk.
Sort by name to stop the display jumping around.

* Split out ping and tx qualities and use average of both.

* Improve keeping re-discovered nodes in pending

* Remove .local.mesh from hostname (they're there sometimes)

* Identify why poor quality traffic is blocked
2022-05-24 10:35:36 -05:00
Tim Wilkinson 988c7f251b
Turn LQM off when not enabled!! (#369) 2022-05-23 07:44:37 -05:00
Tim Wilkinson b680d2019e
LQM fixes 3 (#366) 2022-05-22 21:06:02 -05:00
Tim Wilkinson 754ced48b0
Inverted test for different port forward (#368) 2022-05-22 21:05:08 -05:00
Tim Wilkinson 1ceb7b2140
LQM fixes 2 (#365) 2022-05-20 21:23:57 -05:00
Tim Wilkinson a8b7f8a216
LQM improvements (#364) 2022-05-20 08:10:01 -05:00
Tim Wilkinson b23ab5ee8a
Link Quality Management (#360)
* Link Quality Management experiment (built in)

* Protect LQM pages

* Omit "empty" mac addresses

* Integrate LQM v0.2
Includes proposed UI if this were built-in.
When LQM is enabled (advanced settings) the usual distance inputs are
replaced with "min snr' and "max distance" inputs which are the major
ones you might tweak, as well as a link to the LQM status page.
Other controls are now available (so protected) in advanced settings.

* Improve LQM updating

* Use running snr averages

* Merge app changes

* AREDN-ize the UI

* Improve status language

* Improved DtD detection

* Improve quality reporting

* Link Quality category

* Enable by default

* Better intergration

* Link => Neighbor

* Formatting

* Make sure initial page is populated without extra fetch

* Handle empty lqm.info

* Update with latest experiment algorithm changes

* Validate LQM settings before applying them

* Algorithm updates

* Improve quality reporting

* %% -> %

* Default max distance now 50 miles

* Get actual noise if radio will provide it

* low_snr => min_snr

* Dont print node description if we dont have one

* Remove properties duplicated from setup page

* Localize max distance. Miles in GB and US, Kilometers everywhere else.

* Ping link quality testing

* UDP 'ping' for quality check

* Change Active Settings title

* Expand ping test

* Improve messaging

* Add a ping penalty for neighbors which cannot be contacted in a timely manner.

* Remove user_blocks config option. No one needs to use this anymore.

* Localize distances on lqm page

* Improve status reporting

* First run emergency node setup.
When a node first runs LQM, if the default settings fail to connect to
a node we will now adjust them so that at least one node is viable.

* Restore blocking of mac addresses

* LQM now off by default
fixed #47
2022-05-18 12:49:00 -05:00
Tim Wilkinson 276d1411f1 Fix updating of dmz mode in /etc/config/aredn 2022-05-12 05:19:56 -07:00
Tim Wilkinson 7aff95711e
Improve rss_monitor startup (#346) 04/27/2022
And shut down if we hae no wifi to monitor
2022-04-27 10:38:54 -05:00
Tim Wilkinson 0632a63853
Missing year (in one place) when updating snr log (#341) 2022-04-23 20:37:26 -05:00
Tim Wilkinson c83cef5928
Old version - now in mgr/snrlog.lua (#339) 04/22/2022 2022-04-22 07:38:09 -05:00
Tim Wilkinson 1905d1a514 Stop postupgrade from ditching the vlan info 2022-04-19 17:24:46 -07:00
Tim Wilkinson 7b77f111ce Support changing the VLAN tag on WAN 2022-04-19 17:24:46 -07:00
Tim Wilkinson 2e4b51105c Handle nil links from olsrd 2022-04-19 04:34:41 -07:00
Tim Wilkinson ce05aeb727
Make sure services are published even when no dtd or lan connected. (#327) 04/06/2022
If wifi is disabled, we will be using a "fake" device for the meshrf. However, this requires that the
underlying physical device is attached, and this might not be the case on devices with present
multiple ethernets (e.g. eth0 and eth1). Detect this and add an extra Hna4 config to OLSR to allow it to
keep using the wifi_ip even when no physical ethernet is attached.
2022-04-06 15:57:54 -05:00
Tim Wilkinson b26476f5e2
Fix displaying "Previous neighbors" with empty hostnames (#325)
* Dont display previous neighbors with empty hostnames
* Use IP address when name missing
* Fix bug where missing names became ever growing string of whitespace
2022-04-04 22:16:35 -04:00
Tim Wilkinson fc55e44001
Run NTPD daily to sync time against network clock (#319) 2022-03-27 20:13:18 -05:00
Tim Wilkinson a322c4a113
Add periodic tasks in the style of cron hourly, daily and weekly scripts (#317) 2022-03-24 21:52:32 -05:00
Tim Wilkinson e07836215e
Fix wifi channel type (#314) 2022-03-22 06:33:30 -05:00
Tim Wilkinson a716167fa1
Found some pieces that I forgot to remove (#308) 2022-03-19 09:20:28 -05:00
Tim Wilkinson f9b787c604
Dont truncate aliases on upgrade (#301) 2022-03-17 14:26:52 -05:00
Tim Wilkinson ad78e077f0
Improve the firmware upgrade process (#294)
* Improve the firmware upgrade process

The old firmware upgrade process attempted to free up RAM by reusing
the 'upgrade_kill_prep' script which is later used by '/sbin/sysupgrade'.
Unfortuantely this doesn't work as intented. While the script will go about
killing various services, 'procd' just goes and starts them up again using
quite a bit more memory in the process. Instead this script just kills
the various daemons 'no questions asked' and then runs the associated
'/etc/init.d/xxx stop' script to instruct 'procd' not the start them up again.
This gets us to the place the original script was trying to go.

+ A syntax fix in '007' patch (need spaces around the [ .. ])

* Inline the style for the firmware page to avoid sleep before flash

* Minor reliability improvements

* Clear away services even earlier
2022-03-16 21:45:26 -05:00
Tim Wilkinson 09985d3c57
Completely remove perl from the build DUMP_PERL (#291)
* And finally ... remove perl from the images

* Remove two more than came from the Admin merge

* Remove perl from perm packages
2022-03-15 21:23:39 -05:00
Tim Wilkinson 49300073dc
Remove xinetd (which has little to do) (#292)
Switch olsrd dot_draw plugin to directly accept connections and not pass through xinetd.
2022-03-14 19:23:03 -07:00
Tim Wilkinson 7dde68bbb5
Lua page: Admin (#290)
* Fix scripts to fail gracefully if tunnel software not configured.
* Add 'manager.lua' to restart list
* Admin page in Lua (+associated upgrade script)
* Rename bbhn-postupgrade -> aredn_postupgrade
* Add missing 'uploadctlservices' call before package upload
2022-03-13 20:19:04 -07:00
Tim Wilkinson d9c2bb1bee
Fix noprop flag detection (#284) 2022-03-11 16:01:02 -06:00
Tim Wilkinson afda7e35ca
Fix the pattern used to validate services (#280)
* Fix the pattern used to validate services
* Missing % in nslookup pattern
2022-03-10 18:31:40 -08:00
Tim Wilkinson 93e8d0a53d Cron is only running to poll AREDN messages, so kill it.
And move polling into the Lua Manager
2022-03-09 19:18:19 -08:00
Tim Wilkinson a0e7749b1e
Lua stragglers (#274)
* Final bits of perl replaced by lua

* Use iwinfo during first boot (api I was using fails this early)

* Retry getting phy device (it can fail as the node is booting up)
2022-03-08 21:22:07 -06:00
Tim Wilkinson 922a74d574
Lua userpages: Tunnels (#271)
* Lua vpn server and client pages

* Lua vpn server and client pages

* Fix reporting of daemon restart errors

* Lua olsrd-config

* Fix reversed client/server ip assignments

* Fix patterns for finding active tunnels
2022-03-08 21:07:58 -06:00
Tim Wilkinson 9db60550d1 Fix url format for no-link service names 2022-03-07 21:45:44 -08:00
Tim Wilkinson 108a3e839e Bridge handling on older devices is more complex 2022-03-06 19:10:16 -08:00
Tim Wilkinson 6d321a119f Not adding multiple devices to bridge in older nodes.
Also known as "listen to Joe". While the last chance to
this fixed the 'ifconfig' problem, it incorrectly only added the first
device to the bridge.
2022-03-06 19:10:16 -08:00
Tim Wilkinson 6aa7175026
Fix poor dhcp and alias patterns. (#254) 2022-03-03 17:03:38 -06:00
Tim Wilkinson 7d3f97519d Fix txpower enable comparison
== 1 isn't the same as == "1" in Lua
2022-03-02 17:19:14 -08:00
Tim Wilkinson 7b48dc3200 Only one device name per interface name (some devices have 2) 2022-03-02 07:25:23 -08:00
Tim Wilkinson a3f9e98577 Dont stop linkled service which no longer exists 2022-03-01 16:09:01 -08:00
Tim Wilkinson 01dbc757fa
Missing commas in dhcp options (#237) 2022-02-28 13:04:45 -06:00
Tim Wilkinson 301112fb37
Fix dmz_mode handling (#235) 2022-02-27 17:57:51 -06:00
Tim Wilkinson 70f81f5269 Check for various service and port files before opening them 2022-02-26 13:24:43 -08:00
Tim Wilkinson 861db07ad6
Move multi ant detection into main run method (#229)
to avoid startup failures.
2022-02-24 11:06:29 -06:00
Tim Wilkinson 2d3e9a86b3 Fix typo when checking for multiple antennas
This check can fail if the rssi manager is started early but the daemon will
be restarted.
2022-02-23 15:40:32 -08:00
Tim Wilkinson 149b698d31
Lua userpages: setup (#220)
* Lua 'setup' page + backend node-setup
Moved old perl verison to .pl

* Make sure perl code continues to use node-setup.pl
2022-02-22 19:25:01 -06:00
Tim Wilkinson 1ddedbb1e6
Link led fixes (#212) 2022-01-28 20:19:34 -06:00
Joe AE6XE ce4f694563
aredn: extend 2G band adding ch -3 and ch -4 (#210) 2022-01-21 21:52:26 -06:00
Tim Wilkinson fa6c2da4fe
Lua Services (#189)
* Lua Services

* Support multiple antenna chains

* Improved led detection

* Fix logging

* Add manager.log files to support tool
2022-01-17 18:54:44 -06:00
Tim Wilkinson ee2791c621
Dmz mode migrate fix (#169)
* 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
2021-11-19 15:48:45 -06:00
Tim Wilkinson 8ea58e4949 Revert failed olsrd fix 2021-11-08 19:40:47 -08:00
Tim Wilkinson ce296c94d4 Make sure wifi is up before letting OLSRD run 2021-11-07 11:09:34 -08:00
Steve AB7PA 8ff4156d37
fix snrlogging issue (#131)
Add default values to snr variables to avoid fatal errors that prevent 
snr.dat and snrlog/files from being written.
2021-07-10 12:40:28 -05:00
Paul K3PGM 3ddb7a0bb2
feature: runtime-configurable tunnel limits (#84) 2021-04-23 09:46:09 -05:00
Steve AB7PA 6cc379d647
bug: fix nill typo (#88)
* bug: fix nill typo

Fix typo (nill to nil) in pidfile test.

* bug: fix nill typo

Fix typo (nill to nil).
2021-04-06 21:15:50 -05:00
Eric 2c1bd9ce0e
aredn: enhancement: Nat mode aliases
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.
2020-10-07 16:20:59 -07:00
Eric 5948946de6
aredn: visualize non-propagated and aliased hosts (#569)
* enhancement: show the "non propagated" hosts as a grey color in the mesh list on the localnode.
This allows for the node admin to see, at a glance, which of the hosts are "hidden" or not.

* changed colors a little bit for the black background styles.
also assed in the aliases so now they will show up as a different color too.
this only effects the mesh listing on the localnode to where the aliases and/or non propagated hosts are.
the rest of the network does not see this.

* add a tooltip to the aliased/non propagated hostnames to help explain what they mean
2020-09-10 07:39:55 -05:00
Eric e13dd2cb04
aredn: allow aliased hostnames on the mesh
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
2020-09-08 16:39:49 -05:00
Steve Lewis AB7PA ad578d8944 Add file size tests to arednMsg
Add tests for file content to aredn_message.sh
2020-09-02 20:38:12 -05:00
Steve Lewis AB7PA afb18b3a52 Tweak aredn_message display
Tweak the node id on the AREDN message display.
2020-08-30 13:35:37 -05:00
Eric 8810e0eaaf Stop certain hostname/IP's from propagating over the mesh
Allows for the node admin to choose to have DHCP leased hostnames/IP's propagated over the rest of the mesh network or not.
Defaults to allowing the hostname/IP to propagate.

The hostname/IP will *still* be resolvable from the localnode and will show up in the list of hosts on the localnode only.
This allows for selected local mesh devices to be not available over the rest of the mesh network.
ie: switches, routers, cameras, etc.

This will work immediately for *new* DHCP leases when the checkbox is selected.
For *existing* DHCP leases, it may take a while for the network to update, if ever.
To speed up the process of full network OLSR "DNS" updating, reboot all the nearest neighbor device(s) to the node you made these changes to.
That seems to get the changes "out" to the rest of the network faster than normal.

Fixes #508
2020-08-29 09:06:21 -05:00
dman776 8ec57de248
bugfix: correct lower-case translation for hostname (#555) 2020-08-22 09:50:58 -05:00
dman776 5e572ff66a
aredn: add aredn local alerts capability (#552) 2020-08-18 16:17:03 -05:00
Joe Ayers cecca6854d aredn: add Mode ether to tunnel interfaces
This reduces message forwarding by OLSR. Without this mode
olsr will forward a message backout the same interface it
was received on, presumably due to hidden 802.11n nodes.
2020-05-28 23:06:42 -05:00
dman776 c3f94bd0d5
feature: add "aredn alerts" feature in header (#505)
* feature: add "aredn alerts" feature in header

* optimize conditional logic

* additional fixes

* improve presentation display
2020-04-08 21:31:01 -05:00
Joe Ayers d9cbccdb41 bugfix: aredn: Port Forward not working over dtdlink in LAN NAT mode
Tested-by: Timm Schunck <dl4fly@darc.de>
fixes #449
2020-02-23 21:31:00 -06:00
Joe Ayers ae593838bb aredn: upgrade to Openwrt 19.07.0 release
Co-authored-by: Andrew KK4ZUZ <apcameron@softhome.net>

This commit begins the process to migrate from ar71xx to
ath79 target images.
2020-01-29 07:39:05 -08:00
Joe Ayers 3a4d92add2 aredn: switch from active to passive wifi scan
Password protection is no longer necessary with
a passive scan.  results are same or very similiar,
both options do not always show all devices.
2019-08-24 20:48:52 -07:00
Joe Ayers f81c129dae aredn: enable wan wifi client to connect to an open AP 2019-06-20 13:27:51 -07:00
Joe Ayers 9967d0f978 bugfix: wan interface fails to function on UBNT NS XM devices
The WAN network fails to be configured correctly on
UBNT NS XM devices.
2019-06-19 09:48:19 -07:00
Joe Ayers 74ca6f5a17 aredn: add wan wifi client capability 2019-06-17 20:45:02 -07:00
Joe Ayers d8f9320021 aredn: add GL-iNet AR750 definitions 2019-05-26 16:24:39 -07:00
Joe Ayers 239156084f aredn: check less frequently to update Mesh link LED
OLSR has rare symptoms of live lock and stops
updating routing and host information.  Suspect cause is
single threaded implementation with plugins continually
called from mutiple sources.  Prior fixes to ensure
read/write calls are properly written may not have
fully resolved the causes.  This change will reduce calls
to retrieve olsr data.
2019-05-19 02:47:31 -07:00
Joe Ayers fc2235377a aredn: add support for GL-AR300M16 2019-05-17 21:39:38 -07:00
dman776 10f3426e38
feature: add "MESH" led for GL USB150 (#417) 2019-05-14 20:38:41 -05:00
Joe Ayers f134465edb aredn: add auto distance setting option
contributing author lua code: dman776 <dman776@gmail.com>
2019-05-03 19:17:14 -07:00
ZL2WRW 1a43b07293 Add experimental support for the GL.iNet GL-AR150 (#407)
* Add experimental support for the GL.iNet GL-AR150 - https://openwrt.org/toh/gl.inet/gl-ar150
Mesh networking and tunneling have been confirmed working.
This device has been confirmed capable of operating on channel -1, but /etc/config/wireless has to be manually edited to select this channel.

* www/cgi-bin/perlfunc.pm patched to add UI support for the GL.iNet GL-AR150

* www/cgi-bin/perlfunc.pm patched to add UI support for the GL.iNet GL-AR150 - seems like only 18 dBm TX power is possible

* Remove Experimental comments and designate as stable

* Configure Ethernet ports & VLANs for GL-AR150, and update README.md

* Fix misunderstanding re README.md

* Patch Upstream OpenWRT GL-AR150 LAN & WAN LED mapping, configure WLAN LED as mesh linked indicator.
2019-04-30 20:55:09 -05:00
Joe Ayers 9665a8aeee bugfix: ubnt lbe-m5 does not identify boardid
fixes #398
2019-04-13 21:45:37 -05:00
Joe Ayers 9470c6b1ad aredn: add definition for Mikrotik LHG 5HPnD 2019-04-02 17:57:04 -07:00
Joe Ayers a399623140 Revert "aredn: enable ath9k auto distance capability (#367)"
This reverts commit d5be7814b3.
Auto Distance is not ready for a release and will be
reintroduced afterwards. Added logic to reset '0' distance
to 60km so tower nodes will continue to respond after
upgrade if running the experimental auto distance
2019-03-21 21:30:48 -07:00
Joe Ayers 07aa305e29 aredn: olsrd: add olsrd watchdog
Adding native olsrd watchdog on top of procd
ensures mesh nodes are always accessable.

closes #338
2019-01-27 14:12:37 -08:00
Raymond Suelzer 664f2ee629 Some LUA Code Clean Up, API (#327)
* Refactor API

* work in progress

* lua clean up
2019-01-21 15:41:31 -06:00
Joe Ayers 22fe3bdc66 bugfix: olsrd: clean up startup warnings 2018-12-31 15:18:58 -08:00
Joe Ayers 588b59cf65 aredn: Add definitions for Mikrotik RB-911G-5HPnD 2018-12-18 20:40:58 -08:00
Joe Ayers 1c6d2286cc aredn: hap ac lite add 2G/5G lan ap options
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.
2018-12-17 20:13:37 -08:00
Joe AE6XE f777e914f9 aredn: Mesh RF enable/disable (#307)
add feature to turn off Mesh RF if not in use.  When off,
section to re-purpose wireless card to LAN bridged Access
Point becomes visable.
Closes #155
2018-12-12 15:16:07 -06:00
Joe Ayers 7486a179c7 aredn: add support for Mikrotik LDF-5nD 2018-12-07 21:36:03 -08:00
Joe AE6XE 123949de9e
aredn: Standardize Ethernet Port vlans for UBNT XM devices (#297)
The secondary port on Ubnt XM devices was non-functional.
Enabled bridge type in network config to utilize both ports.
2018-12-02 17:52:48 -08:00
Joe AE6XE 303c50904c
aredn: harden hAP ac lite 5Ghz Lan Access Point (#293)
enable passwords with virtually any character,  enable SSIDs
with virtually any character.  ensure ap is always
encrypted to give operator control of client access and
license compliance.  Remove (week) WEP encryption option.
2018-11-30 08:32:38 -08:00
Joe AE6XE a62fe95b26
aredn: hAP ac lite enable 5GHz LAN Access Point (#287)
* 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
2018-11-27 21:37:59 -08:00
Joe Ayers cae6886dca aredn: stop cron prior to starting sysupgrade 2018-11-27 20:38:26 -08:00
Joe Ayers 264c32a61d bugfix: POE passthough fails on NS XM devices
the Nanostation XM devices require setting the gpio
port direction unlike some other devices
2018-11-27 18:26:02 -08:00
dman776 a59fe2524a
bugfix: usb_passthrough script missing execute bit (+x) (#283) 2018-11-26 13:53:10 -06:00
Joe AE6XE 355e34080f aredn: Add definitions for Mikrotik LHG-5HPnD-XL 2018-11-17 10:40:33 -08:00
Joe AE6XE c8e13ae797 aredn: Add definitions for Mikrotik LHG5 2018-11-10 13:53:45 -08:00
dman776 861de150ea
feature: add USB passthrough support to advancedconfig page (#255)
* feature: add POE passthrough support to advancedconfig page

* correct shellcheck warnings
2018-11-06 16:00:26 -06:00
dman776 9a47ff800a
bugfix: correct poe functions in adv cfg (#250)
* bugfix: correct poe functions in adv cfg

cleanup shellcheck errors

* avoid unnecessary shell
2018-10-27 11:37:45 -05:00
dman776 8716fd42be Add PoE passthrough option to advanced config (#243)
* minor changes

* handle null value (change to 0)

* add poe_passthrough script

* change key location

* change key name

* add default info into aredn uci file

* add conditional functions
2018-10-26 19:34:16 -07:00
dman776 4c79a5c755
remove aimer script (#236) 2018-10-23 10:16:47 -05:00
W. Kyle Hamilton a038ce84b6 Typos (#234)
* typo

* typo in code commits

* Capitalization
2018-10-22 17:04:11 -05:00
W. Kyle Hamilton 6f9a8327cb bugfix: Fixed README and comment typos (#220)
* typos

* Update README.md

* Update aimer
2018-10-08 07:44:13 -07:00
Joe AE6XE b432be987f bugfix: aredn: correct test script warnings and errors 2018-09-17 21:42:52 -07:00
Joe AE6XE 3938f33afe aredn: harden cron maintenance scripts
ensure maintenance scripts execute one at
a time and never in duplication
2018-09-13 16:20:18 -07:00
dman776 c2894f8df9
rework sysinfo.json to improve structure (#185)
* rework sysinfo.json to improve structure
re-organize "info" functions into their own lib

* change egrep to grep -E to eliminate shellcheck warning
2018-09-10 13:37:50 -05:00
Joe AE6XE 0bd057ed40 aredn: phase 1 support for Mikrotik rb952Ui-5ac2nD
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).
2018-09-03 23:26:56 -07:00
Joe AE6XE 5abeb8f7ac bugfix: aredn slugbug mitigation
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.
2018-08-22 07:23:53 -07:00
Jason 30069e5ade Format code 2018-07-20 20:34:44 -08:00
Joe AE6XE 287a995089 bugfix: update wscan to nslookup parsing in opewrt 18.06 2018-07-15 16:06:30 -07:00
dman776 2db67fc168
bugfix: signal charts drop-down list only contains the avg signal for all connected stations (fixes #48) (#58) 2018-07-12 17:32:55 -05:00
Joe AE6XE 8cbc9a1435 hardware: add aredn definition for mikrotik 912uag-5hpnd
Mikrotik RouterBOARD 912UAG-5HPnD or BaseBox 5 definition
2018-06-15 17:50:18 -05:00
Joe AE6XE d66a7e8842 bugfix: sysupgrade no longer supports -d option 2018-05-19 07:12:14 -07:00
dman776 3e4e6270b7
feature: add bootloader version to supporttool output (#8)
* feature: add U-Boot version to supporttool output

* feature: add bootloader version to supporttool output
2018-05-13 23:02:57 -05:00
dman776 7f78757bc2
correct issues in files so build test will pass without issue (#4)
* correct issues in files so build test will pass without issue

* correct issues in files so build test will pass without issue
2018-05-02 19:42:04 -05:00
Andrew Cameron 1fc7a926ab bugfix: fix scripts to current standards
local can only be used in a function
2018-03-29 22:00:19 -07:00
Joe AE6XE b7cacc3d18 package: olsr: AREDN upgrade to 0.9.6.2 2018-03-29 21:03:16 -07:00
Conrad Lara - KG6JEI e5fc675cfc bugfix: OTA Upgrade fails with static WAN.
Wan interface settings are not correctly copied
over after an OTA causing node-setup to fail
when using a static WAN ip.

fixes->AREDN🎫226

Change-Id: I494c05bc0047f1db4c1452cbdbd8e236f4fcd945
2017-04-20 12:41:09 -07:00
Conrad Lara - KG6JEI 835d7e021c bugfix: Upgrades of packages leaves node in upgrade mode.
Due to the removal of odhcpd in
I0897be587cd1f46da758dda3efe65aea32c8a965
uploadctlservices no longer returns successfully.

Remove odhcpd to allow to return correctly.

Change-Id: I8e4bc2ff5846b793e31ce5ffedfba91806df7ed1
2017-04-11 19:26:28 -07:00
Conrad Lara - KG6JEI 2415c56c3e bugfix: sysupgrade needs more tmpfs space.
Increase space on tmpfs just before launching sysupgrade
when the device has had tmpfs limited to 6.5mb

Change-Id: I5b27e6812017c4cbe5d9cb3f53cb04d09892edf4
2017-04-04 23:31:50 -07:00
Conrad Lara - KG6JEI a57d5cd08c bugfix: olsrd-watchdog false reports
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
2017-03-31 19:34:49 +00:00
Conrad Lara - KG6JEI 8ee8fbefe0 bugfix: Increase available memory during upgrade/install process
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
2017-03-08 03:23:52 +00:00
Darryl Quinn 956c6b7cd8 bugfix: change charts to be time linear
Change-Id: I06e0c8d1d5d39e9faa46bfec3442bf2e3071c8ff
2017-02-03 16:34:25 +00:00
Conrad Lara - KG6JEI c592f44ab0 Sourcecode license text spelling correction.
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>
2016-12-30 18:54:05 +00:00
Darryl Quinn 1e08847db0 change: add chart null on timeout, skip signal 0 in archive.
Change-Id: Ia30bfebb3d5df097e69f1fb9e8cb75e8f317e3ff
2016-12-28 04:54:34 +00:00
Conrad Lara - KG6JEI a39abd3813 bugfix: Typo in comment header for perl scripts
This is at the top of the license header.

It prevents the code from being processed but doesn't
actually impact the license terms in any way.

Change-Id: Ic91f2400f9694056b6f06fa43d1074411d6c6262
2016-12-23 16:45:47 -08:00
Conrad Lara - KG6JEI db2046092f bugfix: Make get_model return model of device instead of board type
Fixes the fact that get_model has done the same as other functions.

This probably always should of been a real model of active device
not just of the hardware type from the begining.

DEV NOTE:
This is in perl, even though we intended to migrate to LUA the
core library that contains this data has yet to be migrated
so we need to add this as a perl program.

Change-Id: Ib8a4ea6dd881c32e6d7660607576aeb5218b1e7a
2016-12-23 19:30:15 +00:00
Darryl Quinn b9c77fa551 change: snrlog to keep logs longer after signal loss
Change-Id: Ifab054fcc2bd1578789dbe61f1ae300cce4c2ccd
2016-12-14 14:18:37 -06:00
Darryl Quinn 37a7b57c0a feature: add mcs/rate info to snrlog for archive
Change-Id: I8caa8a0b8cdef74be646283fa458e89b378e608b
2016-12-12 20:18:27 +00:00
Darryl Quinn a1da9c0ad7 migrate snrlog to lua
Change-Id: Icecf72e370c5e938d8d689a858d57094fe847e45
2016-12-03 20:18:24 +00:00
Conrad Lara - KG6JEI 811f52f93b bugfix: SSID handling in system tools.
Corrects flaws in how the web user interface displays SSID's
picked up by wifi scanning.

In addition remove the defunct (never supported) connect program
since we never use it (no more client  mode) and it could have
issues with correctly passing SSID's from the shell.

Change-Id: I0444c1b3226b9bc5c3d3044fd5c9849a0d2bf67d
2016-11-22 22:06:57 +00:00
AE6XE b2edc2472b bugfix: Add support to obtain boardid from more Ubiquiti devices
Change-Id: I60ad4d23339c4aaf59b429c49fa705dbbe49ba8e
2016-09-30 20:41:33 -07:00
Conrad Lara - KG6JEI 717b39c2fd hardware: Add support to obtain boardid from more Ubiquiti devices.
Obtain the board ID from the EEPROM on *-m-xw devices.

ref AREDN->ticket:185
ref AREDN->ticket:43

Change-Id: I86247640773a1f6cbd3c4792502d7da4890a46a4
2016-09-24 08:28:31 -07:00
Conrad Lara - KG6JEI 1b65f8a3ad bugfix: UI allows enabling mesh_gw when wan disabled or nat mode
Mesh nodes would need a significant amount of configuration
including some operational checks everytime an interface comes up
to be able to handle this.

The more sane method is to only allow a node to be a mesh_gw when
the WAN port is utilized and the node is in DIRECT mode.

This changes the UI to prevent this setup from being allowed.

fixes AREDN->ticket:184

Change-Id: I1a1289bc914a349149f5842812dbebc0a70442f7
2016-09-20 23:09:03 -07:00
AE6XE d4b7617e03 remove non-mesh modes from setup options
fixes AREDN->ticket:175

Change-Id: I7517df178a5ce82ef79ec4af844932fe6569d8da
2016-08-07 21:38:18 +00:00
KG6JEI 32a0d6348d Merge "Merge branch 'ChaosCalmer' into develop" into develop 2016-06-20 05:53:31 +00:00
Conrad Lara - KG6JEI 061ede3488 Merge branch 'ChaosCalmer' into develop
Change-Id: I26a8677595a25aae267b7365f1e5835ea68f49b4
2016-06-19 19:26:12 -07:00
Conrad Lara - KG6JEI 8abe628915 Cleanup /usr/local/bin scripts to pass shellcheck
Correct all shellcheck "errors" and "warnings" for
/usr/local/bin/* shell scripts.

This is necesary to have Jenkins start publishing test results.

All code worked on nodes but pushed to strict posix compliance
as part of the cleanup.

SC1001,SC2002,SC2004,SC2006,SC2034,SC2039,SC2086,SC2155
https://github.com/koalaman/shellcheck/wiki for more info

Change-Id: If1f27381eedae79087e490ea12f5939f8cc525a0
2016-06-18 04:52:08 +00:00
KG6JEI ae6688dc33 Merge "security feature: Enhance HTTPD password security" into develop 2016-06-16 05:39:10 +00:00
Conrad Lara - KG6JEI 1ee5cc698b cleanup: Cleanup shellcheck reported concerns in vtun_up
Change-Id: I88c775243a33731a182fd81d411bca664538e536
2016-06-15 08:08:28 -07:00
Conrad Lara - KG6JEI 70e93c09d7 bugfix: Refer to in interface by iif not iff
This may be why we have seen nodes in the past with stray routing table entries.

Change-Id: Ib47cc76eb9f2cd9328252a8a8a6d1bda0a6af35b
2016-06-15 08:07:20 -07:00
Conrad Lara - KG6JEI 8f91ad1e0e security feature: Enhance HTTPD password security
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
2016-06-10 19:37:57 -07:00
Conrad Lara - KG6JEI 1271db794a Merge 3.16.1.0 as released into develop
Merge branch 'release-3.16.1.0' into develop
2016-05-17 09:50:40 -07:00
AE6XE 38a2835471 bugfix: sysupgrade full reboot message not displaying 2016-05-10 19:22:33 -07:00
Darryl Quinn 9800612d86 allow sysupgrade time to settle in order for http to finish delivering the "rebooting" page 2016-04-29 22:29:57 -05:00
Conrad Lara - KG6JEI 86d17e0998 bugfix: RFC Compliance for DHCP and Classless static routes
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
2016-03-31 22:54:29 -07:00
Trevor Paskett - K7FPV 7d437e2cb8 bug fix: run sysupgrade forked off from uhttpd, kill un-necessary processes and flush page cache during firmware upgrade 2016-03-08 20:29:35 -07:00
Conrad Lara - KG6JEI fad8a43974 cleanup: Resolve "used once" warning. 2016-03-06 23:38:00 -08:00
Conrad Lara - KG6JEI 5fa47d6f93 bugfix: ar71xx: airrouter: Use "Globe" LED to indicate mesh connection 2016-01-17 20:09:11 -08:00
AE6XE 6d619b6757 Merge: bugfix: snrlog fix for out-of-range noise floor values returned by iw 2016-01-16 17:23:28 -08:00
AE6XE f02d4abd33 bugfix: snrlog fix for out-of-range noise floor values returned by iw 2016-01-16 17:21:55 -08:00
AE6XE 31032615a7 merge: bugfix: rssi_monitor increase tolerance on test one notch 2016-01-09 21:02:55 -08:00
AE6XE 97d48c2b84 bugfix: rssi_monitor increase tolerance on test one notch 2016-01-09 21:00:09 -08:00
Conrad Lara - KG6JEI bb10ca7faf Merge branch 'FirewallIncludes' into develop 2016-01-09 19:48:18 -08:00
Conrad Lara - KG6JEI e8b2ffd7ea feature: FirewallIncludes: Migrate tunnel firewal rules to new include format.
These rules setup chains that may be needed by other firewall rules as such we need to set them up early to be sure includes work.
2016-01-09 16:24:54 -08:00
Conrad Lara - KG6JEI 477a20d55a feature: FirewallIncludes: Add program that will auto include firewall rules that are in a set directory.
This is the basis for allowing packages to contain firewall rules that can be just dropped in a folder at install time.
2016-01-09 16:24:45 -08:00
Conrad Lara - KG6JEI 5c87a894c9 license: Add license header to vtun_up file 2016-01-09 15:10:58 -08:00
Trevor Paskett - K7FPV 3359c44ca7 feature: add jsoninfo to olsr and open firewall ports 9090 2016-01-05 11:00:22 -07:00
AE6XE 38209b0af2 bugfix: snrlog better handle neighbor references from mac to ip to hostname 2015-12-30 17:57:49 -08:00
Conrad Lara - KG6JEI 2dfc911df7 Merge branch 'release-3.15.1.0' into develop
Conflicts:
	files/www/cgi-bin/mesh
2015-12-22 08:45:09 -08:00
AE6XE 265d2eb196 feature: enhance snrlog to squareLine, local TZ, fix test condition 2015-12-15 22:45:29 -08:00
AE6XE d33726e893 bugfix: resolved rssi shift condition that needed a noise floor calibration 2015-12-14 21:44:08 -08:00
AE6XE ad856844bf feature: enhance snrlog to handle neigbors dropping in and out and leaving mesh 2015-12-14 20:55:07 -08:00
AE6XE 6903476f02 feature: snrlog updates to handle host name change and lack of hostname or ip info 2015-12-11 10:25:38 -08:00
Darryl Quinn 62ba6daf75 bugfix: display correct month 2015-12-11 01:04:34 -06:00
Darryl Quinn 43565d714e updated snrlog for multi devices 2015-12-10 11:17:03 -06:00
Darryl Quinn 833dedd8fa changed the filename that snrlog cron job creates 2015-12-09 17:20:16 -06:00
AE6XE 8c3c436cb7 bugfix: rssi_monitor fails if node goes deaf in first 12 min after startup, trigger on abnormal increases. 2015-12-08 22:06:55 -08:00
Conrad Lara - KG6JEI a489928fc6 bugfix: sortable wscan was removed during previous merge.
During a previous merge the sortable code for wscan was accidentally removed.
2015-11-23 19:58:37 -08:00
Conrad Lara - KG6JEI c5a1f21d77 bugfix: dnsmasq not updating hostnames ( dnsmasq pid file has moved ) 2015-11-23 19:17:38 -08:00
Conrad Lara - KG6JEI 48cb37bd05 Merge branch 'release-3.15.1.0' into develop
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
2015-11-15 19:28:56 -08:00
Conrad Lara - KG6JEI 854a536629 bugfix: Settings set to 0(off/disabled) are not copied over during OTA.
Some settings would not copy correctly and would fall back to the config default due to faulty if checks logic when the value was set to 0 ending up in if(0) checks.
2015-11-15 10:59:17 -08:00
AE6XE 79bf05f7d9 bugfix: rssi_monitor log file size trim calculation error 2015-11-02 22:15:22 -08:00
AE6XE 8cd8e07885 bugfix: deaf chain workaround 2015-11-01 18:33:05 -08:00
Conrad Lara - KG6JEI a200f49a37 bugfix: Better handle AP detection.
All devices that respond to an iw scan will be AP's or ADHOCS.

All adhoc devices need to have the adhoc designator so if we don't see this we know its an AP.
2015-09-04 22:19:53 -07:00
Conrad Lara - KG6JEI c7bde9712a bugfix: station listing includes nodes that have not been seen for some time
Also resolves the "0" signal strength as nodes that have not been seen in long time show up as a 0 for signal.

This is a regression of the issues seen on the iw scan but in this case applies to station dump which we have not used before.
2015-09-04 22:11:00 -07:00