Чому написання IP-адрес таким альтернативним способом працює, і чи є для цього практичний випадок використання? [дублікат]


4

Нещодавно я побачив неправильно набрану команду telnet, і побачив, що "звичайні" номери інтерпретуються на IP-адреси. Я сам спробував це в Windows, і там показана така сама поведінка, тому очевидно, це прийнятний спосіб введення IP-адрес. Мені просто цікаво, чи може хтось пояснити, як це працює, і чи існують для цього додатки в реальному світі (тобто коли цей спосіб буде кращим / простішим?).

Я, здається, бачу викрійку тут, але я все ще не можу зрозуміти, чому ви коли-небудь вводите адреси таким чином:

>ping 255
Pinging 0.0.0.255 with 32 bytes of data:
PING: transmit failed. General failure.

>ping 256
Pinging 0.0.1.0 with 32 bytes of data:
PING: transmit failed. General failure.

>ping 257
Pinging 0.0.1.1 with 32 bytes of data:
PING: transmit failed. General failure.

>ping 16581375
Pinging 0.253.2.255 with 32 bytes of data:

>ping 1658137511
Pinging 98.213.43.167 with 32 bytes of data:
Reply from 98.213.43.167: bytes=32 time=170ms TTL=47

Відповіді:


3

Оскільки IP-адреси представлені як "нормальні" номери всередині комп'ютера, цілком нормально можна представити його як "нормальне" число на вході. http://en.wikipedia.org/wiki/IP_address

В IPv4 адреса складається з 32 бітів, що обмежує адресний простір 4294967296 (232) можливих унікальних адрес. IPv4 залишає деякі адреси для спеціальних цілей, наприклад приватні мережі (~ 18 мільйонів адрес) або багатоадресні адреси (~ 270 мільйонів адрес).

Адреси IPv4 канонічно представлені у крапковому десятковому позначенні, яке складається з чотирьох десяткових чисел, кожне від 0 до 255, розділених крапками, наприклад, 172.16.254.1. Кожна частина представляє групу з 8 біт (октет) адреси. У деяких випадках технічного запису адреси IPv4 можуть бути представлені в різних шістнадцяткових, восьмеричних чи двійкових зображеннях.

Випадки використання для цього, ймовірно, в основному були б, якщо ви отримали неформатоване виведення IP-адреси з деякого програмного забезпечення.


1
Гаразд, тому введення тексту 0.0.3.255- це просто інший спосіб набору тексту 3 * 256 + 255, і той факт, що ми вводимо IP-адреси так, як ми це робимо, просто "канонічний", це можна було б написати будь-яким способом, який ми хочемо насправді?
pzkpfw

1
Саме так! Це дійсно розумний спосіб допомогти нам запам'ятати число. Він організовує його в невеликі шматки, які легко запам’ятати, і він налаштовує легко запам’ятовуються межі, як 192.168.xx
Zalastax

Хоча позначення крапки дійсно збільшує кількість символів на приголомшливих ~ 150%. Уявіть всю витрачену пропускну спроможність і простір для зберігання :)
Roger Dahl

2
@RogerDahl, коли вони використовуються на дроті, вони знаходяться у 32-бітовій цілій формі. Багато додатків зберігають їх у 32-бітовій цілій формі.
Зоредаче
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.