Commit Graph

320 Commits

Author SHA1 Message Date
7bc59a8b27 Makefile: update rtr7-recover invocation
based on what I last used successfully
2023-01-13 00:04:24 +01:00
7cda93aeb3 Makefile: qemu: document chown 2023-01-11 17:56:00 +01:00
c84c18cebf Makefile: qemu: mkdir -p 2023-01-11 17:55:50 +01:00
d8992e4412 Makefile: qemu: -bios flag 2023-01-11 17:55:13 +01:00
d30f613622 Makefile: update: remove hard-coded directory 2023-01-11 17:54:53 +01:00
86f32dc7d9 115200 is enough, n8 is implied 2023-01-11 17:54:35 +01:00
32f37d97d7 Makefile: update package list in git
I neglected to commit changes to the packages list for quite a while.
2023-01-11 17:53:25 +01:00
b39b137e20 re-generate website to pick up fixes 2022-10-17 17:52:15 +02:00
a8a12cafc9 diagd: remove ping4/ping6 to external targets in favor of tcp4/tcp6
External ICMP does not necessarily work.
It typically does, but not always.
Last week, for a day or two, ICMP traffic was dropped by Google.

So now we use ICMP only for network equipment targets (default gateway),
and instead use TCP for external connectivity checks.

fixes #77
2022-09-28 22:39:20 +02:00
c97c321740 go mod tidy 2022-09-04 18:44:08 +02:00
196e3f9fd7 netconfig: make forward error correction (FEC) configurable 2022-08-30 21:58:55 +02:00
caea507b86 pull in latest github.com/mdlayher/ethtool 2022-08-30 21:56:34 +02:00
db15477448 disable icmp ratelimit
Otherwise, traceroute mysteriously times out sometimes.

https://twitter.com/zekjur/status/924248132837347330
2022-06-21 18:30:53 +02:00
ce66287189 netconfig: make the MTU configurable
Just in case we need to set it on an uplink0 interface at some point, for example.
2022-06-15 23:19:43 +02:00
fb08bb280c go.mod: bump wireguard, go mod tidy
related to #76
2022-06-12 23:07:56 +02:00
e17be63d46 make test: disable -buildvcs to make sudo work 2022-06-12 23:07:36 +02:00
ff0020b47b go.mod: bump minimum language version to go 1.17 2022-06-12 23:04:49 +02:00
b1ba13419d Makefile: fix test target by setting -mod=mod 2022-06-12 23:02:45 +02:00
b1e9f5824b Makefile: fix recover target by using two separate go install calls 2022-06-12 23:02:28 +02:00
225c8e6abd radvd: ignore requests from other interfaces than the configured one
Announcing networks into uplinks is never a good idea 🙈
2022-06-08 17:42:55 +02:00
f4dd972e54 netconfig: WireGuard: set up host routes instead of DHCP default
related to https://github.com/rtr7/router7/issues/52
2022-06-07 23:22:08 +02:00
7d936f4844 allow configuring extra routes
Useful for routing IPv6 subnets through a WireGuard tunnel.

related to https://github.com/rtr7/router7/issues/52
2022-06-06 14:25:25 +02:00
f52deeed03 allow configuring extra addresses on interfaces
Useful when you need IPv6 and IPv4 addresses on a WireGuard tunnel.
2022-06-06 14:25:25 +02:00
40f8eb5b1b fix wireguard availability test 2022-06-06 14:25:25 +02:00
2ee2a943a7 remove line about hairpinning not being supported (#72) 2022-04-22 17:04:28 +02:00
e8a78c2eaa GitHub Actions: switch to Go 1.18 2022-03-25 09:12:16 +01:00
d747f1db5f go mod tidy 2022-03-25 09:11:08 +01:00
ef7089dc61 radvd: switch to netip package for mdlayher/ndp 2022-03-25 09:09:26 +01:00
2014da4ca3 dhcp4d: display active devices based on LastACK
This has the advantage that it also works for static DHCP leases,
provided the device obtains a DHCP lease at all (and isn’t configured with a
static IP address, like the shelly motion sensors for example).
2022-03-12 17:38:16 +01:00
593cd8c12d export input/output nftables counters as well as forwarded
Thus far, we have only had forwarded bytes metrics.

Notably, forwarded bytes does not include bytes that were sent by the router
itself, e.g. by the webserver or rsync server running on the machine.

fixes https://github.com/rtr7/router7/issues/71
2022-03-08 22:47:18 +01:00
8dc93c66c4 netconfig: enable NAT hairpinning for port forwardings
fixes https://github.com/rtr7/router7/issues/53
2022-03-08 09:32:09 +01:00
6d41b077a9 internal/dhcp*: switch to github.com/mdlayher/packet (#70)
* internal/dhcp*: switch to github.com/mdlayher/packet
* internal/dhcp4d: update test constructor name to avoid packet conflict

Signed-off-by: Matt Layher <mdlayher@gmail.com>
2022-02-21 23:39:06 +01:00
406c6015c4 go mod tidy (#69)
To explicitly remove the u-root/u-root dependency.

Signed-off-by: Chris Koch <chrisko@google.com>
2021-12-22 09:00:47 +01:00
d57b44ab51 README: swap travis badge with GitHub Actions badge 2021-09-19 11:47:51 +02:00
3ad9d03460 gofmt for go:build 2021-09-19 11:46:57 +02:00
e07002721d teelogger: make writes to /dev/console non-blocking
fixes https://github.com/rtr7/router7/issues/68
2021-09-19 11:45:19 +02:00
a5a012dd96 dhcp4: increase number of unhealthy cycles 2021-09-19 11:45:04 +02:00
575a14c394 dyndns: add zone to record name
Otherwise, already existing records are not recognized correctly.
2021-09-01 09:37:12 +02:00
20dd872fbe backup: skip “nobackup” and “srv” directories 2021-09-01 09:27:49 +02:00
5869922efb fix CONTRIBUTING.md link on the website (#66) 2021-07-11 09:52:11 +02:00
b88ddd41c3 netconfig: don’t try to add bridge to itself 2021-06-12 22:24:38 +02:00
bfb94377f4 netconfig: move bridge creation into its own function
also don’t short-circuit the rest of the configuration if bridge config fails
2021-06-12 18:25:37 +02:00
cffd872346 netconfig: implement bridge configuration
fixes https://github.com/rtr7/router7/issues/65
2021-06-06 15:43:55 +02:00
d0f963def3 fix integration test: explicitly install iproute2 in container 2021-06-03 21:18:51 +02:00
e34a5ae0f3 update go.mod and go.sum 2021-06-03 21:12:13 +02:00
cbadfe5128 dhcp4: ensure MQTT topic names are printable (for mosquitto_sub) 2021-06-03 21:06:03 +02:00
3834acfa2b dhcp4d: ensure MQTT topic names are valid UTF-8
https://twitter.com/zekjur/status/1347295676909158400
2021-01-07 22:52:58 +01:00
c30bf38438 bump dependencies 2020-12-31 22:13:25 +01:00
5f25043b94 dhcp4d: only publish to MQTT when channel is ready to prevent deadlocks 2020-12-31 16:42:12 +01:00
c3c531931c retry MQTT connections, even if initial connection attempt fails 2020-12-31 16:42:01 +01:00