Является ли XYZ0 действительным IP-адресом?


86

Действительны ли IP-адреса с 0 в последнем октете?

10.6.43.0

В моем случае у меня есть следующая маска

255.255.252.0

А как насчет 0 для других октетов?


12
другие ответили, но мы запускаем / 23s в наших диапазонах DHCP, что означает, что средние .255 и .0 адреса двух / 24 назначаются клиентам. Работает отлично. Иногда «хорошо осведомленные» пользователи немного волнуются, думая, что они извлекли недопустимый IP-адрес, но из сетевого POV он работает нормально.
jj33

Ответы:


143

Это зависит от подсети рассматриваемого IP-адреса. Как правило, первый и последний адреса в подсети используются в качестве идентификатора сети и широковещательного адреса соответственно. Все остальные адреса в подсети могут быть назначены хостам в этой подсети.

Например, IP-адреса сетей с масками подсетей не менее 24 бит, оканчивающимися на .0 или .255, никогда не могут быть назначены хостам. Такие «последние» адреса подсети считаются «широковещательными» адресами, и все хосты в соответствующей подсети будут отвечать на них.

Теоретически, могут быть ситуации, когда вы можете назначить адрес, заканчивающийся на .0: например, если у вас есть подсеть, такая как 192.168.0.0/255.255.0.0, вам разрешено назначить хосту адрес 192.168.1.0. Это может привести к путанице, так что это не очень распространенная практика.

В вашем примере

 10.6.43.0 with subnet 255.255.252.0 (22 bit subnet mask)

означает идентификатор подсети 10.6.40.0, диапазон адресов хоста от 10.6.40.1 до 10.6.43.254 и широковещательный адрес 10.6.43.255. Таким образом, в теории ваш пример 10.6.43.0 будет разрешен как допустимый адрес хоста.


4
Одно дополнение В прошлом мне приходилось иметь дело с некоторыми старыми программами, у которых были проблемы с использованием адреса .0 в местах, где это было совершенно законно.
Зоредаче

И ни один ответ на этот вопрос не будет полным без ссылки на RFC CIDR: RFC1518 и RFC1519, которые определяют все это.
pjz

17
RFC 1519 давно устарел. Текущая версия RFC 4632.
bortzmeyer

1
Только что был назначен точка ноль экземпляром Amazon EC2. Они уверены, что максимизируют IP, которые они имеют.
Мэтт

@bortzmeyer, RFC 4632 - просто ЛУЧШАЯ ТЕКУЩАЯ ПРАКТИКА, тогда как RFC 1519 - это стандарт RFC.
Рон Мопин

13

Ответ на ваш вопрос зависит от маски сети. в общем случае утверждение «IP-адреса, оканчивающиеся на .0 или .255 недействительны», является ложным. бери 10.0.1.0/23 - это действительный IP-адрес.

также 10.6.43.0/255.255.252.0 aka 10.6.43.0/22 ​​является действительным.

это была теория. Наиболее разумные сетевые устройства [включая серверы Linux, Windows Box, cisco / hp / и т. д.] будут нормально работать с таким адресом, но я видел, что dlink и другие сетевые устройства низкого уровня [маршрутизаторы, точки доступа] не принимают такие адреса.



8

Я хотел бы добавить немного около 0 для других октетов:

Это легко: это совсем не проблема, как 192.168.0.1показывает довольно распространенный адрес частной сети .

Конечно, будет еще более очевидный пример 127.0.0.1.


2
-1 для очевидного ...
Джон Роудс

6
+1 за указание на очевидное
просто кто-то

Вопрос не в том, чтобы задавать нули в других октетах.
сленг

2
@slang: За исключением того, что буквально спрашивает о том, что именно в последнем предложении.
Йоахим Зауэр

3

У меня возникли проблемы с удаленными сетями, запрещающими IP-адреса из моей сети, если они заканчиваются на 0 (или 255), и они принадлежат диапазону класса C, поскольку все, что заканчивается на 0, будет недопустимой сетью класса C.

Это было несколько лет назад; Я не знаю, блокирует ли кто-то такие адреса или нет.


Звучит так, будто ваш брандмауэр / программное обеспечение немного ненормальный;)
nixgeek

Каждый IP-адрес в моей сети, кроме .0 или .255, мог получить доступ к каждому сайту, IP-адреса, заканчивающиеся на .0 и .255, могли получить доступ к 95% сайтов, но было два или три совершенно разных сайта, к которым они не могли получить доступ. Если бы это был мой брандмауэр / программное обеспечение, я точно не мог понять, как.
Джош Келли

1
Они должны использовать брандмауэры, настроенные теми же людьми, которые блокируют все ICMP и заканчивают тем, что ломают PMTUD, или блокируют все «недействительные» флаги TCP и заканчивают тем, что ломают ECN.
CesarB

Серверы Microsoft якобы делают это даже сегодня. Нет обновления Windows для вас. Но Microsoft, как известно, нарушает правила с незапамятных времен.
Зденек

0

Просто то, что я нашел, что, вероятно, заслуживает внимания:

Если вы запускаете сценарий APF для сетей R-fx для iptables, он отбрасывает весь трафик до 0.0.0.255

У нас был клиент BT с адресом, оканчивающимся на .255, с префиксом / 21. Технически это действительный IP-адрес, однако ребята из сетей R-fx считают, что есть причина отбрасывать пакеты для этих адресов.


они предпочитают отбрасывать пакеты до 0.0.0.255, скорее всего, в целях безопасности. 1) DOS-атаки могут происходить путем использования мощности широковещательного пакета и 2) полной приватизации сети, чтобы хосты не могли вещать. см. en.wikipedia.org/wiki/Broadcast_traffic#Security
zamnuts
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.