exchange
Goto Top

DNS Cache TTL

Hallo Leute,
ich habe ein kleines Problem mit einer Supportabteilung von einem deutschen Routerhersteller.

Es geht dabei um einen relativ großen HotSpot Standort. Der eingesetzte Router Vor-Ort ist von Mikrotik und dieser macht das DNS Caching.

Jetzt habe ich vor gut einer Woche den neuen Router, VOR, den Mikrotik Router gesetzt und dieser stellt nur die Internetverbindung bereit. Zu dem Zeitpunkt war auf dem MikroTik Router NAT aktiviert wodurch alle Anfragen von einer IP an den neuen Router gestellt worden. Nach einer entsprechenden Zeit ging am Standort nichts mehr, da der neue Router ein Limit hat, welches nach einiger Zeit erreicht war. Leider stand das nicht im Datenblatt.

Jetzt zum eigentlich Problem. Wenn eine IP (Source oder Destination) in dieses Limit läuft blockt der Router die IP. Dabei scheint Ihm der Port egal zu sein, da ICMP auch nicht mehr ging. Das gleiche betrifft frühere Verbindungen zu oder von der IP aus. Wenn die Anfragen aber dann sinken baut er die Blockade nicht mehr ab. Das NAT ist mittlerweile aus und wird an einer anderen Stelle erledigt. Von dem Block waren die beiden OpenDNS Server als DestIP betroffen. Das Limit liegt bei 25.000 gleichzeitigen Verbindungen. Am MikroTik Router sehe ich höchstens 10.000 und das von allen IPs.

Der Support schiebt das Problem auf einen fehlerhaft konfigurierten DNS Caching Server (an der Stelle der MikroTik) und verlangt von mir dort eine TTL von z.B. 120 Sekunden zu vergeben und an der Stelle fängt bei mir Fragezeichen größer zu werden an.

Wie konfiguriert man in einem Caching Nameserver denn bitte die TTL?

Ich finde weder bei MikroTik eine Einstellung (nur max lifetime ttl) noch im Microsoft DNS Server. Meiner Meinung nach auch absoluter Bullshit, da die TTL ja von der Zone mitgeteilt wird und diese kommt von einem autoritativen Nameserver.


Vielleicht hat ja einer eine Idee face-smile


Gruß
exchange

Content-ID: 268014

Url: https://administrator.de/contentid/268014

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

Pjordorf
Pjordorf 01.04.2015 um 11:20:55 Uhr
Goto Top
Hallo,

Zitat von @exchange:
Zu dem Zeitpunkt war auf dem MikroTik Router NAT aktiviert
Nicht unüblich

Nach einer entsprechenden Zeit
Was ist eine entsprechende zeit und wie ist die bei dir Eingestellt?

da der neue Router ein Limit hat,
Und um welches Limit geht es da?

Leider stand das nicht im Datenblatt.
Da stand aber sicherlich das dein uns ungenanntes Gerät Sicherheitseinstellung hat welche das dahinterliegende Netz schützen und den Internetzugang frei halsten soll. Sachen wie DDOS usw. versuchen diese Geräte ja zu erkennen und tja, dann blocken die schon mal.

Wenn eine IP (Source oder Destination) in dieses Limit
Welches Limit?

Der Support schiebt das Problem auf einen fehlerhaft konfigurierten DNS Caching Server
Betreibst du denn eine Caching DNS?
Aber ich kann den Support verstehen, ich verstehe hier auch nicht was du uns sagen willst...

Ich finde weder bei MikroTik eine Einstellung (nur max lifetime ttl) noch im Microsoft DNS Server.
2 DNS (Server) im eigenen Netz welche sich der Außenwelt mitteilen?

Vielleicht hat ja einer eine Idee face-smile
Mal doch mal auf wer was bei dir tut, mit Routing und so, damit wir verstehen wer wann wo zuständig ist....

Gruß,
Peter
AndiEoh
AndiEoh 01.04.2015 um 11:53:10 Uhr
Goto Top
Hallo,

die "max lifetime ttl" ist üblicherweise eine Obergrenze die der caching resolver verwendet. Wenn nun also vom eigentlichen Nameserver eine TTL > 120 mitgeteilt wird und du 120 als Maxwert gesetzt hast wird vom Resolver 120 als TTL verwendet. Was das allerdings mit deinem Problem mit zuvielen "Verbindungen" zu tun haben soll weiß ich auch nicht. DNS ist üblichweise UDP also verbindungslos und eine niedrigere TTL führt ja eher zu mehr Traffic???

Du solltest eher die DoS Absicherung des Routers prüfen und eventuell eine Ausnahme für UDP Port 53 einrichten...

Gruß

Andi
exchange
exchange 01.04.2015 um 12:12:48 Uhr
Goto Top
Hi,
der Weg vom Endnetz bis ins WWW ist: Client (z.B. Iphone), MikroTik Router (HotSpot Regeln & DNS), Router X via VPN ins Rechenzentrum auf einen Router des Herstellers, nochmal über einen MikroTik Router (macht aktuell NAT) und dann ist meine Hoheit beendet. Die Router des Herstellers X dienen quasi nur der Leitungsbereitstellung.

Zu den Timeouts kann ich nichts sagen, da diese fest eingestellt sind und nur der Hersteller diese kennt. Sind also nicht einstellbar wie bei jedem anderen Router.

Das Limit sind 25.000 gleichzeitige Verbindungen. Es ist korrekt das der Router eine DDOS Erkennung hat. Hier im Labor konnte ich das mit entsprechenden Tools auch nachstellen (Syn Flood & UDP Flood). Die IP wurde geblockt und nach einer geringen Zeit (Sekunden) wieder freigeben. Es gab einen entsprechenden Log Eintrag (blocked... & not blocked...).
Dieser Log Eintrag fehlt mir aber im Produktivsystem komplett und die Firmware ist exakt gleich.

Die Anfragen werden vom MikroTik im Cache gehalten (ca. 40% belegt) und zwar so lange wie die TTL der Zone ist bzw. maximal 14 Tage. Danach gibt es keinen Cache mehr, da es keinen Sinn macht nochmal zu cachen.

Sinn der Frage war eigentlich: Kann man die TTL in einem z.B. Microsoft DNS Server oder auch im bind Server anpassen, wenn dieser nicht der autoritativen Nameserver ist also als forwarder agiert?

Das einzige was ich finden konnte war die max-ttl Anpassung: http://support.microsoft.com/en-us/kb/198408

Den Beitrag habe ich verfasst, da der Supporter felsenfest behauptet, dass ich die TTL im DNS anpassen soll und ich so langsam zweifle ich an meinem DNS Verständnis face-smile

Im MikroTik gibt es keine Einstellung für sowas und der MS DNS kann das anscheinend auch nicht. Meiner Meinung nach würde es auch technisch wenig Sinn machen wenn ich die TTL überschreibe. Wenn ein Record mit einer TTL von 0 oder 1 kommt, dann wird der halt nicht bzw. nur eine Sekunde gecached. Ggf. ist dies aber auch so gewünscht z.B. Load Balancing.

@andi:
So sehe ich das auch. Ausnahmen? Gibt es keine face-smile Ne mal im Ernst, das Teil ist kein Cisco Gerät und das weder eine anständige CLI noch kann man den Wert über das Webinterface setzen. Ich hatte an dem Standort die OpenDNS Server eingetragen und beide wurden nach ein paar Tagen geblockt. Danach habe schnell den Google DNS eingetragen (kannte die anderen beiden OpenDNS nicht aus dem Kopf) und auch dieser wurde nach einiger Zeit geblockt. An dem Standort sind halt mal gut mehr als 1000 Leute online. Die 3 geblockten IP Adressen wurden aber NIE WIEDER freigegeben. Ein Routerneustart hat es dann gelöst.


Gruß
exchange
AndiEoh
AndiEoh 02.04.2015 um 12:30:08 Uhr
Goto Top
Hallo,

die TTL wird vom Nameserver vorgegeben der für die Domain zuständig ist, der Caching Resolver also die MikroTik oder MS-DNS können nun diesen Wert verwenden und "runterzählen" um die Gültigkeitsdauer zu bestimmen, oder eine Ober-/Untergrenze auf den TTL Wert anwenden und dann diesen Wert verwenden. Ist aber auf jeden Fall Banane diesen Wert nach unten zu drücken, da dann mehr Verbindungen zu den OpenDNS Server pro Zeiteinheit benötigt werden, da der gecachete Wert schneller ungültig wird. Das ganze per min-TTL nach oben drücken sollte auch vermieden werden, da der Eigentümer der Domain darüber eventuell Loadbalancing/Ausfallsicherheit steuert.

Was du mal testen könntest wäre bei der ersten MikroTik im Endnetz die zweite MikroTik als Forwarder eintragen und auf der NAT MikroTik zusätzlich den DNS Cache einschalten. Damit macht die zweite außerhalb des VPN die eigentliche Namensauflösung. Du musst nur verhindern das der Zugriff auf diese dann vom VPN Router gesperrt wird...

Gruß & viel Erfolg

Andi