NAT und Mangling mit iptablesIm ersten Teil dieses Artikels werden wir lernen, wie Network Address Translation (NAT) und Port Address Translation (PAT) durchführen, die auch als Network Address and Port Translation (NAPT), mit iptables bezeichnet. Danach werden wir lernen, was Mangling ist und wie man Pakete mangle. Eine kurze Einführung in die NAT-und PAT (NAPT)
Nach der Art und Weise TCP / IP arbeitet, um für die Hosts über das Internet kommunizieren können, müssen jeweils eine eindeutige IP-Adresse.
|
| SNAT mit iptables eingeführt wurde, und nicht in netfilter für Kernel niedriger als 2,4 bestehen. Allerdings wurde Masquerade in iptables einfach deshalb, weil mit Schnittstellen wie PPP-Adapter gehalten, dass eine dynamisch zugewiesene IP-Adresse erhalten, ist es einfacher zu machen ein MASQ statt finden, der dynamisch zugewiesenen IP-Adresse und SNAT tun. |
Wenn der Computer SNATed oder maskiert, wird die Linux-Router die Quelle ändern IP-Adresse im Paket-Header von 192.168.1.3 bis 1.1.1.1 und 2.2.2.2 auf das Paket nach dem Routing-Prozess übergeben. Informationen über diese Verbindung wird in / proc / net / ip_conntrack.
Wenn 2.2.2.2 Antworten, die IP-Paket, das in der Linux-Router erreicht werden Quell-IP-Adresse 2.2.2.2 und 1.1.1.1 Ziel-IP-Adresse haben. Linux sucht nach Informationen über dieses Paket in / proc / net / ip_conntrack und findet ein Spiel gegen Informationen auf dem vorherigen Schritt gespeichert. An dieser Stelle wird Linux die Ziel-IP-Adresse in das Paket-Header auf 192.168.1.3 ändern und das IP-Paket auf die NAT-Computer nach dem Routing-Prozess übergeben.
DNAT oder Destination Network Address Translation Karten über eine öffentliche IP-Adresse an eine private IP-Adresse. DNAT der Rückseite SNAT ist, so, wenn Sie SNAT an eine private IP-Adresse in eine öffentliche IP-Adresse und DNAT zu derselben öffentlichen IP-Adresse in die gleiche private IP-Adresse zu übersetzen, wird das Ergebnis volle NAT.
DNAT-Regel verwendet wird, wenn Sie einen Server hinter NAT haben, so dass die gleiche öffentliche IP-Adresse zu verschiedenen privaten IP-Adressen zugeordnet ist abhängig von Ports bzw. Protokolle. Dieser Prozess wird auch als Port-Weiterleitung.
Normalerweise können nicht 2.2.2.2 Einleitung einer Mitteilung an 192.168.1.3 denn dies ist eine private IP-Adresse und ist nicht im Internet geroutet.
2.2.2.2 versucht, eine Verbindung mit 1.1.1.1 einzuleiten. Wenn eine DNAT-Regel für dieses Paket abgeschlossen wird, wird der Linux-Router die Ziel-IP-Adresse in das IP-Paket-Header aus 1.1.1.1 Änderung 192.168.1.3, übergeben das Paket in Richtung 192.168.1.3, und halten Sie eine Spur dieser Verbindung.
Wenn 192.168.1.3 antwortet, wird das Paket in der conntrack Tabelle der Linux-Router zu finden, damit es "weiß", dass das Paket, um die Verbindung von 2.2.2.2 auf 1.1.1.1 eingeleitet gehört. Der Linux-Router wird die Quelle ändern IP-Adresse in das IP-Paket-Header von 192.168.1.3 bis 1.1.1.1.
| Wenn DNAT konfiguriert ist, aber SNAT nicht, wird 2.2.2.2 der Lage sein, Verbindungen zu schaffen 192.168.1.3 mit 1.1.1.1 als Ziel-IP-Adresse 192.168.1.3, aber nicht in der Lage, Verbindungen zu 2.2.2.2 einzuleiten. |
Mit anderen Worten, ist die volle NAT SNAT und DNAT präsentiert als zuvor.
Dies ist die Funktion, die SOHO-Router als "DMZ", wie bereits erläutert. Der Grund dafür nennen sie diese Funktion "DMZ" ist, dass IP-Pakete nicht gehören, um eine Verbindung von jedem Host aus dem privaten Netzwerk 192.168.1.0/24 eingeleitet wird 192.168.1.3 weitergeleitet werden, so dass dieser Host nicht gewährleisteten Schutz durch die Tatsache, dass es eine private IP-Adresse.
| Im Falle nur vorgestellt werden können, 1.1.1.1 NAT-Router die IP-Adresse oder es kann nur um sie weitergeleitet werden. Wenn es der Router die öffentliche IP-Adresse (wie in den früheren Diagramme), kann die NAT-Router nicht aus dem Internet zugegriffen werden (zB kann man es nicht in SSH), weil es alle Pakete werden auf 192.168.1.3 zu übermitteln. |
PAT steht für Port Address Translation und es wird auch als NAPT, die für Network Address Translation und Port steht. Die Idee hinter PAT ist nicht nur die IP-Adresse zu übersetzen, sondern auch die Port-Nummer für bestimmte Hosts und Ports.
Das Unternehmen Web-Server hinter NAT und hat die IP-Adresse 192.168.1.100. Da nur eine öffentliche IP-Adresse, http://www.
Mehr als das, haben wir ein Firmen-Intranet-Server mit der IP-Adresse 192.168.1.200, Betrieb eines Web-Server auf Port 80. Wenn in dem Büro, haben die Mitarbeiter auf den Typ http://192.168.1.200 in ihrem Web-Browser und sie in der Intranet-Web-Server anmelden.
Wenn wir wollen, dass Benutzer auf den Intranet-Server, wenn sie außerhalb des Büros log, PAT ist die Antwort. Mit PAT, können wir die Wahl eines Hafens, die nicht auf der NAT-Router geöffnet (z. B. 2143), und wenn die Anfrage kommt aus dem Internet mit dem Ziel-IP-Adresse 217.156.123.3 und die Ziel-Port 2143, schreibt die NAT-Router die Ziel-IP-Adresse auf 192.168.1.200 und den Ziel-Port 2143-80.
Auf diese Weise aus dem Internet, wenn ein Benutzer:
Wir haben noch nicht auf den Port neu zu schreiben, wenn ein Paket die Quell-IP-Adresse 192.168.1.200 hat, dann müssen wir nur eingerichtet SNAT oder Masquerade, so dass die Intranet-Server greift auf das Internet mit 1.1.1.1.
|
|