MikroTik: NAT Masquerade kann ungewollt private IP weitergeben aber warum?
Hallo Administrator-Forum,
Ich habe ein Verständnisproblem damit, was passiert, wenn WAN-Schnittstellen gewechselt werden und Masquerading aktiv ist.
Insbesondere, wie die Verbindung aktiv bleibt, wenn das Routing über die primäre Verbindung (primäre WAN-Schnittstelle) wiederhergestellt wird, nachdem sie über die Backup-Route (Backup-WAN-Schnittstelle) geroutet wurde
In NAT - RouterOS - MikroTik Documentation heisst es:
aber nirgends wird gesagt, warum:
Mein unvollstädniger Erklärungsversuch:
Gruss und Danke
Stefan
Ich habe ein Verständnisproblem damit, was passiert, wenn WAN-Schnittstellen gewechselt werden und Masquerading aktiv ist.
Insbesondere, wie die Verbindung aktiv bleibt, wenn das Routing über die primäre Verbindung (primäre WAN-Schnittstelle) wiederhergestellt wird, nachdem sie über die Backup-Route (Backup-WAN-Schnittstelle) geroutet wurde
In NAT - RouterOS - MikroTik Documentation heisst es:
Masquerade
... it was designed for specific use in situations when public IP can randomly change,...
Unfortunately, this can lead to some issues with unstable links when the connection gets routed over different links after the primary link goes down. In such a scenario following things can happen:
...
overcome limitations RouterOS includes a number of so-called NAT helpers, that enable NAT traversal for various protocols. When action=srcnat is used instead, connection tracking entries remain and connections can simply resume.
Zudem steht in Most underused and overused RouterOS features. My holy war against masquerade MUM, USA da Gleiche nur in kurz:... it was designed for specific use in situations when public IP can randomly change,...
Unfortunately, this can lead to some issues with unstable links when the connection gets routed over different links after the primary link goes down. In such a scenario following things can happen:
- on disconnect, all related connection tracking entries are purged;
- the primary link comes back, routing is restored over the primary link, so packets that belong to existing connections are sent over the primary interface without being masqueraded, that way leaking local IPs to a public network.
...
overcome limitations RouterOS includes a number of so-called NAT helpers, that enable NAT traversal for various protocols. When action=srcnat is used instead, connection tracking entries remain and connections can simply resume.
On disconnect, all related connection tracking entries are purged
Next packet from every purged connection will come into firewall as connection-state=new, and, packet will be routed out via alternative route thus creating new connection entry
When primary link comes back, routing is restored over primary link, so packets that belong to existing connections are sent over primary interface without being masqueraded
Next packet from every purged connection will come into firewall as connection-state=new, and, packet will be routed out via alternative route thus creating new connection entry
When primary link comes back, routing is restored over primary link, so packets that belong to existing connections are sent over primary interface without being masqueraded
aber nirgends wird gesagt, warum:
- auf die primäre Verbindung zurückgeschaltet wird?
- die Verbindung nicht unterbrochen wird (sie bleibt während dieses Prozesses ESTABLISHED, aber die Route ändert sich)?
- diese mysteriösen NAT-Helfer die Verbindung nicht als NEW Verbindung in der Connection Tracking erscheinen lassen?
Mein unvollstädniger Erklärungsversuch:
- Die Route über ETHER1 wird geschlossen --> alle Verbindungen über ETHER1 werden aus dem Connection-Tracking (CT) gelöscht. Der Datenverkehr wird über eine anderes Interface geleitet, sofern eine vorhanden ist.
- ETHER2 ist die Backup-Route, d.h. der Verkehr läuft jetzt über ETHER2 und wird wieder verfolgt und masqueraded. Dies liegt daran, dass die Verbindung unterbrochen wurde und neu aufgebaut werden muss, so dass CT den Verkehr als NEW und dann ESTABLISHED vom LAN durch NAT-Masquerade zu ETHER2 routed
- ETHER1 kommt wieder online, jetzt wird es mysteriös:
- Die Verbindung über ETHER2 wird zurück zu ETHER1 geschaltet, aber warum?
- Wie wird der ununterbrochene Datenfluss realisiert, wenn die Interface bei Routenänderungen umgeschaltet werden?
- warum ist die Verbindung jetzt ungültig?
- Die Verbindung wird von ETHER2 zu ETHER1 verschoben und bleibt verbunden, so dass kein TCP-Drei-Wege-Handshake stattfindet, bei dem SYN (+ACK) aus dem LAN gesendet wird.
- Die Verbindung wird nicht als NEW in CT eingetragen, da dies nur bei Verbindungen geschieht, die SYN (+ACK) aussenden?
- Sie wird also nicht MASQUERADED, wenn sie durch ETHER1 fließt, da NAT nur auf NEW reagiert?
- Die Regel drop connection-state=invalid packets funktioniert, da das Paket innerhalb des CT von ETHER1 nicht identifiziert werden kann, da das Paket keiner RELATED oder ESTABLISHED Verbindung zugeordnet werden kann?
Gruss und Danke
Stefan
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 1101864804
Url: https://administrator.de/contentid/1101864804
Ausgedruckt am: 24.11.2024 um 02:11 Uhr
4 Kommentare
Neuester Kommentar