Ik heb gisteren een Mikrotik router geupgrade van versie 7.6 naar 7.10.2. Daarna werkt de DNS niet meer op het network op één of andere manier. In het verleden nooit problemen gehad dus denk dat mijn originele setup wel goed was. Ik probeer het probleem nu te achterhalen maar zie niet direct wat er fout gaat. Als er iemand nog tips heeft om verder te troubleshooten of de oplossing ziet zou dat super zijn!
Via DHCP geef ik aan alle clients eerst het IP van mijn AdGuard mee en als tweede DNS server het IP van de Mikrotik router als back up voor moest de AdGuard server het begeven.
Vanaf clients in het netwerk kan ik alle services intern in het netwerk nog perfect gebruiken. Wanneer ik een curl request doe naar https://1.0.0.1 werkt dat gewoon. Ook pingen naar externe IP's werkt vlot. Met dig kan ik echter geen enkele DNS request resolven (Mikrotik DNS, Interne Adguard DNS, externe DNS servers).
Ik heb een firewall rule toegevoegd om zeker te zijn dat poort 53 niet geblokkeerd is maar dit lijkt niet het probleem. (De rule heeft sinds gisteren al meer als 150 000 pakketen geaccepteerd en zie hem ook constant stijgen).
Zo heb ik de DNS getest:
Code: Selecteer alles
user@client:~$ dig @192.168.88.1 google.com
;; communications error to 192.168.88.1#53: timed out
;; communications error to 192.168.88.1#53: timed out
;; communications error to 192.168.88.1#53: timed out
; <<>> DiG 9.18.12-0ubuntu0.22.04.2-Ubuntu <<>> @192.168.88.1 google.com
; (1 server found)
;; global options: +cmd
;; no servers could be reached
user@client:~$ dig @192.168.88.100 google.com
;; communications error to 192.168.88.100#53: timed out
;; communications error to 192.168.88.100#53: timed out
;; communications error to 192.168.88.100#53: timed out
; <<>> DiG 9.18.12-0ubuntu0.22.04.2-Ubuntu <<>> @192.168.88.100 google.com
; (1 server found)
;; global options: +cmd
;; no servers could be reached
user@client:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=58 time=31.3 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=58 time=15.0 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=58 time=13.9 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=58 time=12.8 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=58 time=13.9 ms
64 bytes from 8.8.8.8: icmp_seq=6 ttl=58 time=12.0 ms
64 bytes from 8.8.8.8: icmp_seq=7 ttl=58 time=15.6 ms
64 bytes from 8.8.8.8: icmp_seq=8 ttl=58 time=13.1 ms
^C
--- 8.8.8.8 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7010ms
rtt min/avg/max/mdev = 11.984/15.941/31.314/5.910 ms
user@client:~$ dig @8.8.8.8 google.com
;; communications error to 8.8.8.8#53: timed out
;; communications error to 8.8.8.8#53: timed out
;; communications error to 8.8.8.8#53: timed out
; <<>> DiG 9.18.12-0ubuntu0.22.04.2-Ubuntu <<>> @8.8.8.8 google.com
; (1 server found)
;; global options: +cmd
;; no servers could be reached
user@client:~$ curl https://1.0.0.1
<!DOCTYPE html><html theme="light" lang="en-US" prefix="og: http://ogp.me/ns#"><head><meta charset="utf-8"><title>1.1.1.1 — The free app that makes your Internet faster.</title>
Code: Selecteer alles
/ip/firewall/filter print
Flags: X - disabled, I - invalid; D - dynamic
0 D ;;; special dummy rule to show fasttrack counters
chain=forward action=passthrough
1 chain=forward action=accept protocol=udp src-address=192.168.88.0/24 dst-port=53 log=no log-prefix=""
2 ;;; defconf: accept established,related,untracked
chain=input action=accept connection-state=established,related,untracked
/ip/dns print
servers: 8.8.8.8,8.8.4.4,1.1.1.1,1.0.0.1
dynamic-servers: 195.130.130.4,195.130.131.4
use-doh-server:
verify-doh-cert: no
doh-max-server-connections: 5
doh-max-concurrent-queries: 50
doh-timeout: 5s
allow-remote-requests: yes
max-udp-packet-size: 4096
query-server-timeout: 2s
query-total-timeout: 10s
max-concurrent-queries: 100
max-concurrent-tcp-sessions: 20
cache-size: 2048KiB
cache-max-ttl: 1w
address-list-extra-time: 0s
cache-used: 35KiB
Ok heb het probleem gevonden. Blijkbaar had ik volgende NAT rules:
Code: Selecteer alles
/ip/firewall/nat print
Flags: X - disabled, I - invalid; D - dynamic
0 ;;; defconf: masquerade
chain=srcnat action=masquerade out-interface-list=WAN ipsec-policy=out,none
1 X ;;; Force internal DNS
chain=dstnat action=dst-nat to-addresses=192.168.88.100 to-ports=53 protocol=udp in-interface-list=LAN dst-port=53 log=no log-prefix=""
2 X ;;; Force internal DNS
chain=dstnat action=dst-nat to-addresses=192.168.88.100 to-ports=53 protocol=tcp in-interface-list=LAN dst-port=53 log=no log-prefix=""