Почему нужно вводить маску подсети, а не просто число 1-бит в маске?

392
Ruslan

Как я понимаю, маска подсети должна быть смежной . Например, вы не можете иметь маску 255.1.0.0. Сети часто обозначаются, например, как 192.168.5.0/24, которая автоматически содержит всю информацию для получения маски подсети, и при таком выводе она гарантированно будет смежной.

Почему пользователям приходится «расширять» это число 24 вручную до 255.255.255.0, а не просто вводить число 24 в конфигурацию сети? Есть ли случай, когда требуется маска подсети и количество 1-бит в маске недостаточно для конфигурации?

1
Это зависит от программного обеспечения (включая прошивку). Вы должны использовать ту форму маски, которую понимает программа. * маска подсети должна быть смежной * - нет, есть редкие маски, но большая часть программного обеспечения не может работать с ними корректно. Akina 6 лет назад 0
Это не отвечает, почему это так (это связано только с программным обеспечением), но это действительно отвечает, как выглядит «действительная» против неверной маски -> https://superuser.com/questions/601252/is-225- 225-225-128-а-Валид-подсеть маска djsmiley2k 6 лет назад 0
@ djsmiley2k - это та самая ссылка, которую я изначально вставил в ОП в качестве подтверждения моего понимания. Ruslan 6 лет назад 1
Я полагаю, вы спрашиваете, например, о пользователях Windows? Многие системы принимают синтаксис / plen или просто число, как, например, «новое» приложение «Настройки» в Win10. grawity 6 лет назад 0
Я голосую за то, чтобы закрыть это как основанное на мнении, поскольку причина, по которой он вводится определенным образом, вероятно, основана исключительно на предпочтениях разработчика за один раз, и обоснование было бы в значительной степени спекулятивным. Я предполагаю, что 192.168.1.1/255.255.255.0 или 192.168.1.1/24 было просто проще, чем 192.168.1.1/11111111.11111111.11111111.00000000 для пользователей acejavelin 6 лет назад 0
@ Grawity Я спрашиваю не только о Windows. Везде, где я пытался настроить сеть, это было так: диалоговое окно свойств адаптера Windows XP (с тех пор не пользовался Windows), графический интерфейс KDE NetworkManager, консоль Linux `ifconfig`, файл Debian` / etc / network / interfaces`, веб-интерфейсы различные роутеры и т.д .. Ruslan 6 лет назад 0
`/ Etc / network / interfaces` Debian принимает длины префиксов уже несколько лет, как и` ifconfig` (хотя последний не был _maintained_ в течение многих лет), как и интерфейс GNOME NetworkManager (хотя пока не KDE). grawity 6 лет назад 0
@ Grawity приятно знать. Теперь я вижу, что все меняется, хотя по-прежнему странно, что этот формат маски был распространен в течение столь длительного времени без реальной причины (если только она не существует). Ruslan 6 лет назад 0

1 ответ на вопрос

0
djsmiley2k

Это просто зависит от программного обеспечения.

Когда RFC написаны, они обычно не определяют, как значение представляется конечному пользователю, только как оно «работает». Таким образом, вы получите эффект, который вы видели, когда разные программы по-разному реализуют одно и то же число.

Одна и та же подсеть представлена ​​по-разному:

  • 255.255.255.0
  • / 24
  • 11111111.11111111.11111111.00000000

То же самое можно увидеть с презентацией MAC-адресов:

  • Форматы Cisco в IOS: FFFF.FFFF.FFFF
  • Microsoft Cli: FF-FF-FF-FF-FF-FF
  • Microsoft DHCP: FFFFFFFFFFFF
  • Большинство производителей сетевых карт: FF: FF: FF: FF: FF: FF

Все они представляют один и тот же mac-адрес, только в разных формах.