louislam / uptime-kuma

A fancy self-hosted monitoring tool
https://uptime.kuma.pet
MIT License
53.09k stars 4.8k forks source link

Monitor encrypted DNS (DOH and DOT) #2765

Open yurividal opened 1 year ago

yurividal commented 1 year ago

⚠️ Please verify that this feature request has NOT been suggested before.

🏷️ Feature Request Type

New Monitor

🔖 Feature description

I would like to be able to monitor DNS-Over-TLS and DNS-Over-HTTPS. Both are encrypted forms of DNS. I have a dns server that only responds to encrypted queries and I would like to monitor if it's up.

✔️ Solution

Add a DOT and DOH field to the DNS monitor.

❓ Alternatives

Theoretically I can monitor the ports, but that's not enough as the service could be intermitent

📝 Additional Context

No

StefanescuCristian commented 1 year ago

+1

CommanderStorm commented 1 year ago

@StefanescuCristian Please refrain from posting +1 / requests for updates things on issues, as this makes issue-management harder. Issues are for discussing what needs to be done how by whom. We use 👍🏻 on issues to prioritise work. PRs are always welcome for bugfixes like this

StefanescuCristian commented 1 year ago

👍

ekrekeler commented 5 months ago

DoH at least should be possible. If I am not mistaken, the dns2 module is used by the dnsResolve function here: https://github.com/louislam/uptime-kuma/blob/538f83205d75fdfc437bece61764e864ae90a5b0/server/util-server.js#L292-L293

And this module has baked-in DoH support. Here is the example code: https://github.com/song940/node-dns/blob/master/example/client/doh.js

I might try to tackle this and make a PR sometime later if I get the time to brush up on nodejs, but no promises.

Iliannnn commented 1 month ago

This would be nice to have.

CommanderStorm commented 1 month ago

The DNS monitor is currently quite barebones and not really useful. If someone wants to improve upon this, our contribution guide can be found here https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md

Iliannnn commented 1 month ago

I'd love to have a way to monitor my Adguard Home DNS and see if it's still connectable.