Warum brauchen wir Subnetzmaske?

Da eine IPv4-Adresse bereits die Informationen des Netzwerks und des Hosts angibt, warum brauchen wir dann noch eine Subnetzmaske?

Das 1. Oktett gibt bereits die Netzwerkklasse an (1-127: A, 128-191: B, 192-223: C usw.). A, B oder C impliziert die Anzahl der Oktette für das Netzwerk (255.0.0.0, 255.255.0.0, 255.255.255.0), die automatisch angibt, wie viele Hosts für jede Netzwerkklasse zulässig sind.

Die IP gibt alle Informationen, die eine Subnetzmaske hat, und Mehr. Warum brauchen wir überhaupt eine Subnetzmaske? Wenn die Informationen, die ein Subnetz enthält, nicht vollständig eine Teilmenge davon innerhalb einer IP sind, was enthält es dann noch oder was macht das Subnetz zusätzlich, sodass wir es unabhängig angeben müssen?

 42
Author: KMC, 2012-02-27

9 answers

Wir benötigen eine Subnetzmaske für IPv4-Adressen, da die Adresse keine Informationen zur Netzwerkgröße enthält. Klassengrößen sind nicht die Netzwerkgrößen. In praktischen Netzwerken werden alle IPv4-Netzwerke in Subnetze aufgeteilt, die kleiner als die Klassengröße sind.

Zum Beispiel könnten Sie das Netzwerk der Klasse C 200.200.200.0/255.255.255.0 in zwei kleinere Netzwerke aufteilen (möglicherweise an separaten Standorten) 200.200.200.0 / 255.255.255.128 und 200.200.200.128/255.255.255.128 angenommen, keiner brauchte mehr als 126 Hosts. In Wirklichkeit erhalten die meisten Unternehmen nur genügend IPv4-Adressen für die Server, die sich im öffentlichen Internet befinden müssen. Ich habe persönlich Setups mit 32,16 und 8 Adressnetzwerken gesehen (das wären Masken von 255.255.255.224, 255.255.255.240 und 255.255.255.248)

IP-Netzwerke nur in Klassengrößenblöcken zu haben, war zu restriktiv, um die Anzahl der Netzwerke zu begrenzen, die zugelassen werden konnten - die 127 Klasse-A-Netzwerke, die die Hälfte des Speicherplatzes beanspruchten. Ganz zu schweigen davon, dass ein 24-Milliarden-Knotennetzwerk völlig unüberschaubar ist, stattdessen wurde 1993 Classless Inter-Domain Routing (CIDR) eingeführt, um die Aufteilung der Netzwerke zu ermöglichen.

Um klar zu sein, besteht der Zweck der Subnetzmaske darin, zu bestimmen, welche Hosts sich im lokalen Netzwerk befinden und welche sich außerhalb des Netzwerks befinden. Hosts können direkt mit Hosts im selben Netzwerk kommunizieren, müssen jedoch mit einem Router kommunizieren, um mit Hosts auf externen Netze.

 38
Author: shf301,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 03:14:59

Das 1. Oktett spezifiziert bereits die Netzwerkklasse (1-127: A, 128-191: B, 192-223: C etc.). A, B oder C impliziert die Anzahl der Oktette für das Netzwerk (255.0.0.0, 255.255.0.0, 255.255.255.0), die automatisch angibt, wie viele Hosts für jede Netzwerkklasse zulässig sind.

Richtig, aber wenn jemand dieses Netzwerk Subnetz würde, würden Sie die Subnetzmaske benötigen, um zu wissen, wie groß ein Subnetz Sie waren in. Ja, mit classful Adressierung, die Klasse sagt Ihnen die Größe der netzwerk und ermöglicht es Ihnen zu sagen, ob ein Host im selben Netzwerk wie Sie ist, aber wenn dieses Netzwerk ohne die Subnetzmaske subnettiert ist, wie würden Sie wissen, ob sich ein anderer Knoten im selben Subnetz wie Sie befindet?

Angenommen, Sie befinden sich in einem Ethernet-Netzwerk. Wir verwenden classful Adressierung mit Subnetz. Ihre IP-Adresse ist 1.2.3.4 und Sie möchten 1.3.1.1 erreichen. Verwenden Sie ARP, um diese Adresse zu erreichen? Nun, es hängt davon ab, ob sich 1.2.3.4 und 1.3.1.1 im selben Subnetz befinden. Auch wenn Sie in der gleichen netzwerk, wenn es in verschiedenen Subnetzen, muss ein Router verwendet werden. Wenn sie sich im selben Subnetz befinden, sollte ARP verwendet werden.

Sie benötigen also die Subnetzmaske, wenn Subnetze verwendet werden, auch bei Classful-Netzwerken.

Ich denke, du verwechselst Subnetze mit CIDR. Ohne CIDR benötigen Sie auch bei Subnetzen keine Subnetzmaske zwischen administrativen Regionen. Aber Sie brauchen es immer noch im Netzwerk!

 22
Author: David Schwartz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 03:39:27

Eine Subnetzmaske wird verwendet, um bitweise Operationen an einer IP-Adresse in Verbindung mit einer Netzwerkadresse durchzuführen. Wenn mein Speicher mir gut dient, nehmen Sie eine IP-Adresse und machen ein bisschen weise und darauf und die Subnetzmaske für ein bestimmtes Netzwerk. Wenn das Ergebnis der Netzwerkadresse entspricht, befindet sich die IP-Adresse in diesem bestimmten Netzwerk. Router, die Routing-Tabellen mit Netzwerkadressen und Subnetzmasken haben, können einfache binäre Mathematik verwenden (die sehr schnell ist, wenn nicht die schnellste für Computer), um finden Sie heraus, aus welcher Schnittstelle ein Paket punt werden soll.

 8
Author: Adrian Thompson Phillips,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 08:52:41

" Das 1. Oktett spezifiziert bereits die Netzwerkklasse (1-127: A, 128-191: B, 192-223: C etc.)."

Es gibt heute nicht mehr viele Protokolle, die dies respektieren (siehe @ Fiasco Labs Kommentar-RIP ist das einzige, an das ich denken kann). Also, diese Aussage in Ihrer Frage:

Die IP gibt alle Informationen, die eine Subnetzmaske hat, und vieles mehr.

Gilt nicht für die große Mehrheit der heute im Internet verwendeten Protokolle.

Wenn Sie haben eine Reihe von Computern, die miteinander verbunden sind und immer nur miteinander kommunizieren, ohne dass jemals ein Router beteiligt ist, wird die Subnetzmaske nicht wirklich benötigt (obwohl moderne TCP/IP-Stacks darauf bestehen, dass Sie einen angeben).

Router definieren die Kanten von (Sub -) Netzwerken. Alles, was einen Router durchlaufen muss, befindet sich in einem anderen Netzwerk - und umgekehrt: Alles, was in ein anderes Netzwerk gehen muss, muss einen Router durchlaufen.

Die Subnetzmaske ist, wie alle Maschinen erkennen können gibt an, ob der Datenverkehr für das aktuelle Netzwerk ist oder an einen Router gesendet werden muss, um zu seinem Ziel zu gelangen. Der TCP / IP-Stack Ihres Computers sendet seinen Datenverkehr direkt an das Ziel, wenn er sich innerhalb der Subnetzmaske befindet, andernfalls konsultiert er seine Routingtabelle, und die übliche Situation besteht darin, dass anderer Datenverkehr an das Standardgateway gesendet wird.

 3
Author: LawrenceC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 11:04:12

Mit Ausnahme von @Adrians Antwort bin ich mir nicht sicher, ob eine davon tatsächlich erwähnt, WARUM wir die Maske anstelle einer einfacheren Lösung verwenden-und er hat nur die Tatsache angesprochen, dass die Maskierung SCHNELL ist, ich meine, warum nicht einfach angeben, dass Sie interessiert sind Adressen 192.168.1.200-192.168.1.220, oder warum nicht einfach Namen wie *.my.address.com benennen Sie dazu einfach jeden Computer, anstatt Zahlen zuzuweisen?

Sie könnten Zahlen jetzt bis zu einem gewissen Grad vollständig aus dem Routing entfernen, die meisten PCs könnten die Art des gesendeten Datenverkehrs verarbeiten, aber es gibt immer noch ein Problem auf den größeren Geräten.

Filterung wie diese geschieht die ganze Zeit, und es passiert viel. Die Maskierung kann in Hardware erfolgen ,wodurch die Notwendigkeit, Zeit mit uninteressanten Paketen zu verschwenden (die früher 99% der Pakete waren, die Sie durch Ihr Kabel geleitet hätten, jetzt mit Switched Hubs sollten Sie keine sehen, die nicht an Ihren Computer gerichtet sind, was wiederum weniger macht relevant).

Für eine Lösung, die auf der Hardware so einfach ist, ist sie auch sehr flexibel. Die gleiche Hardware kann ein ganzes Klasse-A-Netzwerk (10.x. x. x) oder nur eine oder zwei IP-Adressen mit derselben Implementierung.

Dies ist kein Ersatz für eine der anderen Antworten, nur ein wenig mehr Informationen.

 3
Author: Bill K,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 18:08:27

Das 1. Oktett spezifiziert bereits die Netzwerkklasse (1-127: A, 128-191: B, 192-223: C, etc.). A, B oder C impliziert die Anzahl der Oktette für das Netzwerk (jeweils 255.0.0.0, 255.255.0.0, 255.255.255.0), die automatisch sagt Ihnen, wie viele Hosts für jede Klasse von erlaubt ist Netzwerk.

Während dies historisch wahr war. Das stimmt seit Jahren nicht mehr. Vor Jahren 24.0.0.0 / 8 wurde in Stücken an verschiedene ISPs ausgegeben. (Ich glaube, das war hauptsächlich für Kabelanbieter.)

Selbst wenn dies für Netzwerkzuweisungen zutrifft, waren Netzmasken für interne Netzwerke erforderlich, um das Routing zu vereinfachen. Effizientes Routing eines Netzwerks wie 10.0.0.0 / 8 erfordert die Unterteilung in kleinere Netzwerke. Dies kann ein einfaches Schema mit den Unterteilungen /16 und / 8 sein, ist jedoch eher eine klassenlose Unterteilung. Größere Subnetze ermöglichen eine effizientere Nutzung des Adressraums (über 99% von a / 24 sind für Geräte verfügbar, während nur 50% von a / 30 verfügbar sind.

Das lokale Netzwerk ist geroutet direkt vom Gerät, während andere Adressen über einen Router übergeben werden. Hosts mit mehreren Schnittstellen können mit Netzwerken unterschiedlicher Größe verbunden werden.

Für Subnetze ohne Multi-Homed-Hosts enthält a / 24 mehr Adressen als erforderlich. Die meisten Router, mit denen ich gearbeitet habe, haben 24 -, 48-oder 96-Ports und können mit /27 -, /26-oder /25-Subnetzen unterstützt werden. Dies ermöglicht einige zusätzliche Adressen für DCHP und / oder Multi-Homing. Organisationen können sich auf die Zuweisung von Teilnetzen von /24 oder / 23 für Routing.

Da eine IPv4-Adresse bereits die Informationen des Netzwerks und des Hosts angibt, warum brauchen wir dann immer noch eine Subnetzmaske?

Viele Geräte verwenden eine Standardnetzmaske von / 24, die in vielen Fällen der Größe des dem Router zugewiesenen lokalen Subnetzes (localnet) entspricht. Dies gilt gleichermaßen für die Klassen A, B und C. Sofern die Subnetzgröße nicht mit dem Standard-Subnetz übereinstimmt, ist eine Netzmaske erforderlich.

Wenn Adressen im CIDR-Format angegeben werden, die Netzmaske und das Netzwerk können aus der Adresse berechnet werden. Wenn nicht, kann das Netzwerk aus der Adresse und der Netzmaske berechnet werden. Es ist nicht möglich, die Netzmaske aus Adresse und Netzwerk zuverlässig zu berechnen.

Durch die Bereitstellung einer Gateway-Adresse (Router-Adresse) für ein Subnetz kann die Standardroute so konfiguriert werden, dass das Routing an Adressen außerhalb des Subnetzes möglich ist.

 3
Author: BillThor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-28 05:46:17

Es gibt bereits viele Dinge, die in anderen Antworten erklärt werden, aber nicht die Hauptsache.

Sie möchten wissen, ob die IP-Adresse Ihnen bereits die vollständige Adresse des Empfängers geben kann und warum Subnetzmasken existieren. Sie wissen, in großen Organisationen benötigen Abteilungen manchmal separate Netzwerke, sodass sich Buchhalter beispielsweise in einem anderen Subnetz befinden und nicht auf die inneren IP-Adressen der Marketingabteilung zugreifen können. So kann beispielsweise ein Mitarbeiter mit der IP 192.168.10.3 nicht auf die drucker bei 192.168.15.76, weil es in einem anderen Subnetz wäre.

 1
Author: Luka Ramishvili,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-27 09:58:33

Bis heute gibt es noch keine Antwort darauf, warum Subnetze (im Gegensatz zu CIDR) noch verwendet werden. Es gibt zwei Probleme mit Subnetzmasken:

  1. Sie können nicht zusammenhängende Masken angeben, die ungültig sind.
  2. (gilt auch für CIDR) Sie führen mögliche Überlappungen ein - ISPs könnten dieselbe IP-Adresse als Teil verschiedener Subnetze ausgeben. z.B.

    Kunde A: 22.132.124.121 Subnetzmaske 255.255.255.0
    Kunde B: 22.132.114.55 Subnetzmaske 255.255.0.0

Was nicht sofort sichtbar ist, wie es sein sollte.

Https://blog.certskills.com/ccent/vlsmo_01_01/

 1
Author: LogicBreaker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-08-25 13:01:09

Noramally, subnet mask arbeitet als Indikator für die folgenden Subnetzwerke. normalerweise enthält ein Netzwerk mehrere Subnetze und die Subnetzmaske ist der Weg, den der Router verwendet, um Datenverkehr an das bestimmte Ziel zu liefern (in jedem Subnetz mithilfe der Subnetzmaske) dieser Link enthält eine Einführung in Subnetzmasken

 0
Author: Salah Amean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-03-23 08:24:51