all: add router client info detection

This commit add the ability for ctrld to gather client information,
including mac/ip/hostname, and send to Control-D server through a
config per upstream.

 - Add send_client_info upstream config.
 - Read/Watch dnsmasq leases files on supported platforms.
 - Add corresponding client info to DoH query header

All of these only apply for Control-D upstream, though.
This commit is contained in:
Cuong Manh Le
2023-04-20 23:16:20 +07:00
committed by Cuong Manh Le
parent d52cd11322
commit 0645a738ad
17 changed files with 370 additions and 27 deletions

View File

@@ -50,6 +50,13 @@ type = "legacy"
endpoint = "8.8.8.8"
timeout = 5
[upstream.3]
name = "DOH with client info"
type = "doh"
endpoint = "https://dns.controld.com/client_info_upstream/main-device"
timeout = 5
send_client_info = false
[listener.0]
ip = "127.0.0.1"
port = 53