Michael Stapelberg
bf2c12a69d
netconfigd: export ipv4/ipv6 packet/bytes counters on :8066
2018-06-23 19:56:34 +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
301d4c0d00
dhcp4d: always set broadcast flag for DHCPOFFERs
...
We always broadcast them, so we should signal that.
2018-06-22 18:35:23 +02:00
Michael Stapelberg
37bf17e1b7
make binaries cope with Squashfs root
2018-06-22 17:59:23 +02:00
Michael Stapelberg
5e11eae951
fix dhcp4d_test for larger pool
2018-06-19 09:46:29 +02:00
Michael Stapelberg
957e4de03a
no-op: only one branch results in DHCPNAK
2018-06-18 19:29:58 +02:00
Michael Stapelberg
34d494b85c
dhcp4d: increase lease range to cover existing leases
2018-06-18 19:29:42 +02:00
Michael Stapelberg
4b6b5196b0
dns: correctly resolve PTR for hostname
2018-06-18 09:44:46 +02:00
Michael Stapelberg
c743091929
dns: track number of questions and which upstream was used
2018-06-18 09:35:14 +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
ffc18ec527
diag: display ICMP echo source address (for ff02::2%uplink0)
2018-06-17 20:24:56 +02:00
Michael Stapelberg
8b85084429
dhcp4: persist DHCPACK to renew existing lease after reboot
2018-06-15 17:30:57 +02:00
Michael Stapelberg
d2ecb190ac
dhcp4: skip DHCPDISCOVER when renewing
2018-06-15 09:58:51 +02:00
Michael Stapelberg
32dd03c7f2
dhcp4d: copy reqIP, its backing storage gets reused
2018-06-15 09:56:07 +02:00
Michael Stapelberg
a1c4d60666
netconfig: implement support for port ranges
2018-06-14 22:25:39 +02:00
Michael Stapelberg
390c2af7db
netconfig: implement UDP port forwardings
2018-06-14 21:05:43 +02:00
Michael Stapelberg
93eaab99cb
dns: resolve own hostname, lock for concurrency
2018-06-14 20:42:53 +02:00
Michael Stapelberg
02c7fa7e0d
dns: serve reverse lookup queries for all RFC 1918 reserved networks
2018-06-14 20:24:44 +02:00
Michael Stapelberg
fdd2201ef5
netconfig: prevent duplicate error messages
2018-06-14 18:28:40 +02:00
Michael Stapelberg
03b2345eb2
netconfig: flush nftables ruleset, replace DHCPv6 address
2018-06-14 08:27:08 +02:00
Michael Stapelberg
19aa03bf58
dhcp4: specify previous IP address when renewing
2018-06-13 19:32:20 +02:00
Michael Stapelberg
43e1b2eaae
radvd: also set hop limit to 255 for multicast packets
2018-06-12 09:30:01 +02:00
Michael Stapelberg
589e2ae43d
netconfig: replace routes, not add
2018-06-12 09:29:53 +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
f9c3c23b16
dhcp4d: implement lease expiration
2018-06-09 15:04:54 +02:00
Michael Stapelberg
ea476bbb04
remove accidentally committed router7.test binaries
2018-06-08 16:51:50 +02:00
Michael Stapelberg
c37ddf4f6e
integrationradvd: unflake test
2018-06-08 16:51:33 +02:00
Michael Stapelberg
4baac19e13
radvd: skip advertisments when no prefixes are configured
2018-06-08 16:50:27 +02:00
Michael Stapelberg
3561ec3708
dhcp4d: offer requested address if available
2018-06-07 08:39:47 +02:00
Michael Stapelberg
0152ef3601
netconfig: implement port forwardings
2018-06-05 08:51:51 +02:00
Michael Stapelberg
320ca04a2f
netconfig: use oifname instead of oif
2018-06-05 08:48:30 +02:00
Michael Stapelberg
21ca224281
netconfig: switch from iptables to nft
2018-06-04 10:01:09 +02:00
Michael Stapelberg
1b004597c1
netconfig: implement spoof_hardware_addr for easier testing
2018-06-04 08:30:57 +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
7164b27041
dhcp6: specify the prefix delegation option
2018-06-03 20:03:07 +02:00
Michael Stapelberg
3cadbdd7aa
dhcp6: hook up SIGUSR2 to DHCPRELEASE
2018-06-02 21:00:56 +02:00
Michael Stapelberg
1e62de50bd
factor dnsmasq code into testing helper, verify dhcp6 client id
2018-06-02 18:05:09 +02:00
Michael Stapelberg
7d2205c295
dhcp6: implement support for client identifier
2018-06-02 18:01:44 +02:00
Michael Stapelberg
26a22667b2
netconfig: missing lease.json is no error
2018-06-02 17:38:17 +02:00
Michael Stapelberg
d343e06d81
netconfig: apply as much of the config as possible
2018-06-02 17:38:08 +02:00
Michael Stapelberg
aec417cfbc
dhcp6: work around ipv6ZoneCache issue (fixes tests)
2018-06-02 17:33:01 +02:00
Michael Stapelberg
c28d816805
update for dhcp4client changes
2018-06-02 10:15:50 +02:00
Michael Stapelberg
2079aea3a1
return better error message for -EAGAIN
2018-06-01 22:18:30 +02:00
Michael Stapelberg
c05bd22afe
make temporary errors temporary, not permanent
2018-06-01 22:18:15 +02:00
Michael Stapelberg
7f93ea6661
hook up SIGUSR2 to DHCPRELEASE
2018-06-01 22:18:04 +02:00