I'm having trouble resolving some domain names from a Debian machine using the internal MikroTik DNS resolver, see example with domain name php.net below. Other domain names are resolved successfully.
The issue occurs only with large DNS anwers, e.g. while doing an "ANY" request. If requesting for example A or MX for the same domain name, everything is fine.
(192.168.1.1 is the IP of the MikroTik with v7.13)
Code: Select all
root@linux-server:/# dig any php.net
; <<>> DiG 9.18.19-1~deb12u1-Debian <<>> any php.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 8617
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;php.net. IN ANY
;; Query time: 10004 msec
;; SERVER: 192.168.1.1#53(192.168.1.1) (TCP)
;; WHEN: Mon Jan 01 22:30:33 CET 2024
;; MSG SIZE rcvd: 25
If using the Google DNS on the Debian machine, everything is working as expected:
Code: Select all
root@linux-server:/# dig any php.net @8.8.8.8
; <<>> DiG 9.18.19-1~deb12u1-Debian <<>> any php.net @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1269
;; flags: qr rd ra; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;php.net. IN ANY
;; ANSWER SECTION:
php.net. 300 IN SOA ns1.php.net. admin.easydns.com. 1704142862 16384 2048 1048576 2560
php.net. 30 IN MX 0 php-smtp4-ip4.php.net.
php.net. 300 IN TXT "_globalsign-domain-verification=YKIbqgUIt0x2vDkmdYS8TzqfqP6jyVp2fVVyJWyopw"
php.net. 300 IN TXT "v=spf1 ip4:140.211.15.143 ip4:45.112.84.5 ip4:142.93.197.176 ip6:2604:a880:400:d0::1c74:1001 ip6:2a02:cb43:8000::1102 ip4:157.90.121.187 ip6:2a01:4f8:1c1e:416d::1 ?all"
php.net. 300 IN TXT "google-site-verification=R0anXzbL507wmRx5iv1S-5jN55RYVo2UYIqFP2L_k1g"
php.net. 300 IN A 185.85.0.29
php.net. 300 IN AAAA 2a02:cb40:200::1ad
php.net. 300 IN NS dns2.easydns.net.
php.net. 300 IN NS dns3.easydns.org.
php.net. 300 IN NS dns1.easydns.com.
php.net. 300 IN NS dns4.easydns.info.
;; Query time: 16 msec
;; SERVER: 8.8.8.8#53(8.8.8.8) (TCP)
;; WHEN: Mon Jan 01 22:30:38 CET 2024
;; MSG SIZE rcvd: 622
I thought the problem might be related to the pppoe uplink and some MTU stuff. Reducing MTU / MRU to lower values has no positive effect.
Extract from the config (let me know if you'd like to see more):
Code: Select all
/ip dns
set allow-remote-requests=yes cache-max-ttl=1d cache-size=4096KiB servers=8.8.8.8
/interface pppoe-client
add add-default-route=yes disabled=no interface=combo1 max-mru=1492 max-mtu=1492 name=Telekom-DSL profile=telekom user=00000123456789@t-online.de
MikroTik log during the failed DNS request:
Code: Select all
23:12:40 dns query from 255.255.255.255: #420373 php.net. ALL
23:12:50 dns done query: #420373 dns server failure
Any ideas would be helpful! Thank you very much!