133 Commits

Author SHA1 Message Date
Michael Stapelberg
d9f5d95812 dhcp4d: export number of non-expired DHCP leases 2018-10-23 08:49:29 +02:00
Michael Stapelberg
4288adec69 dns: don’t let clients override the hostname
fixes #11
2018-10-22 21:43:41 +02:00
Michael Stapelberg
0bbc1d923d refactor replayer code into pcapreplayer package 2018-10-22 21:04:35 +02:00
Michael Stapelberg
e01a38ff78 commit debug statements 2018-10-22 18:58:40 +02:00
Michael Stapelberg
817fdc81f8 README: recommend to install all rtr7 tools 2018-10-22 18:58:40 +02:00
Michael Stapelberg
2e8e0daa0a implement TCP MSS clamping (for non-ethernet uplinks)
We didn’t have a need to clamp the TCP Maximum Segment Size (MSS) up until now,
because fiber7 uses an MTU of 1500.

Because Path MTU discovery is often broken on the internet, it’s best practice
to limit the Maximum Segment Size (MSS) of each TCP connection, achieving the
same effect (but only for TCP connections).

This change is beneficial when running router7 behind a non-ethernet uplink,
such as a Fritz!Box cable modem.

This has no adverse effect on fiber7: after clamping, the MSS is still 1440, as
without clamping.
2018-10-22 18:54:25 +02:00
Michael Stapelberg
c037bf9c5f dhcp4d: fix panic when receiving unsupported requests 2018-10-22 18:39:25 +02:00
insomniac
cfbf52db6e dhcp6: update after changes in insomniacslk/dhcp (#10) 2018-10-16 08:03:45 +02:00
Pablo Mazzini
81894ba0b3 dhcp6: simplify PD obtention (#9) 2018-10-11 14:29:22 +02:00
Michael Stapelberg
672134080f README: reference prometheus config + dashboard 2018-10-10 16:52:42 +02:00
Michael Stapelberg
b725100d9c add prometheus configuration examples 2018-10-10 16:49:45 +02:00
Michael Stapelberg
f606e70250 dhcp4d: respect broadcast bit
Mac’s Internet Recovery DHCP client requires broadcast responses and will ignore
unicast responses outright.
2018-10-07 17:36:00 +02:00
Michael Stapelberg
f7638dfeaa netconfig_test: test updating port forwardings after installation
This uncovered an nftables issue:
695079ebff
2018-10-03 18:24:54 +02:00
Michael Stapelberg
ea4ffa7bec OpenEthernet → NewEthernetHandle, remove kludge 2018-09-07 00:50:41 +02:00
Philipp Hug
aa404c3c54 Request nameserver, router and netmask as it might not be automatically returned by dhcp server. (#7) 2018-09-05 10:06:31 -06:00
Michael Stapelberg
447f1779e2 dhcp6: update for breaking upstream changes
see https://github.com/insomniacslk/dhcp/pull/81
2018-09-05 08:39:35 +02:00
Michael Stapelberg
4c4032d469 README: add radvd as consumer of dhcp6 lease file 2018-08-20 22:59:22 +02:00
Michael Stapelberg
14f1636bc0 travis: upgrade to xenial (Ubuntu 16.04)
Perhaps this will use a newer kernel with support for nftables stateful objects?
2018-08-10 09:37:25 +02:00
Michael Stapelberg
b03596f1c5 nftables: use stateful object counters
This way, we can atomically get and reset them.

fixes https://github.com/rtr7/router7/issues/3
2018-08-08 23:15:21 +02:00
Michael Stapelberg
ad779c3665 dhcp6: update for breaking upstream changes 2018-08-05 11:45:03 +02:00
Michael Stapelberg
5a5a748b9f dnsd: don’t serve expired leases
fixes #6
2018-08-05 11:30:58 +02:00
Michael Stapelberg
daa14845ab netconfig: plug fd leak by closing the netlink handle
fixes #4
2018-07-22 23:07:23 +02:00
Michael Stapelberg
c5e5a0eee0 radvd: gather details about the interface on SIGUSR1
The interface might have a new MAC address (if radvd was started before netconfigd).
2018-07-16 22:46:49 +02:00
Michael Stapelberg
49a59779f5 dhcp4d: don’t offer expired leases 2018-07-15 18:33:11 +02:00
Michael Stapelberg
a9c7585eac README: add travis badge 2018-07-14 20:57:27 +02:00
Michael Stapelberg
4a85c51b9f add travis config 2018-07-14 20:53:24 +02:00
Michael Stapelberg
3282dc5675 netconfig: GetRule filtering is not supported by Linux 4.4.0 (trusty) 2018-07-14 20:53:15 +02:00
Michael Stapelberg
ea10307b5d dhcpv4: replace hard-coded midna → os.Hostname() 2018-07-14 17:35:25 +02:00
Michael Stapelberg
bfa16c559f dnsmasq: gracefully handle temporarily not existing ready files 2018-07-14 16:42:50 +02:00
Michael Stapelberg
3afe757a34 notify: gracefully handle vanishing processes 2018-07-14 16:36:51 +02:00
Michael Stapelberg
9e0f83a7cf integration tests: send ip netns add errors to stderr, too 2018-07-14 15:43:47 +02:00
Michael Stapelberg
9131e7a99c dhcp6: add missing err parameter 2018-07-14 15:17:12 +02:00
Michael Stapelberg
8da684cc8f README: add godoc badge 2018-07-14 15:14:42 +02:00
Michael Stapelberg
b08f872a65 add go report card 2018-07-14 14:55:30 +02:00
Michael Stapelberg
25ceda02ec README: get router7 repo explicitly 2018-07-14 14:34:08 +02:00
Michael Stapelberg
6b73254a72 write README.md 2018-07-14 14:03:02 +02:00
Michael Stapelberg
9153805e69 randomd moved to github.com/gokrazy/gokrazy/cmd/randomd 2018-07-14 12:51:28 +02:00
Michael Stapelberg
b347ed74c5 update import paths 2018-07-09 08:54:04 +02:00
Michael Stapelberg
984e8802f7 dhcp6: log XIDs when they differ
Encountering this message can be perfectly normal, e.g. in a high-availability
setup, where two DHCP servers answer to your requests.
2018-07-03 17:37:25 +02:00
Michael Stapelberg
b05fd74006 dhcp4: increase timeout to 10s 2018-07-03 17:37:17 +02:00
Michael Stapelberg
88bf7d90eb dhcp6: delay at least 10s before attempts
Otherwise we might exceed fiber7’s firewall rules and get blacklisted.
2018-07-03 17:36:46 +02:00
Michael Stapelberg
86f5433cbb dhcp6: correctly clear previous error 2018-06-29 12:02:16 +02:00
Michael Stapelberg
8615c40fac netconfig_test: reset DefaultCounter to catch preservation issues 2018-06-28 20:08:23 +02:00
Michael Stapelberg
c1de25f18b add skeletal README.md 2018-06-28 20:08:23 +02:00
Michael Stapelberg
b4912a5a93 add CONTRIBUTING.md 2018-06-28 20:08:23 +02:00
Michael Stapelberg
c0cac8d746 add LICENSE 2018-06-28 20:08:23 +02:00
Michael Stapelberg
ff7aa8f2cb add copyright notices 2018-06-28 20:08:23 +02:00
Michael Stapelberg
ab75e4a1b5 check for updateListeners errors 2018-06-28 20:08:23 +02:00
Michael Stapelberg
2b3cf0bf61 captured: use multilisten 2018-06-28 20:08:23 +02:00
Michael Stapelberg
c24eefbb51 diagd: expose machine-readable healthiness 2018-06-26 21:52:29 +02:00