aboutsummaryrefslogtreecommitdiff
path: root/net/mwan3/files
Commit message (Collapse)AuthorAge
* mwan3: Use shebang in /etc/mwan3.userBrian J. Murrell2021-09-03
| | | | | | | | | To allow the script to define what it should be run with. This let's the user use bash if it's available, or python, or perl, etc. Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca> Update PKG_VERSION to 2.10.11 Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: add troublshoot command from LuCIFlorian Eckert2021-07-08
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: cleanup help outputFlorian Eckert2021-07-08
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: use default routes from additional tablesDaniel Golle2021-07-05
| | | | | | | | | | Until now the additional tables listed in gobal 'rt_table_lookup' were not considered for interfaces. In order to be able to also use interface-defined routes from tables other than main, consider also tables listed in 'rt_table_lookup'. Update version to 2.10.10 as requested by maintainer. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* Merge pull request #15537 from aaronjg/mwan3/notrackFlorian Eckert2021-05-06
|\ | | | | mwan3: allow interfaces with no tracking IPs
| * mwan3: allow interfaces with no tracking IPsAaron Goodman2021-05-02
| | | | | | | | | | | | | | In the procd refactor, support for interfaces with no tracking IPs was inadvertentiy removed. This commit restores the previous behavior Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* | mwan3: update ubus status for not tracked interfacesFlorian Eckert2021-05-03
| | | | | | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* | mwna3: fix whitespaceFlorian Eckert2021-05-03
|/ | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: add connecting and disconnecting event to mwan3trackFlorian Eckert2021-03-16
| | | | | | | | | | | | | If the interface goes into failure state (is disconnecting) then with this change one hotplug.d event is generated. The same is true for the recovery state (is connecting), when the interface comes back from a failure state. In both cases, a hotplug.d event for the iface is triggered. Once with the $ACTION=disconnecting and once for the $ACTION=connecting. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: disable DNS lookups for ping checksFlorian Eckert2021-03-01
| | | | | | | | | | | | | | | | | By default, ping does a reverse DNS of the IP that you are pinging. When you have a network issue (such as when a link has just gone down and you haven't yet marked it down), this lookup can cause failures on tests for links that are still good. This option only works for iputils ping. For busybox the option is not evaluated, but it is accepted without throwing an error. Fixes: #14968 Fixes: #14924 Signed-off-by: Florian Eckert <fe@dev.tdt.de> Suggested-by: David Lang <david@lang.hm>
* mwan3: fix regression in ipv6 routing tablesAaron Goodman2021-01-02
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix string check for active_tblsFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix tabFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: remove unused mwan3_unlock function callFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix MWAN3_STARTUP callerFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix whitspaceFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix logger tag in mwan3 initFlorian Eckert2020-12-22
| | | | Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: add more error logging to routing functionsAaron Goodman2020-12-16
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: improve route flushing on mwan3 stopAaron Goodman2020-12-16
| | | | | | only attempt to flush routes for the relevant family Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix race condition in route loadingAaron Goodman2020-12-16
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix linkdown routes not being addedAaron Goodman2020-12-16
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: support latest iputils pingAaron Goodman2020-11-16
| | | | | | | | | | | iputils upstream changed build params with version s20200821 Latest OpenWRT iputils ping now appears to report the openwrt version tag, rather than iputils date tag This commit sends a test ping to localhost to evaluate the capabilities of iputils ping. Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: don't call rpcd on 'mwan3 interfaces'Aaron Goodman2020-11-16
| | | | | | | Allow `mwan3 interfaces` to get uptime via an internal function and thus remove the dependency on rpcd for `mwan3 interface` calls. Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: Update documentation information for mwan3.user fileJames White2020-11-16
| | | | Signed-off-by: James White <james@jmwhite.co.uk>
* mwan3: cleanup indenting in rpcd interface statusAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: don't include output from TRACK_OUTUPUT in status callAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: report an error code on status failureAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: remove unused device lookup in status checkAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: add IPKG_INSTROOT to scriptsAaron Goodman2020-11-10
| | | | | | IPKG_INSTROOT needed for including mwan3 when building images Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: restore +x flag to mwan3 executablesAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: add logging for ipset errorsAaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: remove unneeded ipset setup in hotplugAaron Goodman2020-11-10
| | | | | | connected ipset handled on mwan3rtmon, so not needed in hotplug Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix hotplug issues from 1f1d21Aaron Goodman2020-11-10
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: make it clearer who initiated the startFlorian Eckert2020-11-06
| | | | | | | | | It was somewhat opaque how the variable a is questioned. To show this better the variable is now a string and not a boolean. So you can see directly what should happen. With a boolean you always have to think about what it means when 0 or 1 is used. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: use procd for locking everywhereAaron Goodman2020-11-06
| | | | | | | | | | | | | | | | | | | Replace locks on /var/run/mwan3.lock with locks via procd. This fixes a deadlock issue where mwan3 stop would have a procd lock, but a hotplug script would have the /var/run/mwan3.lock Locking can be removed from mwan3rtmon since: 1) procd will have sent the KILL signal to the process during shutdown, so it will not add routes to already removed interfaces on mwan3 shutdown and 2) mwan3rtmon checks if an interface is active based on the mwan3_iface_in_<IFACE> entry in iptables, and the hotplug script always adds this before creating the route table and removes it before deleting the route table Fixes github issue #13704 (https://github.com/openwrt/packages/issues/13704)
* mwan3: reload unreachable/blackhole rules on hotplugAaron Goodman2020-11-06
| | | | | | | | | when the network procd service restarts, it flushes the ip rules. We need to add these rules back. Since hotplug events are triggered when the networks come back online, adding this call to the hotplug script is the most convenient place to refresh the rules. Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: use common makefile install wrappersFlorian Eckert2020-11-06
| | | | | | | With this change you can see at a glance which files will be installed on the system. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix wait conditions in mwan3trackFlorian Eckert2020-11-06
| | | | | | | | Will only run when no events are pending. Signed-off-by: Aaron Goodman <aaronjg@stanford.edu> [ Update description and split into own commit ] Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: move mwan3_init call in mwwan3track into mainFlorian Eckert2020-11-06
| | | | | | | Initialize TRACK_OUTPUT has been set after INTERFACE variable initialization. Move definition into main fixes this issue. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: remove not needes jshn.sh includeFlorian Eckert2020-11-06
| | | | | | Remove not needed jshn.sh include. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix rpcd with for routers with no IPv6 supportAaron Goodman2020-10-29
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: do not wait to process ifup/ifdown eventsAaron Goodman2020-10-27
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix mwan3 route handlingAaron Goodman2020-10-27
| | | | | | | | | - support trailing route space from iproute2 - add routes even when iface is down - fix source_routing argument check - add quotes in logging to better detect issues with trailing spaces Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: fix reload handlingFlorian Eckert2020-10-23
| | | | | | | | When the interface section was changed, the changed configuration options were not applied. This commit adds the service reload handling again. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mwan3: fix mwan3 'use'Aaron Goodman2020-10-22
| | | | Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: Simplify default configuration, mostly use defaultsJames White2020-10-16
| | | | Signed-off-by: James White <james@jmwhite.co.uk>
* mwan3: cleanup mwan3trackAaron Goodman2020-10-16
| | | | | | | | - reduce duplicate logging code - simplify nping track code - simplify ping result parsing Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: add back support for iputils pingAaron Goodman2020-10-16
| | | | | | | With the new wrapper code, we can override the broken binding behavior of iputils ping v20101006. Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: add "use" function to mwan3 utilsAaron Goodman2020-10-16
| | | | | | | | | | | | | | | Use "mwan3 use" to wrap a command with interface bindings so that you can avoid the mwan3 rules and test behavior on a specific interface. eg "mwan3 use wan ping -c1 1.1.1.1" Additional binding arguments to the command will have their system calls intercepted and ignored. eg "mwan3 use wan ping -c1 -I tun0 1.1.1.1" will use the device associated with "wan", rather than "tun0". Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
* mwan3: use helper library for mwan3trackAaron Goodman2020-10-16
| | | | | | | | | | | | | | | | | Rather than using a special mwan3 user to manage mwan3track's tracking packets, this commit implements a small helper library to bind to device and to set a fwmark so that the tracking packets can be routed out of the correct interface. This provides a consistent method for binding to a device rather than relying on various packages potentially buggy implementations. For example: #8139 and #12836 This helper issue also allows for more tracking methods to be added even if they do not have a command line option to bind to device, such as iperf3 (eg #13050). Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>