Frage Wie schlimm ist die Erschöpfung der IPv4-Adressen wirklich?


Seit Jahren schreibt die Presse über das Problem, dass es nur noch wenige IPv4-Adressen gibt. Auf der anderen Seite benutze ich eine Server-Hosting-Firma, die gerne öffentliche IPv4-Adressen für einen kleinen Geldbetrag ausgibt. Und meine private Internetverbindung kommt mit einer öffentlichen IPv4-Adresse.

Wie ist das möglich? Ist das Problem so schlimm, wie die Presse uns glauben machen will?


161
2018-01-28 14:01


Ursprung


Einige Unternehmen haben immer noch viele IPv4-Adressen zur Hand. Andere haben sehr wenig. Ich muss sehr genau überlegen, ob ich eine IPv4-Adresse verwenden soll. Infolgedessen habe ich ziemlich viele nur IPv6-Maschinen. - Michael Hampton♦
Es gibt Ihnen auch einen Einblick in die Menge an Schmerzen, die ISPs bereit sind, andere Leute dazu zu bringen, einfach IPv6 zu implementieren. - immibis
Ich würde es nicht nennen böse, aber es ist sicherlich ein Schmerz. Das sagte am meisten Verbraucher wahrscheinlich wäre es egal, sie sind hinter einem Nat, Annahme von Facebook und WhatsApp Arbeit ._. - Journeyman Geek
@JourneymanGeek Nun, Durchschnittsverbraucher kümmern sich nicht wirklich um alles, was sie nicht verstehen. Es gibt zum Beispiel Ideen für verteilte soziale Medien (weil das Zensieren sehr schwierig macht), aber bis dahin interessiert sich niemand für solche Dinge nach dem sie haben den Boden abgehoben, was sie wegen NAT nicht können. Ich wage zu behaupten, dass NAT einer der Gründe dafür ist, dass wir ein zentralisiertes Web haben, weil es im Grunde unmöglich ist, eine eigene Website zu hosten, ohne jemanden zu bezahlen. - immibis
Wie @Azendale hervorhob, ist das Hosting von Game-Servern sehr groß. Warum kann ich nicht einfach minecraft_server.exe ausführen und meinen Freunden meine Adresse geben? Wegen NAT. "Verbraucher" wollen sicherlich manchmal Spielserver betreiben. - immibis


Antworten:


Es ist sehr schlimm. Hier ist eine Liste von Beispielen, die ich aus erster Hand mit ISPs von Endverbrauchern gemacht habe, um den Mangel an IPv4-Adressen zu bekämpfen:

  • Wiederholtes Mischen von IPv4-Blöcken zwischen Städten, die zu kurzen Ausfällen und Verbindungs-Resets für Kunden führen.
  • Verkürzung DHCP Lease-Zeiten von Tagen bis Minuten.
  • Erlaube den Benutzern zu wählen, wenn sie wollen Netzwerkadressübersetzung (NAT) auf dem Customer Premise Equipment (CPE) oder nicht, schalten Sie es dann rückwirkend für jeden auf.
  • Aktivieren von NAT in CPE für Kunden, die bereits die Möglichkeit genutzt haben, NAT zu deaktivieren.
  • Reduzieren der Obergrenze für die Anzahl der gleichzeitig aktiven MAC-Adressen (Media Access Control) durch CPE erzwungen.
  • Bereitstellen Carrier-Grade-NAT (CGN) für Kunden, die bei der Anmeldung eine echte IP-Adresse hatten.

All dies reduziert die Qualität des Produkts, das der ISP an seine Kunden verkauft. Die einzige vernünftige Erklärung dafür, warum sie dies ihren Kunden antun würden, ist der Mangel an IPv4-Adressen.

Der Mangel an IPv4-Adressen hat zu einer Fragmentierung des Adressraums geführt, die mehrere Mängel aufweist:

  • Verwaltungsaufwand, der nicht nur Zeit und Geld kostet, sondern auch fehleranfällig ist und zu Ausfällen geführt hat.
  • Große Nutzung von Inhaltsadressierbarer Speicher (CAM) Kapazität auf Backbone - Routern, die vor ein paar Jahren zu einem führen signifikanter Ausfall über mehrere ISPs wenn es die Grenze eines bestimmten populären Modells von Routern überschritten hat.

Ohne NAT könnten wir heute mit den 3700 Millionen routbaren IPv4-Adressen nicht durchkommen. Aber NAT ist eine spröde Lösung, die Ihnen eine weniger zuverlässige Verbindung und Probleme gibt, die schwer zu debuggen sind. Je mehr Schichten von NAT, desto schlimmer wird es sein. Zwei Jahrzehnte harter Arbeit haben dazu geführt, dass eine einzelne NAT-Schicht größtenteils funktioniert, aber wir haben bereits den Punkt überschritten, an dem eine einzelne NAT-Schicht ausreichte, um den Mangel an IPv4-Adressen zu umgehen.


174
2018-01-28 14:31



Eine Sache, die hinzugefügt werden muss, ist, dass NAT auch dazu führt, dass böswillige Benutzer normale Benutzer beeinflussen und IP im Allgemeinen unzuverlässig machen als einen Mechanismus zur Benutzerunterscheidung. Zum Beispiel Wikipedia blockt fast jeden Qatari-Benutzer aufgrund von Vandalismus eines oder einiger Benutzer. - IllusiveBrian
@IllusiveBrian macht einen gültigen Punkt. Ich habe Ad-Targeting-Software übernommen, die IP-Adressen als primäre ID verwendet hat. Dies ist heutzutage nicht annähernd ausreichend und musste umfangreich modifiziert werden, um es zuverlässig zu halten. Indien und Griechenland scheinen zwei der am stärksten betroffenen Länder zu sein. Ich kann sehen, dass eine Anzeige pro Tag mehr als 100 Mal vom selben IPv4-Gerät ausgelöst wird, aber jeder Treffer kann ein anderer Nutzer sein, der durch andere Tracking-Methoden bestimmt wird - Darren H
@DmitriySintsov nicht mehr als eine einfache Stateful Firewall würde. Wenn ein Edge-Gerät NAT ausführen kann, kann es eine Stateful-Firewalling durchführen. - mfinni
@DarrenH "Ad-Targeting-Software, die IP-Adressen als primäre Kennung verwendet ... und musste umfangreich geändert werden, um es zuverlässig zu halten." Nun, dieser Grund allein reicht aus, NAT zu halten. - Andy
@DarrenHein nur ein Kommentar darüber, dass du Software nicht magst, egal welchen Ton du fühlst, ist in deinem eigenen Kopf. - Andy


Bevor wir begannen, keine IPv4-Adressen mehr zu haben, haben wir NAT (weitgehend) nicht verwendet. Jeder mit dem Internet verbundene Computer hätte seine eigene weltweit eindeutige Adresse. Als NAT eingeführt wurde, sollte es von den ISP-Kunden 1 reale Adresse pro Gerät, die der Kunde verwendet / besaß, um 1 Kunde 1 reale Adresse geben. Das hat das Problem für eine Weile (Jahre) behoben, als wir eigentlich auf IPv6 umsteigen sollten. Anstatt auf IPv6 zu wechseln, warteten (meistens) alle darauf, dass alle anderen wechseln und so (meistens) niemand IPv6 herausbrachte. Nun haben wir dasselbe Problem erneut, aber dieses Mal wird eine zweite NAT-Schicht (CGN) implementiert, so dass ISPs 1 reale Adresse zwischen mehreren Kunden teilen können.

Erschöpfung der IP-Adresse ist keine große Sache, wenn NAT nicht schrecklich ist, auch wenn der Endbenutzer keine Kontrolle darüber hat (Carrier Grade NAT oder CGN).

Aber ich würde argumentieren, dass NAT schrecklich ist, insbesondere in dem Fall, in dem der Endbenutzer keine Kontrolle darüber hat. Und (als eine Person, deren Job Network Engineering / Administration ist, aber einen Software-Engineering-Abschluss hat), würde ich argumentieren, dass Netzwerkadministratoren durch die Bereitstellung von NAT anstelle von IPv6 das Gewicht der Adressabschöpfung von ihrem Feld auf Endnutzer verlagert haben und Anwendungsentwickler.

Also (meiner Meinung nach), warum ist NAT eine schreckliche, böse Sache, die vermieden werden sollte?

Mal sehen, ob ich es gerecht erklären kann, was es bricht (und welche Probleme es verursacht, an die wir uns so gewöhnt haben, dass wir nicht einmal merken, dass es besser sein könnte):

  • Netzwerk-Layer-Unabhängigkeit
  • Peer-zu-Peer-Verbindungen
  • Konsistente Benennung und Ort der Ressourcen
  • Optimales Routing des Datenverkehrs, Hosts, die ihre tatsächliche Adresse kennen
  • Verfolgen der Quelle von bösartigem Datenverkehr
  • Netzwerkprotokolle, die Daten und Kontrolle in separate Verbindungen trennen

Mal sehen, ob ich jeden dieser Punkte erklären kann.

Netzwerk-Layer-Unabhängigkeit

ISPs sollen Schicht-3-Pakete einfach weitergeben und sich nicht darum kümmern, was in den darüber liegenden Schichten ist. Ob Sie TCP, UDP oder etwas Besseres / Exotischeres weitergeben (SCTP vielleicht? Oder sogar ein anderes Protokoll, das besser ist als TCP / UDP, aber wegen fehlender NAT-Unterstützung unklar ist), sollte Ihr ISP nicht tun Pflege; es soll alles nur wie Daten für sie aussehen.

Aber es ist nicht - nicht, wenn sie die "zweite Welle" von NAT, "Carrier Grade" NAT implementieren. Dann müssen sie die Layer-4-Protokolle, die Sie verwenden möchten, unbedingt betrachten und unterstützen. Im Moment bedeutet das praktisch, dass Sie nur TCP und UDP verwenden können. Andere Protokolle würden entweder einfach blockiert / gelöscht werden (in der überwiegenden Mehrheit der Fälle meiner Erfahrung nach) oder einfach an den letzten Host "innerhalb" der NAT weitergeleitet, die dieses Protokoll verwendet haben (ich habe 1 Implementierung gesehen, die dies tut). Selbst die Weiterleitung an den letzten Host, der dieses Protokoll verwendet hat, ist kein wirklicher Fix - sobald zwei Hosts es benutzen, bricht es ab.

Ich stelle mir vor, es gibt einige Ersatzprotokolle für TCP & UDP da draußen, die gerade wegen dieses Problems nicht getestet und unbenutzt sind. Versteh mich nicht falsch, TCP & UDP waren beeindruckend gut gestaltet und es ist erstaunlich, wie beide auf die Art und Weise, wie wir das Internet heute nutzen, skalieren konnten. Aber wer weiß, was wir verpasst haben? Ich habe über SCTP gelesen und es klingt gut, aber nie benutzt, weil es wegen NAT unpraktisch war.

Peer-to-Peer-Verbindungen

Das ist ein großer. Eigentlich das Größte meiner Meinung nach. Wenn Sie zwei Endbenutzer haben, die beide hinter ihrem eigenen NAT sind, unabhängig davon, welcher der beiden versucht, eine Verbindung herzustellen, wird der NAT des anderen Benutzers ihr Paket löschen und die Verbindung wird nicht erfolgreich sein.

Dies betrifft Spiele, Voice- / Video-Chat (wie Skype), Hosting Ihrer eigenen Server usw.

Es gibt Problemumgehungen. Das Problem besteht darin, dass diese Problemumgehungen entweder die Entwicklerzeit, die Endbenutzerzeit und die Kosten für die Serviceinfrastruktur kosten. Und sie sind nicht narrensicher und brechen manchmal. (Lesen Sie die Kommentare anderer Benutzer zum Ausfall von Skype.)

Eine Problemumgehung ist die Portweiterleitung, bei der Sie das NAT-Gerät so programmieren, dass ein bestimmter eingehender Port an einen bestimmten Computer hinter dem NAT-Gerät weitergeleitet wird. Es gibt ganze Websites gewidmet, wie dies für alle verschiedenen NAT-Geräte gibt, die es gibt. Sehen https://portforward.com/. Dies kostet typischerweise Endbenutzerzeit und Frustration.

Eine weitere Problemumgehung ist das Hinzufügen von Unterstützung für Anwendungen wie das Lochen von Löchern und das Beibehalten der Serverinfrastruktur, die nicht hinter einer NAT-Umgebung steht, um zwei NAT-Clients einzuführen. Dies kostet normalerweise Entwicklungszeit und versetzt die Entwickler in die Lage, die Serverinfrastruktur möglicherweise dort aufrechtzuerhalten, wo sie zuvor nicht erforderlich gewesen wäre.

(Denken Sie daran, was ich über die Bereitstellung von NAT anstelle von IPv6 gesagt habe, um das Gewicht des Problems von Netzwerkadministratoren auf Endbenutzer und Anwendungsentwickler zu verlagern?)

Konsistente Benennung / Ort der Netzwerkressourcen

Da ein anderer Adressraum im Inneren eines NATs verwendet wird, hat jeder Dienst, der von einem Gerät innerhalb eines NAT angeboten wird, mehrere Adressen, um darauf zuzugreifen, und der richtige zu verwendende hängt davon ab, woher der Client darauf zugreift . (Dies ist immer noch ein Problem, auch wenn Sie die Port-Weiterleitung funktionieren lassen.)

Wenn Sie einen Webserver in einem NAT haben, sagen Sie Port 192.168.0.23 Port 80, und Ihr NAT-Gerät (Router / Gateway) hat eine externe Adresse von 35.72.216.228, und Sie Port-Weiterleitung für TCP-Port 80, jetzt Ihre Der Webserver kann entweder über Port 80 oder Port 35.72.216.228 von 192.168.0.23 Port 80 erreicht werden. Der Port, den Sie verwenden sollten, hängt davon ab, ob Sie sich innerhalb oder außerhalb des NAT befinden. Wenn Sie sich außerhalb des NATs befinden und die Adresse 192.168.0.23 verwenden, gelangen Sie nicht dorthin, wo Sie es erwarten. Wenn Sie sich innerhalb des NAT befinden und die externe Adresse 35.72.216.228 verwenden, werden Sie könnte bekommen, wo Sie wollen, wenn Ihre NAT-Implementierung eine fortgeschrittene ist, die Haarnadel unterstützt, aber dann wird der Webserver, der Ihre Anfrage bedient, die Anfrage als von Ihrem NAT-Gerät kommend sehen. Dies bedeutet, dass der gesamte Datenverkehr durch das NAT-Gerät geleitet werden muss, auch wenn es einen kürzeren Pfad im Netzwerk hinter dem NAT gibt. Dies bedeutet, dass Protokolle auf dem Webserver viel weniger nützlich sind, weil alle das NAT-Gerät als Quelle angeben die Verbindung. Wenn Ihre NAT-Implementierung die Haarnadel nicht unterstützt, werden Sie nicht dorthin gelangen, wo Sie erwartet haben.

Und dieses Problem wird schlimmer, sobald Sie DNS verwenden. Wenn Sie wollen, dass alles für etwas funktioniert, das hinter NAT gehostet wird, wollen Sie plötzlich verschiedene Antworten auf die Adresse des in einem NAT gehosteten Dienstes geben, basierend darauf, wer fragt (AKA Split Horizon DNS, IIRC). Jawohl.

Und das alles unter der Annahme, dass Sie jemanden haben, der sich über Port-Forwarding und Hairpin-NAT und Split-Horizon-DNS auskennt. Was ist mit Endnutzern? Wie hoch sind ihre Chancen, dass sie alles richtig einrichten, wenn sie einen Consumer-Router und eine IP-Sicherheitskamera kaufen und wollen, dass sie "einfach funktioniert"?

Und das führt mich zu:

Optimales Routing des Datenverkehrs, Hosts, die ihre tatsächliche Adresse kennen

Wie wir gesehen haben, fließt der NAT-Datenverkehr auch bei fortgeschrittener Haarnadel nicht immer über den optimalen Pfad. Das ist selbst dann der Fall, wenn ein sachkundiger Administrator einen Server einrichtet und über ein Hairpin-NAT verfügt. (Zugegeben, Split-Horizon-DNS kann zu einem optimalen Routing des internen Datenverkehrs in den Händen eines Netzwerkadministrators führen.)

Was passiert, wenn ein Anwendungsentwickler ein Programm wie Dropbox erstellt und an Endbenutzer verteilt, die nicht auf die Konfiguration von Netzwerkgeräten spezialisiert sind? Was passiert konkret, wenn ich eine 4-GB-Datei in meine Freigabedatei lege und dann versuche, auf dem nächsten Computer darauf zuzugreifen? Wird es direkt zwischen den Computern übertragen oder muss ich warten, bis es über eine langsame WAN-Verbindung auf einen Cloud-Server hochgeladen wird, und ein zweites Mal warten, bis es über dieselbe langsame WAN-Verbindung heruntergeladen wurde?

Für eine naive Implementierung würde es hochgeladen und dann heruntergeladen werden, wobei die Server-Infrastruktur von Dropbox verwendet wird, die nicht hinter einem NAT als Vermittler steht. Aber wenn die beiden Maschinen nur erkennen könnten, dass sie sich im selben Netzwerk befinden, könnten sie die Datei einfach viel schneller übertragen. Für unseren ersten, weniger naiven Implementierungsversuch könnten wir das Betriebssystem fragen, welche IP (v4) -Adressen die Maschine hat und dann diese gegen andere Maschinen prüfen, die im selben Dropbox-Konto registriert sind. Wenn es im selben Bereich wie wir ist, einfach die Datei übertragen. Das könnte in vielen Fällen funktionieren. Aber selbst dann gibt es ein Problem: NAT funktioniert nur, weil wir Adressen wiederverwenden können. Was passiert also, wenn die 192.168.0.23-Adresse und die 192.168.0.42-Adresse, die im selben Dropbox-Konto registriert sind, sich tatsächlich in verschiedenen Netzwerken befinden (wie Ihr Heimnetzwerk und Ihr Arbeitsnetzwerk)? Jetzt müssen Sie nicht mehr die Dropbox-Server-Infrastruktur verwenden, um zu vermitteln. (Am Ende versuchte Dropbox, das Problem zu lösen, indem jeder Dropbox-Client im lokalen Netzwerk in der Hoffnung, andere Clients zu finden, übertragen wurde. Aber diese Broadcasts passieren keine Router, die hinter dem NAT liegen, was bedeutet, dass es keine vollständige Lösung ist , besonders im Fall von CGN.)

Statische IPs

Da der erste Mangel (und die Welle von NAT) passierten, wenn viele Verbraucherverbindungen nicht immer auf Verbindungen waren (wie Einwahl), konnten ISPs ihre Adressen besser nutzen, indem sie nur öffentliche / externe IP-Adressen zuordneten, als Sie tatsächlich verbunden waren. Das bedeutete, dass du, wenn du dich verbunden hast, die Adresse bekommen hast, die dir zur Verfügung stand, anstatt immer dieselbe zu bekommen. Das macht es viel schwieriger, den eigenen Server zu betreiben, und es macht die Entwicklung von Peer-to-Peer-Anwendungen schwieriger, weil sie sich mit Gleichaltrigen befassen müssen, anstatt sich an festen Adressen zu befinden.

Verschleierung der Quelle von bösartigem Verkehr

Da NAT ausgehende Verbindungen so umschreibt, als ob sie vom NAT-Gerät selbst stammen, wird das gesamte Verhalten, ob gut oder schlecht, in eine externe IP-Adresse gerollt. Ich habe kein NAT-Gerät gesehen, das standardmäßig alle ausgehenden Verbindungen protokolliert. Dies bedeutet, dass die Quelle von schädlichem Datenverkehr in der Vergangenheit standardmäßig nur auf das durchgelaufene NAT-Gerät zurückzuführen ist. Während die meisten Geräte der Enterprise- oder Carrier-Klasse so konfiguriert werden können, dass sie jede ausgehende Verbindung protokollieren, habe ich keine Consumer-Router gesehen, die dies tun. Ich denke sicherlich, dass es interessant sein wird zu sehen, ob (und für wie lange) ISPs ein Protokoll über alle TCP- und UDP-Verbindungen führen werden, die durch CGNs hergestellt werden, wenn sie diese ausrollen. Solche Aufzeichnungen wären erforderlich, um Missbrauchsbeschwerden und DMCA-Beschwerden zu behandeln.

Manche Leute denken, dass NAT die Sicherheit erhöht. Wenn dies der Fall ist, geschieht dies durch Dunkelheit. Der standardmäßige Ausfall des eingehenden Datenverkehrs, den NAT zwingend vorschreibt, ist derselbe wie bei einer zustandsbehafteten Firewall. Es ist mein Verständnis, dass jede Hardware, die in der Lage ist, das für NAT erforderliche Verbindungs-Tracking durchzuführen, in der Lage sein sollte, eine Stateful-Firewall auszuführen, so dass NAT dort keine Punkte verdient.

Protokolle, die eine zweite Verbindung verwenden

Protokolle wie FTP und SIP (VoIP) neigen dazu, separate Verbindungen für die Kontrolle und den tatsächlichen Dateninhalt zu verwenden. Jedes Protokoll, das dies tut, muss eine Hilfssoftware namens ALG (Application Layer Gateway) auf jedem NAT-Gerät haben, das es durchläuft, oder das Problem mit einer Art Mediator oder Lochung umgehen. Meiner Erfahrung nach werden ALGs selten aktualisiert, wenn sie jemals aktualisiert wurden, und sie sind die Ursache von mindestens ein paar Problemen, die ich mit SIP zu tun habe. Jedes Mal, wenn ich jemanden höre, dass VoIP für sie nicht funktioniert, weil Audio nur in einer Richtung funktionierte, vermute ich sofort, dass irgendwo ein NAT-Gateway UDP-Pakete fallen lässt, damit er nicht herausfinden kann, was er tun soll.

Zusammenfassend neigt NAT dazu, zu brechen:

  • alternative Protokolle zu TCP oder UDP
  • Peer-to-Peer-Systeme
  • Zugriff auf etwas, das hinter dem NAT gehostet wird
  • Dinge wie SIP und FTP. ALGs, um dies zu umgehen, verursachen heute immer noch zufällige und seltsame Probleme, besonders bei SIP.

Im Kern ist der geschichtete Ansatz, den der Netzwerk-Stack annimmt, relativ einfach und elegant. Versuchen Sie, es jemandem zu erklären, der neu im Networking ist, und sie nehmen unweigerlich an, dass ihr Heimnetzwerk wahrscheinlich ein gutes, einfaches Netzwerk ist, das sie zu verstehen versuchen. Ich habe diesen Hinweis in einigen Fällen auf einige ziemlich interessante (übermäßig komplizierte) Ideen gesehen, wie Routing aufgrund von Verwechslungen zwischen externen und internen Adressen funktioniert.

Ich vermute, dass ohne NAT, VoIP allgegenwärtig und integriert in das PSTN wäre, und dass Anrufe von einem Handy oder Computer kostenlos wäre (außer für das Internet, das Sie bereits bezahlt haben). Nach allem, warum sollte ich für Telefon bezahlen, wenn Sie und ich nur einen 64K VoIP-Stream öffnen können und es funktioniert genauso gut wie das PSTN? Es scheint, als ob heute die Nummer 1 bei der Bereitstellung von VoIP NAT-Geräte durchläuft.

Ich vermute, dass wir normalerweise nicht erkennen, wie viel einfacher viele Dinge wären, wenn wir die Ende-zu-Ende-Konnektivität hätten, die NAT brach. Die Leute mailen immer noch (oder Dropbox) selbst Dateien, weil das Kernproblem, einen Mediator zu benötigen, wenn zwei Clients hinter NAT sind.


129
2018-01-29 06:18



@supercat IPv6-Adressen sind global einzigartig, aber nicht flach (um das Routing zu unterstützen, das hierarchisch sein muss). Scheint mir, dass, wenn wir wollen, dass zwei mit dem Internet verbundene Hosts theoretisch kommunizieren können, global eindeutige Adressen in irgendeiner Form notwendig sind. - Jakob
@supercat Es ist leider ein hartnäckiger Mythos, dass IPv6 immer noch nicht genug Platz für alle hat. Du könntest jedem auf der Erde eine / 48 geben und hast immer noch viel Platz übrig. Um die derzeit zugewiesenen auszuschöpfen 2000::/3 Sie müssten diese Übung mehr als 4.000 Mal wiederholen! oder gib jedem eine / 34. Aber a / 48 ist gut genug für praktisch alle, und diejenigen, die mehr brauchen, können es leicht bekommen. Selbst wenn das nicht genug wäre, gibt es immer noch 4000::/3, 6000::/3usw., verfügbar. Wir haben viel Platz; Es ist Zeit, es zu benutzen. Siehe auch RFC 6177. - Michael Hampton♦
@immibis Du scheinst etwas verpasst zu haben. Organisationen sind nicht darauf beschränkt, entweder a / 48 oder a / 32 zu erhalten. Sie können praktisch jede Größe Block bekommen. Es könnte ein / 44 oder ein / 40 oder / 39 oder / 47 oder was auch immer sein. Sie sollten auch RFC 6177 lesen. - Michael Hampton♦
Leider haben viele Leute angefangen, NAT als eine miese Form der Sicherheit zu verwenden und viele Geräte wie Chromecasts und IoT-Geräte gehen davon aus, dass jedes Gerät, das eine Verbindung herstellen kann, ein vertrauenswürdiges Gerät ist auch und einige habe ich gesehen haben keine Möglichkeit, dies zu deaktivieren, nur die normale Port-Weiterleitung. - Qwertie
... Ok ich hasse NAT jetzt; Wie wechsle ich zu IPv6? - Adam Barnes


Ein großes Symptom der Erschöpfung von IPv4, das ich in anderen Antworten nicht erwähnt habe, ist das einige Mobilfunkanbieter IPv6 gestartet - nur vor einigen Jahren. Es besteht die Möglichkeit, dass Sie IPv6 seit Jahren verwenden und es nicht einmal wussten. Mobile Provider sind neuer im Internet-Spiel und haben nicht unbedingt riesige, bereits existierende IPv4-Zuweisungen. Sie benötigen außerdem mehr Adressen als Kabel / DSL / Glasfaser, da Ihr Telefon keine öffentliche IP-Adresse mit anderen Mitgliedern Ihres Haushalts teilen kann.

Meine Vermutung ist, dass IaaS und PaaS-Anbieter aufgrund ihres Wachstums, das nicht an die physischen Adressen der Kunden gebunden ist, die nächsten sein werden. Ich wäre nicht überrascht, dass IaaS-Anbieter, die IPv6 anbieten, bald nur noch einen Rabatt haben werden.


20
2018-01-29 16:58



Ich habe bereits einige kleine Anbieter gesehen, die nur IPv6-VMs anbieten und eine Prämie für IPv4 verlangen. - Michael Hampton♦


Die großen RIRs hatten vor einer Weile keinen Platz mehr für normale Zuweisungen. Für die meisten Anbieter sind daher die einzigen Quellen für IPv4-Adressen ihre eigenen Bestände und die Märkte.

Es gibt Szenarien, in denen es vorzuziehen ist, eine dedizierte öffentliche IPv4-IP zu haben, aber das ist nicht unbedingt notwendig. Es gibt auch eine Reihe von öffentlichen IPv4-Adressen, die zwar zugewiesen, aber derzeit im öffentlichen Internet nicht verwendet werden (sie können in privaten Netzwerken verwendet werden oder sie werden überhaupt nicht verwendet). Schließlich gibt es ältere Netzwerke mit Adressen, die viel lockerer zugewiesen sind als sie sein müssen.

Die drei größten RIRs ermöglichen nun den Verkauf von Adressen sowohl zwischen ihren Mitgliedern als auch untereinander. Wir haben also einen Markt zwischen Organisationen, die entweder Adressen haben, die sie nicht benutzen, oder die Adressen haben, die auf der einen Seite kostenpflichtig sind, und Organisationen, die auf der anderen Seite wirklich mehr IP-Adressen benötigen.

Was schwer vorherzusagen ist, ist, wie viel Angebot und Nachfrage es zu jedem Preis gibt und was der Marktpreis in der Zukunft leisten wird. Bisher scheint der Preis pro IP überraschend niedrig geblieben zu sein.


14
2018-01-28 19:30



AfriNIC hat weniger als eine / acht Adressen, die noch verfügbar sind, und ich habe viele Beispiele von Orgs außerhalb Afrikas gesehen, die diese aufgreifen. - Michael Hampton♦


Idealerweise sollte jeder Host im Internet in der Lage sein, eine globale IP-Adresse zu erhalten, jedoch ist die Erschöpfung der IPv4-Adresse tatsächlich real ARIN hat bereits die freie Adresse in ihrem freien Pool verloren.

Der Grund, warum jeder immer noch gut auf Internet-Dienste zugreifen kann, ist dank Network Address Translation (NAT) -Techniken, die es mehreren Hosts erlauben, öffentliche IP-Adressen zu teilen. Dies ist jedoch nicht ohne Probleme.


7
2018-01-28 14:32



Ich will nicht wissen, wie viele Arbeitsstunden, Ressourcen und Millionen zwischen Napster, Gnutella, Gossip, Kazaa, BitTorrent, Kademlia, FastTrack, eDonkey, Freenet, Grokster, Skype, Threema, Spotify und so weiter verschwendet wurden Entwicklung von NAT-Piercing-Techniken. - Jörg W Mittag
@ JörgWMittag Ganz zu schweigen davon, wie spektakulär es im Dezember 2010 bei Skype gescheitert ist. - kasperd
Und die Tatsache, dass Sie NAT-Piercing-Techniken in erster Linie verwenden müssen. Wenn Maschine X und Maschine Y beide normale Verbindungen haben, können sie nicht ohne einen Vermittler miteinander kommunizieren. Ärgerlich für Dinge wie Dateisynchronisierungsaufgaben. - Loren Pechtel
@kasperd Könntest du das im Dezember 2010 "für Skype gescheitert" erklären? Ich könnte das finden eine große Anzahl von Superknoten scheiterte auf einmal, aus irgendeinem nicht spezifizierten Grund. Und nicht zu sehen, wie dies für die Erschöpfung der IPv4-Adressen relevant ist. - ivan_pozdeev
@ivan_pozdeev Supernodes ist eine Problemumgehung für Probleme, die durch NAT verursacht werden. NAT selbst ist ein Workaround für den Mangel an IPv4-Adressen. Die Notwendigkeit, Supernodes zu verwenden, war in erster Linie auf den Mangel an IPv4-Adressen zurückzuführen. Wäre das Internet zu einem vernünftigeren Tempo auf IPv6 aufgerüstet worden, hätte Skype Superknoten nicht benötigt, und dieser spezielle Ausfall wäre nicht passiert. - kasperd


ISPs werden verwendet, um Unternehmen Blöcke von 256 IP-Adressen zu geben. Jetzt sind ISPs geizig und geben Ihnen (eine Firma) wie 5. Damals (2003) hatte jeder PC und jedes angeschlossene Gerät in Ihrem Haus eine eigene Internet-IP-Adresse. Jetzt hat der Kabel- / DSN- / Fios-Router eine IP-Adresse und gibt IP-Adressen 10.0.0.x an alle PCs in Ihrem Haus aus. Zusammenfassung: ISPs verschwenden IP-Adressen und verschwenden sie nicht mehr.


5
2018-01-29 23:38



"Damals (2003) hatte jeder PC und jedes angeschlossene Gerät in Ihrem Haus eine eigene Internet-IP-Adresse."Nur wenn du für die 2., 3., 4. usw. bezahlt hast - RonJohn
Ron John hat Recht. Ich war einer der ersten Anwender von Breitbanddiensten, als 1997 das Kabelinternet in mein Gebiet kam. Ich zahlte monatlich 50 US-Dollar dafür, und ich erinnere mich genau, dass sie eine zweite IP-Adresse für zusätzliche 20 US-Dollar pro Monat boten. Obwohl ich eine wollte, war ich nicht bereit, dafür zu bezahlen. Im folgenden Jahr wurde mein Problem gelöst, als ich NAT-Geräte entdeckte. Sie hatten nicht viele Funktionen (wie Port-Forwarding für eingehende Verbindungen), aber die, die ich bekam, löste meine unmittelbare Notwendigkeit. - Charles Burge
@CharlesBurge Ich erinnere mich auch daran. Und wir sehen, dass einige Anbieter versuchen, dasselbe jetzt auch mit IPv6 zu tun. - Kevin Keane
@CharlesBurge: Dies hängt von Ihrem ISP ab. Ich hatte ungefähr zur selben Zeit einen Freund in Phoenix, AZ, und er bekam ein komplett geroutetes Subnetz, einen / 29 Block, mit 8 Adressen, 5 benutzbar. Wir haben einen Linux-Server mit gated (durch Zufall unsererseits) darauf laufen lassen, und das Kabelnetz hat tatsächlich volle BGP-Routing-Informationen mit ihm geteilt. Das und die Leute, die ihre Windows-PCs und Drucker mit völlig offenen Freigaben auf dem Netzwerk stellten, machten das Leben interessant. - Zan Lynx
Oh ja, ich erinnere mich an die Netzwerksichtbarkeit. Alle anderen Benutzer in meiner Schleife waren in "Netzwerkumgebung" sichtbar und ich konnte alle freigegebenen Freigaben durchsuchen. - Charles Burge


Sie haben bereits viele ausgezeichnete Antworten erhalten, aber ich möchte etwas hinzufügen, das noch nicht erwähnt wurde.

Ja, die Erschöpfung der IPv4-Adressen ist schlecht, je nachdem, wie Sie sie messen. Einige Unternehmen haben immer noch eine große Menge an IPv4-Adressen, aber wir beginnen, Workarounds wie NAT von Carrier-Grade zu sehen.

Aber viele der Antworten sind falsch, wenn sie sich auf IPv6 beschränken.

Hier finden Sie eine Liste von Technologien, mit denen Sie den Mangel an IPv4-Adressen beheben können. Jeder hat seine eigenen Vor- und Nachteile.

  • IPv6

    • Vorteil: Standardisiert und in den meisten Betriebssystemen verfügbar.
    • Nachteil: Trotz häufiger gegenteiliger Behauptungen ernste Sicherheitsprobleme. Bereits 2005, US CERT warnte vor Sicherheitsproblemen, die durch die globale Adressierung von IPv6 verursacht wurden. IPv6 können gesichert sein, aber angesichts des Status der Consumer-Router, kann es nicht passieren.
    • Nachteil: Migration erfordert Zeit, Geld und Know-how.
    • Nachteil: Viele Verbrauchergeräte sind ernsthaft fehlerhaft. Zum Beispiel unterstützen einige D-Link-Router IPv6 durch einfaches Weiterleiten alles Verkehr ohne Firewalling anzubieten.

Eine weitere Überlegung: Selbst wenn sich IPv6 heute vollständig durchsetzen würde, würde es noch immer etwa 20 Jahre dauern, bis IPv4 aufgrund von Legacy-Geräten, die die Leute sehr lange verwenden werden, ausläuft (ich sehe immer noch Windows 2003 Server und Windows XP Workstations) gelegentlich! Ganz zu schweigen von allen Druckern und Kameras und IoT Gadgets, die IPv6 nicht unterstützen.

  • CGNat:
    • Vorteil: Arbeitet ohne Änderungen am Kundenstandort.
    • Nachteil: Unterstützt nur ausgehende Verbindungen.
    • Nachteil: unterstützt möglicherweise einige Protokolle nicht.

Schließlich wird CGNat nicht genug sein. Vielleicht wird sich IPv6 durchsetzen, aber es ist auch gut möglich, dass wir land-grade NAT sehen, oder etwas in dieser Richtung.

Derzeit muss ich als Berater oft meinen Kunden zeigen, dass sie IPv6 ausgesetzt sind (oft dank Teredo). Die nächste Frage wird immer lauten: "Wie viel kostet es, das zu beheben?" und dann "Wie viel kostet es, es zu blockieren? Was verlieren wir, wenn wir es ausschalten?" Raten Sie, was die Entscheidung jedes Mal sein wird.

Fazit: Um deine Frage zu beantworten, ja, IPv4 Erschöpfung ist real. Und wir werden einige Mechanismen sehen, um damit fertig zu werden. IPv6 kann oder darf nicht die Gleichung sein.

Um es klar zu sagen: Ich sage das nicht mögen diese Situation. Ich möchte, dass IPv6 erfolgreich ist (und ich würde gerne eine Reihe von Verbesserungen für IPv6 sehen). Ich schaue nur auf die Situation, wie sie gerade auf dem Boden ist.


5
2018-02-01 01:54



CGN funktioniert wie jedes NAT nur mit TCP, UDP und ICMP und nicht mit anderen Transportprotokollen. Es bricht auch viele Protokolle auf Anwendungsebene. NAT ist eine hässliche Lösung, um IPv4 zu erweitern, und es hat seine Nützlichkeit wirklich überlebt. - Ron Maupin
@supercat, IP-Pakete haben keine DNS-Namen. Das wäre ein anderes Protokoll. Nur TCP-, UDP- und ICMP-Transportprotokolle arbeiten mit NAPT, andere nicht. Viele Anwendungen und Protokolle auf Anwendungsebene funktionieren nicht mit NAPT, und sie erfordern hässliche Hacks zusätzlich zum hässlichen NAPT-Hack. Die Prämisse von IP ist, dass jedes Endgerät eine eindeutige Adresse hat und viele Protokolle wurden dafür entworfen. IPv6 löst dieses Problem sowie einige IPv4-Mängel. - Ron Maupin
@supercat, wenn es wirklich so einfach ist, gäbe es keinen Grund für die große installierte Basis von IPX-Netzwerken, um IPv4 zu konvertieren. Du könntest zwischen IPX und IPv4 die gleiche Art von Sache machen, und es wurde eine Weile lang gemacht, aber es ist nur ein Klotz. - Ron Maupin
@supercat - Um ein solches Netzwerk zu unterstützen, müssen wir bestehende Standards aufgeben und alle vorhandenen Anwendungen, die sich direkt mit Adressen verbinden, neu schreiben. Das hört sich nicht nach einer guten Herangehensweise an. - Jules
@ KevinKeane Ich bin nicht sehr überrascht, dass ein alter Verbraucher-Router von 2010 IPv6-Probleme hat. Eine 30 Sekunden lange Suche nach Google-Suchergebnissen zeigt, dass sie dieses Problem vor Jahren gelöst haben. - Michael Hampton♦