Проверка связи с IP-адресом, отличным от введенного мной [дубликата]


19

Может кто-нибудь объяснить, почему CMD пингует другой IP-адрес, чем тот, который я ищу?

пример


Это дубликат, я просто не могу вспомнить, где
канадец Люк ОБНОВИТЬ МОНИКУ

@DavidPostill, это не дубликат, потому что в вопросе, который вы связали, система рассматривала числа с ведущими нулями и без них как десятичные, но в этом вопросе совершенно ясно, что система интерпретирует ведущие нули как восьмеричные числа.
Сэм Скьюс,

3
@SamSkuce Вы читали ответ с наибольшим количеством голосов? «Например, если вы используете трехзначное число, начинающееся с нуля (или двузначное, начинающееся с нуля, ...), тогда ping будет считать восьмеричные числа».
DavidPostill

1
Кроме того, когда мы предлагаем дублирующую запись, ФП просят взглянуть на вопрос и ответы, чтобы увидеть, совпадает ли он
канадец Люк REINSTATE MONICA

Ответы:


45

В Windows CMD, если вы ставите начальные нули на IP-адрес, значит восьмеричное .

Он интерпретирует 016как 16 octalи преобразует его в 14 decimal.

Вы можете использовать восьмеричные, десятичные или шестнадцатеричные обозначения, как в следующем примере:

22.101.31.153 (decimal)
026.0145.037.0231 (octal)
0x16.0x65.0xF1.0x99 (hexadecimal)

3
Вау. Это ужасная недокументированная «фича» . Оказывается, Chrome делает это ( 4.4.4.8и 4.4.4.010эквивалентно)
Коул Джонсон

3
Ну, БИП, он тоже работает с гексом! Это делает старый ping 10.1000001взгляд почти вменяемым ... ping 10.0xDEAD... !!!
user3710044

38
Это не ужасно и не без документов; это обычная запись для адресов IPv4
sleblanc

5
@ LukeMcGregor Нет. Я думаю, что сам стандарт плох. Я думаю, что ведение восьмеричной нотации плохо. И хотя я рад, что Microsoft следовала стандарту, я бы предпочел, чтобы он был скрыт за коммутатором в целях удобства использования, или, по крайней мере, была дана некоторая информация о том, что конкретное число читается как восьмеричное, и вы должны не указывать 0 если ты этого не хочешь.
trlkly

4
Люди, работающие с IP-адресами, должны понимать, что они собой представляют, прежде чем их использовать. Начальные восьмеричные нотации достаточно распространены, и это ошибка, которую вы сделаете только один раз. Конечные пользователи обычно не должны обрабатывать IP-адреса, или, по крайней мере, они не должны изменять представление. Если в руководстве к вашему маршрутизатору написано «подключиться к 172.16.0.1», вам не следует вводить «172.016.000.001».
sleblanc
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.