Przypadkowo wpisałem
ssh 10.0.05
zamiast
ssh 10.0.0.5
i byłem bardzo zaskoczony, że zadziałało. Próbowałem też 10.005
i 10.5
a te również rozszerzony automatycznie 10.0.0.5
. Próbowałem również 192.168.1
i to rozszerzyło się na 192.168.0.1
. Wszystko to również pracował ping
zamiast ssh
, więc podejrzewam, że to działa w wielu innych poleceń, które łączą się z dowolnym dostarczone przez użytkownika hosta.
Dlaczego to działa? Czy to zachowanie jest gdzieś udokumentowane? Czy to zachowanie jest częścią POSIX czy coś takiego? A może to tylko dziwna implementacja? (Używanie Ubuntu 13.10 za to, co jest warte.)
Odpowiedzi:
Cytowanie z
man 3 inet_aton
:Dla zabawy spróbuj tego:
źródło
0
rozgłoszeniowy DHCP 0xffffffff, który jest krótszy doDodając do dokładnej odpowiedzi @ devnull , adresy IPv4 można przedstawić w następujący sposób.
Przykład
Tę nazwę domeny
google.com
można reprezentować na następujące sposoby:74.125.226.4
(kropka dziesiętna)1249763844
(ułamek dziesiętny)0112.0175.0342.0004
(kropkowany ósemkowy)011237361004
(płaskie ósemki)0x4A.0x7D.0xE2.0x04
(kropkowany hex)0x4A7DE204
(płaski hex)74.0175.0xe2.4
(ಠ_ಠ)Źródło: Dlaczego polecenie ping 192.168.072 (tylko 2 kropki) zwraca odpowiedź z 192.168.0.58? .
źródło