Timmy Welch
fc2e21cfd6
Fix nft run
2024-12-24 11:09:11 -08:00
Timmy Welch
971b8f2521
Use nextdns
2024-08-17 11:21:07 -07:00
Timmy Welch
ab5bce1356
updates
2024-01-20 11:41:04 -08:00
lordwelch
61b59517fc
Act as the authority even though were not
...
letsencrypt needs to talk to the authoritative name server, but
I have all dns traffic redirected to here so we get the SOA using the
same request (probably only works by accident) and then make a request
to the address listed in the SOA
Fix typos in IPv6 addresses
2021-05-26 23:04:33 -07:00
lordwelch
e34b880a55
Final fix
...
Add the domain as it is needed (multiple domains on a home net is niche)
Only replace the record if a local one was found
Use proper slice updating
2021-05-23 19:34:59 -07:00
lordwelch
ac0ef71d9f
Fix null check
2021-05-23 18:54:09 -07:00
lordwelch
9533787aac
Fix err check
...
go mod tidy
2021-05-23 18:31:30 -07:00
lordwelch
29eaa11052
Update parameters for clarity
...
Hijack the final A record in a CNAME chain if it is in our records
2021-05-23 17:49:15 -07:00
lordwelch
ef50f7c2e4
Merge remote-tracking branch 'origin/master'
2021-03-15 22:44:39 -07:00
Robert Obryk
8de4eb7ba1
internal/dns: prevent upstreams from being lost during reordering ( #63 )
...
If upstreams were reordered between start of an upstream request and its
conclusion, the move-to-front operation would likely incorrectly reorder
upstreams: duplicate one and remove another. Instead, we abandon the
move-to-front operation if that was about to happen.
2020-11-23 09:34:04 +01:00
lordwelch
2dc11ce1e3
Add additional test cases and fix some failing tests
2020-08-10 18:12:34 -07:00
lordwelch
e421cff225
Fix the implicit lan domain
...
Includes test for setting a custom domain
2020-08-10 18:12:34 -07:00
lordwelch
fbd2facfa1
Set the recursion available flag
2020-08-10 18:12:34 -07:00
lordwelch
fbbfa568a8
Add JSON tags
2020-08-10 18:12:34 -07:00
lordwelch
169bc5c3e7
DNS changes
...
go mod tidy
2020-08-10 18:12:34 -07:00
lordwelch
3c451f06ca
Add the ability to run router7 on a normal Linux distribution
2020-08-10 18:12:34 -07:00
Matt Layher
9f6257b046
internal/dns: fix staticcheck issues
...
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-05-09 17:02:33 -04:00
Michael Stapelberg
70edcab16b
dns: return NXDOMAIN for DHCP leases once they expire
2019-09-07 19:27:12 +02:00
Michael Stapelberg
4cde5ec6fc
dns: fix resolution of uppercase host names, add test
2019-08-07 18:18:51 +02:00
Michael Stapelberg
8fb81f90b1
dns: make more recent DHCP leases overwrite older ones
...
fixes #20
2019-07-20 12:23:48 +02:00
Michael Stapelberg
36995097b9
make local name resolution case-insensitive
...
fixes #34
2019-07-20 12:07:30 +02:00
Michael Stapelberg
66942bd4f7
dns: steer traffic toward the most response upstream
...
There is not much of a difference between IPv4 and IPv6 on my fiber7 link, but
in other networks, there might well be.
For my connection, this commit results in hitting different upstreams all the
time because the list isn’t stable. But, this is the opposite of a problem: we
are spreading the DNS query load over all configured IPs, as good netizen do.
2019-02-19 09:37:38 +01:00
Michael Stapelberg
a05f027765
dns: fallback only once, i.e. prefer the working server next time
2019-02-19 08:49:40 +01:00
Michael Stapelberg
ccaf6ad452
dns: fallback to next upstream upon failure
2019-02-19 08:38:52 +01:00
Michael Stapelberg
bd8fc63b0e
dns: implement per-DHCP-lease dyndns
...
The HTTP API is easy to use from the command line or from Go:
% curl --data "host=sub&ip=192.168.33.44" -4 http://router7:8053/dyndns
ok
% host sub.$(hostname)
sub.midna has address 192.168.33.44
This can be used in combination with https://github.com/gokrazy/gdns
2019-01-06 14:41:26 +01:00
Michael Stapelberg
92d995bf79
dns: return empty reply for non-A queries for DNS hostnames
...
instead of NXDOMAIN, which is incorrect
2019-01-01 17:21:50 +01:00
Michael Stapelberg
ac883da6a5
dns_test: xps → testtarget
...
This fixes running the tests on xps, where the entry derived from os.Hostname
would clash with the xps entries the testcase tries to install.
2018-11-22 17:03:51 +01:00
Michael Stapelberg
4288adec69
dns: don’t let clients override the hostname
...
fixes #11
2018-10-22 21:43:41 +02:00
Michael Stapelberg
5a5a748b9f
dnsd: don’t serve expired leases
...
fixes #6
2018-08-05 11:30:58 +02:00
Michael Stapelberg
b347ed74c5
update import paths
2018-07-09 08:54:04 +02:00
Michael Stapelberg
ff7aa8f2cb
add copyright notices
2018-06-28 20:08:23 +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
08249aec6a
dns: resolve localhost locally
2018-06-25 20:24:02 +02:00
Michael Stapelberg
60de127991
Describe all packages and binaries.
2018-06-25 20:12:51 +02:00
Michael Stapelberg
c96c683e43
dns: send NXDOMAIN for non-existant local names
2018-06-23 22:15:35 +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
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
6b9ce5728a
Initial commit
2018-05-27 17:30:42 +02:00