Bereichs-Differenz
Berechnen Sie A minus B fuer IP-Bereiche
The range to subtract from
The range to subtract
Enter two CIDR ranges to calculate A − B
Range Difference (A − B)
Calculates the set difference between two IP ranges. The result contains all addresses that are in Range A but not in Range B. Useful for creating firewall rules with exceptions.
Das Range-Differenz-Tool berechnet die Mengendifferenz zwischen zwei IP-Bereichen -- Adressen, die in Bereich A, aber nicht in Bereich B existieren. Geben Sie 10.0.0.0/8 als Bereich A und 10.1.0.0/16 als Bereich B ein, um die acht CIDR-Blöcke zu erhalten, die alles im /8 abdecken, außer dem spezifischen /16.
IP-Bereichsdifferenz verstehen
Die Mengendifferenz-Operation (A minus B) ist eine der praktisch nützlichsten IP-Bereichsberechnungen. Sie beantwortet die Frage: Wenn ich mit Bereich A beginne und alles entferne, was sich mit Bereich B überschneidet, was bleibt übrig? Das Ergebnis ist der Teil von A, der sich nicht mit B überschneidet, ausgedrückt als minimale Liste von CIDR-Blöcken.
Dies kommt häufig beim Entwurf von Firewall- und Sicherheitsrichtlinien vor. Das klassische Beispiel ist "alles in diesem Netzwerk erlauben, außer dem Management-Subnetz." Sie haben eine breite Erlaubnisregel für 10.0.0.0/8, müssen aber 10.0.0.0/24 ausschließen, da dies Ihr Management-Netzwerk mit eigenen strengeren Regeln ist. Die Differenz 10.0.0.0/8 minus 10.0.0.0/24 liefert Ihnen die exakte Liste der CIDR-Blöcke, die Sie für die Erlaubnisregel benötigen. Ohne dieses Tool müssten Sie manuell herausfinden, welche Blöcke den verbleibenden Adressraum abdecken, was mühsam und fehleranfällig ist.
Das Ergebnis einer Differenzoperation enthält oft deutlich mehr CIDR-Blöcke, als man erwarten würde. Wenn Sie einen Block aus der Mitte eines Bereichs entfernen, ist der verbleibende Platz auf jeder Seite möglicherweise nicht an saubere CIDR-Grenzen ausgerichtet. Das Entfernen eines einzelnen /32 aus einem /24 kann acht CIDR-Blöcke erzeugen. Dies ist kein Fehler des Tools -- es ist eine grundlegende Eigenschaft der Funktionsweise von CIDR-Blöcken. Jeder Block muss eine Zweierpotenz-Größe haben und binär ausgerichtet sein, sodass die Darstellung eines beliebigen "Bereichs mit einem Loch" mehrere Blöcke erfordert, um den verbleibenden Raum abzudecken.
So berechnen Sie die IP-Bereichsdifferenz (A minus B)
- Geben Sie Bereich A ein -- den Basisbereich oder CIDR-Block (z.B.
10.0.0.0/8) - Geben Sie Bereich B ein -- den zu subtrahierenden Bereich (z.B.
10.1.0.0/16) - Das Tool berechnet A minus B -- alle Adressen in A, die nicht in B sind
- Überprüfen Sie die resultierenden CIDR-Blöcke, die A ohne den B-Anteil darstellen
Beispiele für Bereichsdifferenzen
Einen kleinen Block von einem großen Block subtrahieren
A: 10.0.0.0/8 (10.0.0.0 - 10.255.255.255)
B: 10.1.0.0/16 (10.1.0.0 - 10.1.255.255)
Result (A - B):
10.0.0.0/16 (10.0.0.0 - 10.0.255.255)
10.2.0.0/15 (10.2.0.0 - 10.3.255.255)
10.4.0.0/14 (10.4.0.0 - 10.7.255.255)
10.8.0.0/13 (10.8.0.0 - 10.15.255.255)
10.16.0.0/12 (10.16.0.0 - 10.31.255.255)
10.32.0.0/11 (10.32.0.0 - 10.63.255.255)
10.64.0.0/10 (10.64.0.0 - 10.127.255.255)
10.128.0.0/9 (10.128.0.0 - 10.255.255.255)
Das /8 minus ein /16 ergibt 8 CIDR-Blöcke, die alles im /8 abdecken, außer dem ausgeschlossenen /16.
Weitere häufige Szenarien
| Bereich A | Bereich B | Ergebnis | Beschreibung |
|---|---|---|---|
192.168.0.0/24 | 192.168.0.128/25 | 192.168.0.0/25 | Obere Hälfte entfernen |
192.168.0.0/24 | 192.168.0.0/25 | 192.168.0.128/25 | Untere Hälfte entfernen |
192.168.0.0/24 | 192.168.1.0/24 | 192.168.0.0/24 | Keine Überschneidung, A unverändert |
192.168.0.0/24 | 192.168.0.0/16 | Leer | B enthält A vollständig |
10.0.0.0/24 | 10.0.0.100/32 | Mehrere CIDRs für .0-.99 und .101-.255 | Einzelnen Host entfernen |
Einen einzelnen Host aus einem Subnetz entfernen
A: 10.0.0.0/24 (10.0.0.0 - 10.0.0.255)
B: 10.0.0.100/32 (10.0.0.100)
Result (A - B):
10.0.0.0/26 (10.0.0.0 - 10.0.0.63)
10.0.0.64/27 (10.0.0.64 - 10.0.0.95)
10.0.0.96/30 (10.0.0.96 - 10.0.0.99)
10.0.0.101/32 (10.0.0.101)
10.0.0.102/31 (10.0.0.102 - 10.0.0.103)
10.0.0.104/29 (10.0.0.104 - 10.0.0.111)
10.0.0.112/28 (10.0.0.112 - 10.0.0.127)
10.0.0.128/25 (10.0.0.128 - 10.0.0.255)
Das Entfernen eines einzelnen /32 aus einem /24 erzeugt ein "Loch", das mehrere CIDR-Blöcke erfordert, um die verbleibenden Adressen auszudrücken.
Wann Sie das Range-Differenz-Tool verwenden sollten
- Firewall-Regeln "alles erlauben außer" -- wenn Sie einen breiten Bereich erlauben, aber bestimmte Subnetze ausschließen müssen, berechnen Sie die Differenz, um die exakte CIDR-Liste für Ihre Regeln zu erhalten
- Adressraum-Inventar -- subtrahieren Sie zugewiesene Subnetze von einem übergeordneten Block, um zu sehen, was für neue Zuweisungen verfügbar bleibt
- Ausnahmebasierte Sicherheitsrichtlinien -- wenden Sie eine Richtlinie auf einen Netzwerkbereich an, abzüglich bekannter vertrauenswürdiger Hosts oder Management-Subnetze
- Split-Tunnel-VPN-Konfiguration -- leiten Sie den gesamten Unternehmensverkehr über das VPN, außer bestimmte Cloud-Service-IP-Bereiche
- Netzwerkmigration -- verfolgen Sie, welche Teile eines alten Adressbereichs migriert wurden und welche noch im Legacy-Netzwerk verbleiben
- DHCP-Ausschlussbereiche -- berechnen Sie die CIDR-Blöcke für die Zuweisung, wenn bestimmte Adressen innerhalb eines Subnetzes reserviert sind
Wie die Mengendifferenz für IP-Bereiche funktioniert
Die Bereichsdifferenz-Operation ist mathematisch äquivalent zu A AND (NOT B). Sie gibt Adressen zurück, die sowohl in A enthalten sind als auch gleichzeitig nicht in B.
Algorithmus-Schritte
- Wenn B sich überhaupt nicht mit A überschneidet, ist das Ergebnis einfach A (nichts zu subtrahieren)
- Wenn B A vollständig enthält, ist das Ergebnis leer (alles wird subtrahiert)
- Wenn B sich teilweise mit A überschneidet, wird A an den Grenzen von B aufgeteilt:
- Der Teil von A vor der Überschneidung bleibt erhalten
- Der Teil von A nach der Überschneidung bleibt erhalten
- Der überlappende Teil wird entfernt
- Die verbleibenden Teile werden in minimale CIDR-Notation umgewandelt
Warum das Ergebnis viele CIDR-Blöcke enthält
Wenn Sie einen Block aus der Mitte eines Bereichs entfernen, ist der verbleibende Adressraum auf beiden Seiten möglicherweise nicht an saubere CIDR-Grenzen ausgerichtet. Jede Seite muss als eine Reihe von CIDR-Blöcken abnehmender Größe dargestellt werden, die zusammen die Lücke zwischen der Grenze von A und der Grenze von B abdecken. Dies ist der gleiche Grund, warum beliebige IP-Bereiche oft mehrere CIDRs erfordern -- die binäre Ausrichtungsanforderung verhindert, dass ein einzelner Block einen beliebigen Teil des Adressraums abdeckt.
Visualisierung der Differenz
A: |==================================|
B: |==========|
A - B: |========| |==============|
^-- linker Teil ^-- rechter Teil
Jeder Teil (links und rechts) wird unabhängig in seine minimale Menge von CIDR-Blöcken umgewandelt.
Praktische Tipps zur Bereichsdifferenz
Wenn Sie "alles erlauben außer"-Firewall-Regeln erstellen, berechnen Sie immer zuerst die Differenz, um zu sehen, wie viele CIDR-Blöcke das Ergebnis enthält. Wenn das Entfernen eines Management-Subnetzes aus einem /16 15 CIDR-Blöcke erzeugt, könnten Sie entscheiden, dass die Bereitstellung von 15 einzelnen Regeln schlechter ist als eine Umstrukturierung Ihres Ansatzes -- vielleicht durch Verwendung einer breiteren Erlaubnisregel in Kombination mit einer höherprioren Ablehnungsregel für die Ausnahme. Viele Firewall-Plattformen verarbeiten Regeln der Reihe nach und stoppen beim ersten Treffer, sodass eine Ablehnungsregel vor einer Erlaubnisregel den gleichen Effekt mit nur zwei Einträgen statt fünfzehn erzielen kann.
Wenn Sie die Differenz für ein Adressraum-Inventar verwenden, denken Sie daran, dass das Ergebnis den verfügbaren Platz auf CIDR-Ebene zeigt, nicht unbedingt Platz, der praktisch nutzbar ist. Eine Lücke von 3 Adressen zwischen zwei Zuweisungen erscheint als drei /32-Blöcke in der Differenzausgabe, was mathematisch korrekt, aber nicht nützlich für die Zuweisung eines neuen Subnetzes ist. Suchen Sie nach den größeren Blöcken in der Ausgabe, wenn Sie neue Zuweisungen planen.
Die Reihenfolge der Operationen ist von großer Bedeutung. A - B und B - A erzeugen völlig unterschiedliche Ergebnisse. Wenn A größer als B ist und B innerhalb von A liegt, ergibt A - B A mit einem Loch. Aber B - A ergibt eine leere Menge, da alles in B auch in A ist und es somit nichts in B gibt, das nicht in A ist. Überprüfen Sie immer, welcher Bereich A (die Basis) und welcher B (die Subtraktion) ist.
Häufig gestellte Fragen
Ist die Bereichsdifferenz dasselbe wie ein CIDR-Ausschluss?
Sie sind funktional identisch. Das CIDR-Ausschluss-Tool ist darauf ausgelegt, mehrere Ausnahme-CIDRs von einem einzelnen übergeordneten Block zu subtrahieren, während die Bereichsdifferenz den paarweisen A-minus-B-Fall behandelt. Für die Subtraktion vieler Ausnahmen ist das Ausschluss-Tool praktischer.
Kann ich mehrere Differenzoperationen verketten?
Ja. Um mehrere Bereiche von A zu subtrahieren, berechnen Sie A - B1, subtrahieren dann B2 von diesem Ergebnis und so weiter. Alternativ können Sie das CIDR-Ausschluss-Tool verwenden, das mehrere Subtraktionen in einem Schritt verarbeitet.
Spielt die Reihenfolge eine Rolle? Ist A-B dasselbe wie B-A?
Nein, die Reihenfolge ist von großer Bedeutung. 10.0.0.0/8 - 10.1.0.0/16 entfernt ein kleines Stück aus einem großen Block. 10.1.0.0/16 - 10.0.0.0/8 entfernt alles, da B A vollständig enthält, was zu einer leeren Menge führt.
Warum erzeugt das Entfernen einer IP aus einem /24 so viele Blöcke?
Ein /24 hat 256 Adressen. Das Entfernen einer Adresse erzeugt 255 verbleibende Adressen, die nicht als einzelner CIDR-Block ausgedrückt werden können (255 ist keine Zweierpotenz). Das Tool muss den verbleibenden Raum mit den größtmöglichen ausgerichteten Blöcken abdecken, was bei einer mittleren Entfernung 8 Blöcke ergibt.
Was passiert, wenn sich A und B überhaupt nicht überschneiden?
Das Ergebnis ist einfach A unverändert. Da B keine gemeinsamen Adressen mit A hat, gibt es nichts zu subtrahieren, und der gesamte ursprüngliche Bereich bleibt erhalten.
Kann ich dies mit IPv6-Bereichen verwenden?
Ja. Der gleiche Differenzalgorithmus gilt für 128-Bit-IPv6-Adressen. Die Ergebnisse können aufgrund des größeren Adressraums mehr CIDR-Blöcke enthalten, aber die Logik ist identisch.
Verwandte Tools
- Range-Vereinigung - Überlappende IP-Bereiche zu einer einheitlichen Liste zusammenführen
- Range-Schnittmenge - Gemeinsame Adressen zwischen zwei IP-Bereichen finden
- CIDR-Ausschluss-Tool - Ausnahme-CIDRs von einem übergeordneten Block subtrahieren
- CIDR-Lückenfinder - Nicht zugewiesene Lücken innerhalb eines übergeordneten CIDR finden
- Nächstes verfügbares Subnetz finden - Das nächste verfügbare Subnetz innerhalb eines übergeordneten Blocks finden