ping 1.1.257 ?
Manchmal kann ich nicht widerstehen, IP Adressen in anderen Schreibweisen zu benutzen. Warum das möglich ist, ist tatsächlich definiert.
In IPv6-Adressen wird der Doppelpunkt (::) als Abkürzung für eine Gruppe aufeinander folgender Nullen verwendet. IPv6-Adressen sind 128 Bit lang und werden in 8 Blöcken zu je 16 Bit geschrieben. Die Verwendung von Doppelpunkten ermöglicht es, aufeinander folgende Blöcke mit Nullen zu verkürzen, um die Lesbarkeit zu verbessern.
Zur Veranschaulichung könnte eine IPv6 Adresse so aussehen:
2001:0db8:0000:0000:0000:8a2e:0370:7334
Die Nullen können hierbei also weggelassen werden und durch :: ersetzt werden:
2001:0db8::8a2e:0370:7334
Das ist bei IPv4 tatsächlich ähnlich definiert:
Was passiert also, wenn ich versuche meinen Nameserver anzupingen?
Die .257 läuft also über die 255 hinaus. 256 wäre damit im nächsten Netz die 0, womit folglich die 257 dem Host mit der 1 am Ende gleichgesetzt wäre.
Wir können hier mit dem lokalen Netz experimentieren:
Die Bits werden somit vor dem letzten Oktett aufgefüllt:
Folgende Befehle sind gleichbedeutend zu ping 127.0.0.1
:
ping 127.0.1
ping 127.1
ping 0x7f.1
ping 2130706433
Es ist immer wieder ein Spaß, die Reaktion neuer Experten zu beobachten, wenn solche RFCs in verschiedenen Softwaremodulen dann nicht berücksichtigt sind.
Gerade in der Luftfahrt gibt es ein paar lustige RFCs, die Netzwerkverbindungen beschreiben, von denen scheinbar niemand etwas gehört hat.
Internet Protocol over Avian Carriers (IPoAC)
In RFC1149 wird beschrieben, wie man Daten per Brieftauben übertragen kann. Für die Leistungsfähigkeit von Verbindungsnetzwerken sind die beiden Parameter Latenz und Datentransferrate ausschlaggebend. Und das wird hier eindrucksvoll beschrieben:
Am 1. April 1999 im RFC 2549 wurde er um eine QoS-Komponente erweitert:
Und schließlich kam IPv6 dazu:
Dabei wurde auch nicht die Fehlerkorrektur und Paketverlust ausgelassen:
Fazit
Natürlich ist es eher unüblich diese Schreibweisen zu verwenden. Aber die Reaktionen sind es wert...