
Ich habe ein Heimnetzwerk mit zwei hintereinander liegenden Routern. Der WAN-Port des äußeren Routers ist eine VDSL2-PPPoE-Verbindung mit einer aktiven IP-Adresse und der MTU-Größe 1492. Der WAN-Port des inneren Routers wird über DHCP als weiterer Client im LAN-Netzwerk des äußeren Routers zugewiesen. Die Standard-MTU dafür war 1500. Ich habe sie auf 1492 geändert, damit sie mit der des äußeren Routers übereinstimmt.
Nun frage ich mich, ob es Sinn macht, die MTU-Größe für das interne Netzwerk weiter zu reduzieren. Würde das das interne Netzwerk in diesem Double-NAT-Szenario robuster machen?
Antwort1
NAT ändert nur IP-Adressen/Ports in den Paketen, es fügt dem Paket keine zusätzlichen Informationen (Header usw.) hinzu. Daher reduziert es die MTU in keiner Weise und es ist in Ordnung, die gleiche MTU beizubehalten.
Antwort2
Während NAT die Paketgröße nicht erhöht (oder, genauer gesagt, die maximale Nutzlastgröße pro Paket verringert), ist dies bei PPoE und anderen Tunnelprotokollen häufig der Fall.
Die meisten modernen Betriebssysteme haben jedochPfad MTU-Erkennung, umrissen inRFC1191, das im Optimalfall ausgehende Pakete automatisch an die kleinste MTU aller Verbindungen zwischen dem sendenden Host und dem Ziel anpasst. Dies geschieht durch die Einstellung DF bit
(Nicht fragmentieren) in großen ausgehenden Paketen und die Suche nach einem ICMP-Fehler Fragmentation Needed
.
Unter MacOS und anderen Unix-ähnlichen Betriebssystemen ping
verfügt das Dienstprogramm über mehrere Schalter, mit denen die festgelegt DF bit
und die Nutzlastgröße festgelegt werden kann. Außerdem können mehrere Größenbereiche durchsucht werden, wodurch effektiv eine MTU zwischen dem Quellhost und dem Ziel bestimmt wird. Es gibt 8 Byte Overhead in den ICMP Echo Request
ping
gesendeten Paketen und 20 Byte Overhead im IP-Paket, wodurch die maximale Nutzlast von 1472 für ein Ping-Paket mit der DF bit
auf einer 1500-Byte-MTU-Schnittstelle festgelegten Anzahl von Paketen erreicht wird.
Sie könnten Ihre MTU niedriger einstellen, um diesen einen bestimmten Pfad in geringem Maße zu optimieren, im Gegenzug für eine etwas weniger optimale Paketgröße fürjeder anderePaketstrom, an dem der Host teilnimmt.
Sofern Sie also keine Probleme mit stockenden Dateiübertragungen haben, ist es möglicherweise am besten, die MTU automatisch vom Betriebssystem handhaben zu lassen.
[nevin-mac-mini:~] nevin% ping -c 1 -D -s 1472 192.168.2.1 PING 192.168.2.1 (192.168.2.1): 1472 Datenbytes 1480 Bytes von 192.168.2.1: icmp_seq=0 ttl=64 Zeit=0,667 ms --- 192.168.2.1 Ping-Statistiken --- 1 Pakete gesendet, 1 Pakete empfangen, 0,0 % Paketverlust Hin- und Rückfahrt min./durchschnittlich/max./standardmäßig = 0,667/0,667/0,667/0,000 ms [nevin-mac-mini:~] nevin% ping -c 1 -D -s 1473 192.168.2.1 PING 192.168.2.1 (192.168.2.1): 1473 Datenbytes Ping: Sendean: Nachricht zu lang --- 192.168.2.1 Ping-Statistiken --- 1 Pakete gesendet, 0 Pakete empfangen, 100,0 % Paketverlust