Ich verwende iptable-Regeln, um Pakete auf meinem Ubuntu-Server zu filtern und zu manipulieren. aber ich kann die mangeltabelle nicht verstehen.
Aus diesem iptables-Tutorial zitieren :
Diese Tabelle sollte, wie wir bereits bemerkt haben, hauptsächlich zum Verwirren von Paketen verwendet werden. Mit anderen Worten, Sie können die Mangelübereinstimmungen usw., die zum Ändern der TOS-Felder (Type Of Service) usw. verwendet werden können, frei verwenden.
Es wird dringend empfohlen, diese Tabelle nicht für Filterzwecke zu verwenden. DNAT, SNAT oder Masquerading funktionieren in dieser Tabelle nicht.
Kann mir jemand die Mangeltabelle beschreiben und einige Beispiele nennen, um zu verstehen, wann ich sie verwenden sollte?
iptables(8)
Manpage enthält alle gewünschten Informationen, einschließlich einiger nützlicher Beispiele für die Verwendung von Mangeltabellen.Antworten:
Zusätzlich zu den anderen guten Antworten musste ich kürzlich die Mangeltabelle verwenden, um die MTU-Diskrepanzen (Maximum Transmission Unit) auszugleichen, die durch den Datenverkehr über PPPoE, PPP und ATM verursacht werden. Dies führt jeweils zu einem zusätzlichen Aufwand, der die für IP verfügbare Nutzlast verringert von den üblichen 1500 Bytes eines Ethernet-Frames.
Bei Systemen an jedem Ende der Pipe wird die MTU wie üblich auf den regulären Standardwert von 1500 eingestellt, und daher wird versucht, so große IP-Frames zu senden. Da die tatsächlich verfügbare Nutzlast kleiner war, hätte dies zu einer Paketfragmentierung geführt, mit der Ausnahme, dass der Absender häufig anfordert, dass Pakete nicht fragmentiert werden, und dass sie daher vollständig verworfen werden.
In einer idealen Welt hätte die Pfad-MTU-Erkennung es den Endpunkten ermöglicht, ihre MTU nach Bedarf herunterzufahren. Diese Erkennung hängt jedoch von ICMP ab, und Netzwerke außerhalb meiner Kontrolle wurden häufig so konfiguriert, dass ICMP aus Sicherheitsgründen gelöscht wird.
Die einzige Möglichkeit bestand darin, die Paketverwaltung in meinem Router zu verwenden, um TCP-SYN-Pakete so zu ändern, dass die maximale Segmentgröße auf der Transportebene verringert wird:
Diese Art von Dingen ist chaotisch und sollte im Idealfall vermieden werden, aber ich hatte keine anderen Optionen und dies löste das Problem.
Hoffe, diese Beispiele helfen, sowie die Manpage.
quelle
Ich habe hier kürzlich eine gute Erklärung gefunden . Es wird im Wesentlichen verwendet, um bestimmte Header für IP-Pakete festzulegen, um die später getroffene Routing-Entscheidung zu beeinflussen. Wenn überhaupt, ist die TTL-Option wahrscheinlich die interessanteste:
Die anderen Ziele sind
TOS, MARK, SECMARK, CONNSECMARK
.quelle
Als iptables noob würde ich sagen: In der Mangeltabelle können einige spezielle Einträge im Header von Paketen geändert werden. (z. B. Art des Dienstes, Lebensdauer) (es können auch spezielle Markierungen und Sicherheitskontextmarkierungen gesetzt werden)
quelle
Es gibt einen guten tiefen Tauchgang, aber das Tutorial über Iptables ist hier nicht allzu schwer zu verstehen .
Hat mir sehr geholfen, da es auch klar erklärt, wie alle Teile zusammenpassen und sich gegenseitig beeinflussen.
quelle