Michael Stapelberg
7d278289f0
captured: directly call NextPacket() to prevent hanging reads
...
Using Packets() spawns off a separate goroutine which calls NextPacket in a loop
until io.EOF is returned. This goroutine will stick around after Close()
returned, resulting in only the first wireshark connection working.
2018-10-23 09:56:07 +02:00
Michael Stapelberg
d9f5d95812
dhcp4d: export number of non-expired DHCP leases
2018-10-23 08:49:29 +02:00
Michael Stapelberg
ea4ffa7bec
OpenEthernet → NewEthernetHandle, remove kludge
2018-09-07 00:50:41 +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
9131e7a99c
dhcp6: add missing err parameter
2018-07-14 15:17:12 +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
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
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
Michael Stapelberg
72661b13ec
dnsd: listen on 8053 (metrics) on ipv6-net::1
2018-06-26 21:15:14 +02:00
Michael Stapelberg
4c7741a337
add backupd
2018-06-26 18:01:50 +02:00
Michael Stapelberg
86c9436e98
diagd: only listen on private addresses
2018-06-26 09:47:55 +02:00
Michael Stapelberg
89e1276ad4
dns: simplify resolving code
2018-06-26 09:33:23 +02:00
Michael Stapelberg
10df129c1f
dns: listen on all private IP addresses
2018-06-26 08:53:20 +02:00
Michael Stapelberg
60de127991
Describe all packages and binaries.
2018-06-25 20:12:51 +02:00
Michael Stapelberg
ae15230da3
dhcp4d: log in leases callback
2018-06-24 11:56:39 +02:00
Michael Stapelberg
57564e15d0
captured: increase ring buffer
...
5000 packets translated to just about 2 hours, which is not long enough.
2018-06-24 11:52:07 +02:00
Michael Stapelberg
bf2c12a69d
netconfigd: export ipv4/ipv6 packet/bytes counters on :8066
2018-06-23 19:56:34 +02:00
Michael Stapelberg
6705108481
add randomd: carries entropy across system restarts
...
As practiced by Debian (and others) and recommended in the urandom(4) manpage:
https://manpages.debian.org/stretch/manpages/urandom.4.en.html#Configuration
2018-06-23 17:46:55 +02:00
Michael Stapelberg
3ba84074c7
dhcp4d: send replies as unicast using raw sockets
...
Preferring unicast over multicast (which hogs a lot of airtime on WiFi networks)
is a best practice.
Some device/access point vendor combinations even seem to entirely eat (some?)
broadcast traffic (sometimes), e.g. my Apple iPhone SE/Ubiquiti UAP-AC-HD, so
that using unicast is required for reliable WiFi.
2018-06-23 17:46:53 +02:00
Michael Stapelberg
37bf17e1b7
make binaries cope with Squashfs root
2018-06-22 17:59:23 +02:00
Michael Stapelberg
24e2d5de00
dnsd: serve prometheus metrics on port 8053
2018-06-18 08:04:56 +02:00
Michael Stapelberg
0e6add220c
notify dyndns from netconfigd, i.e. _after_ applying addresses
2018-06-17 20:44:25 +02:00
Michael Stapelberg
7a46d077ee
dhcp4/dhcp6: notify dyndns if present
2018-06-17 19:30:30 +02:00
Michael Stapelberg
bb6b901b90
captured: implement a packet ring buffer
...
So that when you connect with Wireshark, you’ll see the most recent
packets (takes up to 7 MB of RAM).
2018-06-17 17:47:26 +02:00
Michael Stapelberg
2c302d976d
captured: plug goroutine leak from closed SSH connections
2018-06-17 16:49:37 +02:00
Michael Stapelberg
bb563e0798
add captured: sends packets to Wireshark SSH remote capture
...
Just point your wireshark to 10.0.0.1:5022.
2018-06-17 15:19:49 +02:00
Michael Stapelberg
8b85084429
dhcp4: persist DHCPACK to renew existing lease after reboot
2018-06-15 17:30:57 +02:00
Michael Stapelberg
4f4f286a43
radvd: better error message
2018-06-15 09:59:01 +02:00
Michael Stapelberg
48fcf2d0ea
dhcp6: notify radvd when obtaining a lease
...
Otherwise, no networks are announced
2018-06-15 09:28:41 +02:00
Michael Stapelberg
4c69109db5
dhcp4d: implement permanent leases (no expiration)
2018-06-12 08:21:07 +02:00
Michael Stapelberg
d21822f531
dhcp4d: implement loading leases files from persistent storage
2018-06-09 15:18:01 +02:00
Michael Stapelberg
ea476bbb04
remove accidentally committed router7.test binaries
2018-06-08 16:51:50 +02:00
Michael Stapelberg
2ef8bf6ea0
dnsd/dhcp4d: listen on configured address (not hard-coded)
2018-06-04 08:22:45 +02:00
Michael Stapelberg
763aa18a74
netconfig: write /etc/resolv.conf
2018-06-04 07:59:25 +02:00
Michael Stapelberg
48ddf81147
netconfig: apply IPv6 address to lan0, not uplink0
2018-06-03 20:35:41 +02:00
Michael Stapelberg
518b9f843c
add the diagnostics daemon
2018-06-03 20:05:13 +02:00
Michael Stapelberg
3cadbdd7aa
dhcp6: hook up SIGUSR2 to DHCPRELEASE
2018-06-02 21:00:56 +02:00
Michael Stapelberg
f971088266
log SIGUSR2
2018-06-02 10:16:16 +02:00
Michael Stapelberg
cd019e1d7d
avoid flooding the network upon errors
2018-06-02 10:15:59 +02:00
Michael Stapelberg
7f93ea6661
hook up SIGUSR2 to DHCPRELEASE
2018-06-01 22:18:04 +02:00
Michael Stapelberg
9facb2c230
add teelogger
2018-06-01 22:17:19 +02:00
Michael Stapelberg
d3884d9074
add radvd
2018-06-01 09:53:44 +02:00
Michael Stapelberg
fa626839b1
Working radvd
2018-05-28 09:53:54 +02:00
Michael Stapelberg
6b9ce5728a
Initial commit
2018-05-27 17:30:42 +02:00