Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sys: net: dns: use Quad9 resolver #21120

Merged
merged 1 commit into from
Jan 3, 2025

Conversation

OlegHahm
Copy link
Member

@OlegHahm OlegHahm commented Jan 2, 2025

Contribution description

Replaces Google's name servers with the OpenNIC Quad9 ones. This is better aligned with RIOT's spirit I belive.

Testing procedure

Build, for instance, gnrc_networking with auto_init_sock_dns and sock_dns enabled and try to ping riot-os.org.

@OlegHahm OlegHahm requested a review from maribu as a code owner January 2, 2025 15:06
@github-actions github-actions bot added Area: network Area: Networking Area: sys Area: System labels Jan 2, 2025
@maribu maribu enabled auto-merge January 2, 2025 15:10
@maribu maribu added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Jan 2, 2025
@waehlisch
Copy link
Member

i didn't know OpenNIC before but it seems more than a public recursive resolver. before we merge, i would like to get a better understanding of the consequences.

@riot-ci
Copy link

riot-ci commented Jan 2, 2025

Murdock results

✔️ PASSED

395bdb8 sys: net: dns: use Quad resolver

Success Failures Total Runtime
10249 0 10249 18m:17s

Artifacts

@maribu maribu added this pull request to the merge queue Jan 2, 2025
@benpicco
Copy link
Contributor

benpicco commented Jan 2, 2025

TREX would be even better as it's a DNS64 service, so you can reach sites like GitHub via NAT64.

@maribu maribu removed this pull request from the merge queue due to a manual request Jan 2, 2025
@OlegHahm
Copy link
Member Author

OlegHahm commented Jan 2, 2025

I don't care that much whether we go with OpenNIC or any other resolver as a default as long as we move away from Google and the like. I didn't know about OpenNIC before, either - came across while reading through some recommendations from CCC. So, if anyone has a better proposal for a free and open public DNS resolver without censorship and that can be used via plain UDP (AFAIK RIOT's DNS resolver does not support encryption yet), I'm totally open for suggestions.

@OlegHahm
Copy link
Member Author

OlegHahm commented Jan 2, 2025

TREX would be even better as it's a DNS64 service, so you can reach sites like GitHub via NAT64.

Doesn't seem to work:

┌─[oleg@applecore] - [~] - [2025-01-02 07:24:58]
└─[0] <> dig +short AAAA github.com @2001:67c:2b0::6
2001:67c:2b0:db32:0:1:8c52:7903
┌─[oleg@applecore] - [~] - [2025-01-02 07:25:02]
└─[0] <> ping -c1 2001:67c:2b0:db32:0:1:8c52:7903
PING 2001:67c:2b0:db32:0:1:8c52:7903 (2001:67c:2b0:db32:0:1:8c52:7903) 56 data bytes
From 2001:7f8:1d:18::72f8:85 icmp_seq=1 Destination unreachable: Source address failed ingress/egress policy

@maribu
Copy link
Member

maribu commented Jan 2, 2025

TREX is making DNS64 resolvers available to Finnish end users as part of a research project in association with the Finnish Future Internet programme and Internet Testbed Finland.

Maybe Geo-IP based allowlist?

Even if it would work we probably should not just ignore that they apparently don't want to provide the service to the general public.

@waehlisch
Copy link
Member

OpenNIC maintains its own TLDs in parallel to ICANN, which doesn't seem a good approach to me.

if we are looking for a neutral, privacy-responsible resolver, my suggestion is to go for Quad9, https://quad9.net/service/service-addresses-and-features/.

@OlegHahm
Copy link
Member Author

OlegHahm commented Jan 3, 2025

👍 If you trust them, I'm fine to trust them as well.

Replaces Google's solver with the Quad9 (https://quad9.net/) ones.
@OlegHahm OlegHahm force-pushed the pr/opennic_ns_instead_of_google branch from d684ba1 to 395bdb8 Compare January 3, 2025 09:07
@OlegHahm OlegHahm changed the title sys: net: dns: use OpenNIC nameservers sys: net: dns: use Quad9 nameservers Jan 3, 2025
@OlegHahm OlegHahm changed the title sys: net: dns: use Quad9 nameservers sys: net: dns: use Quad9 resolver Jan 3, 2025
@maribu maribu added this pull request to the merge queue Jan 3, 2025
Merged via the queue into RIOT-OS:master with commit 725a22e Jan 3, 2025
25 checks passed
Emmydon049

This comment was marked as off-topic.

@benpicco
Copy link
Contributor

benpicco commented Jan 6, 2025

TREX would be even better as it's a DNS64 service, so you can reach sites like GitHub via NAT64.

Doesn't seem to work:

'tis a pity.

level66 (2001:67c:2960::64) still works

2025-01-06 14:16:27,870 # ping github.com
2025-01-06 14:16:27,908 # 12 bytes from 2001:67c:2960:6464::8c52:7903: icmp_seq=0 ttl=46 time=25.083 ms
2025-01-06 14:16:28,897 # 12 bytes from 2001:67c:2960:6464::8c52:7903: icmp_seq=1 ttl=46 time=13.664 ms
2025-01-06 14:16:29,897 # 12 bytes from 2001:67c:2960:6464::8c52:7903: icmp_seq=2 ttl=46 time=13.631 ms
2025-01-06 14:16:29,897 # 
2025-01-06 14:16:29,898 # --- github.com PING statistics ---
2025-01-06 14:16:29,898 # 3 packets transmitted, 3 packets received, 0% packet loss
2025-01-06 14:16:29,899 # round-trip min/avg/max = 13.631/17.459/25.083 ms

@OlegHahm OlegHahm deleted the pr/opennic_ns_instead_of_google branch January 6, 2025 14:24
@MrKevinWeiss MrKevinWeiss added this to the Release 2025.01 milestone Jan 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: network Area: Networking Area: sys Area: System CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants