3b6b54f300e202edfb8e400b1a65477fd8b9239c
DNSThingyMagiK
This is my simple, barebones, insecure implementation of a simple DNS server meant for local use. The goal is to support RFC 1035, local records, ad blocking.
For now it successfully recursively resolves A records, for up to 1 record.
Testing
dig @serverip domain.tld
Example:
lovro@LHPw:~$ dig @193.2.231.85 govekar.net
; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> @193.2.231.85 govekar.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42029
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;govekar.net. IN A
;; ANSWER SECTION:
govekar.net. 300 IN A 185.199.110.153
;; Query time: 347 msec
;; SERVER: 193.2.231.85#53(193.2.231.85) (UDP)
;; WHEN: Tue Mar 11 16:21:04 CET 2025
;; MSG SIZE rcvd: 45
lovro@LHPw:~$
with 8.8.8.8:
lovro@LHPw:~$ dig @8.8.8.8 govekar.net
; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> @8.8.8.8 govekar.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19053
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;govekar.net. IN A
;; ANSWER SECTION:
govekar.net. 300 IN A 185.199.110.153
govekar.net. 300 IN A 185.199.109.153
govekar.net. 300 IN A 185.199.111.153
govekar.net. 300 IN A 185.199.108.153
;; Query time: 51 msec
;; SERVER: 8.8.8.8#53(8.8.8.8) (UDP)
;; WHEN: Tue Mar 11 16:22:12 CET 2025
;; MSG SIZE rcvd: 104
lovro@LHPw:~$
Description
Languages
Go
100%