Commit graph

90 commits

Author SHA1 Message Date
Aaron Goodman
1ef1491e1a mwan3: remove duplicate Build/Compile from Makefile
Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-11-10 08:46:34 -05:00
Aaron Goodman
d79a6ee985 mwan3: version bump to 2.10.3
Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-11-10 08:46:20 -05:00
Florian Eckert
a756fdcfdf mwan3: update version to 2.10.2
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-11-06 10:48:21 +01:00
Florian Eckert
26fb7129ad mwan3: fix boundary
he line is too long. For the future it is better to split it into
several lines and make it more clearly arranged. In case of a future
change, not the whole line will be marked as a change.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-11-06 10:37:44 +01:00
Florian Eckert
6834f8e3a6 mwan3: use common makefile install wrappers
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>
2020-11-06 10:35:55 +01:00
Aaron Goodman
e5dc144968 mwan3: fix mwan3 'use'
Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-10-22 09:41:48 -04:00
Aaron Goodman
bbbc6127ab mwan3: use helper library for mwan3track
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>
2020-10-16 09:54:48 -04:00
Aaron Goodman
c07f5230be mwan3: improve startup performance; version 2.9.0
improve startup and runtime performance by

1) moving common startup procedures out of hotplug script when called
from mwan3 start
2) reducing calls to iptables to check status of rules
3) consolidating iptables updates and updating with iptables-restore
4) do not wait for kill if nothing was killed
5) running interface hotplug scripts in parallel
6) eliminate operations in hotplug script that check status on every
single interface unnecessarily
7) consolidate how mwan3track makes hotplug calls
8) do not restart mwan3track on connected events

This is a significant refactor, but should not result in any breaking
changes or require users to update their configurations.

version bump to 2.9.0

Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-08-17 22:02:36 -04:00
Paul Spooren
30ea917518 treewide: replace which with command -v
Fix shellcheck SC2230
> which is non-standard. Use builtin 'command -v' instead.

Once applied to everything concerning OpenWrt we can disable the busybox
feature `which` and save 3.8kB.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-08-09 13:58:14 -10:00
Florian Eckert
85e91377cf mwan3: update version to 2.8.12
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-07-28 06:53:24 +02:00
Florian Eckert
f601e6cfa4 mwan3: update version to 2.8.11
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-07-20 08:15:50 +02:00
Aaron Goodman
ca8bc3d115 mwan3: version bump
Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-07-19 23:24:13 -04:00
Florian Eckert
2594258c4b mwan3: update version to 2.8.9
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-07-15 10:23:47 +02:00
Michiel Blokzijl
acfbd98ce0 mwan3: Fix mwan3 start not doing anything
Due to a missing config load function call, mwan3 start runs ifup for an empty
list of interfaces, thus not calling ifup at all.

This commit introduces the missing config_load call.

Signed-off-by: Michiel Blokzijl <code@m01.eu>
2020-07-03 20:03:42 +01:00
Florian Eckert
8030814267 mwan3: update version to 2.8.7
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-06-17 13:04:38 +02:00
Aaron Goodman
b7d1f81f10 mwan3: version bump to 2.8.6
Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-05-22 20:01:49 -04:00
Brian J. Murrell
b017fe34dd mwan3: Update Makefile
Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
2020-04-30 14:55:20 +02:00
Florian Eckert
3c34b151f6 mwan3: fix whitespace issue
fixes #11965

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-04-27 17:58:12 +02:00
Brian J. Murrell
6721587e8b mwan3: Ping IPv6 hosts using address not interface
Pinging IPv6 hosts using an interface as a source specifier seems
troublesome.  See https://bugs.openwrt.org/index.php?do=details&task_id=2897
for more detail.

Use the desired source interface's IP address instead.

Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
2020-03-13 15:24:57 +01:00
Florian Eckert
6d638c3e23 mwan3: change license to SPDX compatible identifier
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-11-18 09:26:51 +01:00
Florian Eckert
14dd084662 mwan3: update version to 2.8.2
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-11-14 08:01:52 +01:00
yurtesen
94e0c78826 mwan3: Fix json_load fails with some data
Sometimes the return value of `ubus -S call network.interface.wan status`
cause `json_load` to return `Failed to parse message data` error.

To avoid this, the JSON data always should be quoted with double quotes.

Signed-off-by: Evren Yurtesen <eyurtese@abo.fi>
Removed quoatation marks from commit heading
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-11-14 07:43:18 +01:00
Daniel A. Maierhofer
1e97156adc mwan3: Add missing IPs to wanb
Maintainer: Florian Eckert @feckert
Compile tested: not needed
Run tested: x86_64

Description:
Only two of the four IPs defined for wan are found in wanb, adding it so it is the same.

Signed-off-by: Daniel A. Maierhofer <git@damadmai.at>
2019-08-04 18:47:25 +02:00
Florian Eckert
e100de8bd8 mwan3: update version to 2.8.0
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-07-04 12:06:27 +02:00
Florian Eckert
171cb17694 mwan3: change flush_conntrack handling to use uci list element
With this change it is now possible to combine interface action events.
If an interface action is generated by netifd or mwan3 for example ifup,
ifdown, connectd or disconnected and this action is configured in the inteface
uci section, then the conntrack table is flushed by mwan3.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-06-03 14:16:05 +02:00
Chen Minqiang
a004d07632 mwan3: fix logical/typo bug in mwan3rtmon
This bug was introduced since dd206b7d0b
mwan3_remon_ipv4 and mwan3_remon_ipv6 is command to run not a variable
I add some comments on them hopefully people will notice it

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2019-03-22 18:11:07 +08:00
Florian Eckert
27e7e88966 mwan3: fix disconnected event generation in mwan3track
Before this change two disconnected events were generated. This is wrong!
The disconnected event is impliciet generated by the hotplug script on ifdown
event. The mwan3track script is notified by a USR1 signal which
generates the disconnectd event. The additional "disconnectd" event on
ifdown is not required.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-02-27 13:50:51 +01:00
Florian Eckert
7b4c075cc2 mwan3: update version to 2.7.10
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-01-22 14:29:34 +01:00
Florian Eckert
b2c4f2b135 mwan3: update version to 2.7.9
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-01-14 08:28:58 +01:00
Florian Eckert
cb37a0e15b mwan3: update version to 2.7.8
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-12-25 18:27:49 +01:00
Michael Stoll
7acb0c3e38 mwan3: add nping to tracking method
Signed-off-by: Michael Stoll <michael.stoll@meadow-robotics.com>
2018-12-21 11:21:31 +01:00
Florian Eckert
5d0406915e mwan3: update version to 2.7.6
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-11-08 12:29:15 +01:00
Florian Eckert
8b28ab282b net/mwan3: update version to 2.7.5
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-23 15:18:45 +02:00
Florian Eckert
eeef66cec2 net/mwan3: update version to 2.7.4
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-12 08:15:38 +02:00
Chen Minqiang
dbebe3d6f9 net/mwan3: update version to 2.7.3
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-10-10 15:54:42 +08:00
Florian Eckert
692ed62382 net/mwan3: update version to 2.7.2
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-09-24 10:21:43 +02:00
Chen Minqiang
6a5836db32 mwan3: optimize the process of copying routing tables
- The original copy process is to delete all routing tables first,
   then add new routing table. This process is too slow and very dirty.
 - We use grep to identify the changes and apply them.
 - ignore ipv6 unreachable routes
 - update version number

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-09-21 15:35:39 +08:00
Chen Minqiang
46ed09408e mwan3: refine link selection
- globals src_ip to none
 - ip route back to source
 - add mwan3rtmon
 - update version to 2.7

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-08-09 05:06:17 +08:00
Florian Eckert
b6249f1781 net/mwan3: fix NDP on ipv6 for ra services
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-06-06 10:41:38 +02:00
Florian Eckert
acf7278fb8 net/mwan3: update version to 2.6.17
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-05-30 12:57:49 +02:00
Florian Eckert
18022993d9 net/mwan3: update version to 2.6.16
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-05-16 11:24:37 +02:00
Nishant Sharma
1a33492ff8 mwan3: Packet Loss & Latency Check
1. Test link quality based on packet loss & latency w.r.t. pre-defined high and low watermark values.
2. Extended ubus support to provide packet loss & latency information per wan per track_ip

Signed-off-by: Nishant Sharma <codemarauder@gmail.com>
2018-05-11 08:21:28 +02:00
Florian Eckert
6b0a65b183 net/mwan3: update version to 2.6.14
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-04-12 11:22:26 +02:00
Florian Eckert
1c520db1f7 net/mwan3: update version to 2.6.13
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-04-08 16:20:24 +08:00
Luiz Angelo Daros de Luca
e6e65f3e54 mwan3: ipv6-compatible default conf
Considering that ipv6 NPT/NAT/NETMAP is done manually by user,
mwan3 can balance ipv6 interfaces as it does with ipv4.

Interface wan2 was renamed to wanb as wan2, wan3, ... will eventually
colide with OpenWrt with default wan6 interface when more than 6
interfaces are in use.

New interfaces, members for wan6 and wanb6 where created, both disabled
by default. Policies where adapted as well.

The option "family" is set respectively in each interface. When missing,
mwan3 assumes ipv4, that will fail when interface is IPv6 only.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-04-03 13:35:28 -03:00
Florian Eckert
7c641a3d03 net/mwan3: update version to 2.6.12
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-29 14:58:02 +02:00
Hannu Nyman
759ee14f41 mwan3: adjust dependency from ip-full to ip
Adjust the dependency from ip-full back to ip.

Returning back to "ip" is now possible as busybox does not provide
"ip" any more, making "ip" again reference to ip-tiny or ip-full.

Reference to discussion in #5747

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-03-23 16:52:27 +02:00
Florian Eckert
3c2e05d440 net/mwan3: update version to 2.6.11
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-16 14:45:29 +01:00
Florian Eckert
e12f3c8c14 net/mwan3: add jshn and ip-full to package dependency
* The mwan3 scripts sources ". /usr/share/libubox/jshn.sh"
* Mwan3 only works if ip-full is installed
  Error -> "ip: invalid argument '0xfd00/0xff00' to 'fwmark'"

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-12 10:14:36 +01:00
Florian Eckert
40f66cf432 net/mwan3: update to version 2.6.10
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-02-05 10:29:30 +01:00