Мне нужна помощь в понимании подсетей (CIDR).
я использую инструмент чтобы проверить, находится ли IP в допустимом диапазоне с учетом адреса CIDR. Когда я ввожу IP-адрес (12.245.105.190
) и сравните его с тем же адресом с маской подсети (12.245.105.190/30
), любое значение меньше 31 показывает "NOT IN SUBNET
"но дает диапазон, который, казалось бы, включает IP-адрес:
** NOT IN SUBNET **
IPV4 ADDRESS 12.245.105.190
IPV4 NETWORK 12.245.105.190
IPV4 CIDR PREFIX 30
IPV4 RANGE START 12.245.105.188 <-- seems smaller than my IP
IPV4 RANGE END 12.245.105.193 <-- seems larger
Вы можете помочь мне понять, что мне не хватает?
Маска подсети - это битовая маска. Прилагаемый /30
означает, что сетевая маска охватывает самые высокие 30 бит (из 32 бит):
12 . 245 . 105 . 190 IPv4 address decimal
0000 1100 . 1111 0101 . 0110 1001 . 1011 1110 IPv4 address binary
1111 1111 1111 1111 1111 1111 1111 1100 netmask
0000 1100 . 1111 0101 . 0110 1001 . 1011 1100 network prefix
30 бит слева - это сетевая часть / префикс. Последние два бита с правой стороны составляют хост-часть. Это означает, что хост-часть (два младших бита) может быть
Которые при соединении с префиксом сети (первые 30 бит сверху)
0000 1100 . 1111 0101 . 0110 1001 . 1011 1100
12 . 245 . 105 . 188
0000 1100 . 1111 0101 . 0110 1001 . 1011 1101
12 . 245 . 105 . 189
0000 1100 . 1111 0101 . 0110 1001 . 1011 1110
12 . 245 . 105 . 190
0000 1100 . 1111 0101 . 0110 1001 . 1011 1111
12 . 245 . 105 . 191
Итак, в этой подсети четыре адреса, из которых первый 00
и последний 11
зарезервированы для сети и вещания соответственно. Это означает .188
, .189
, .190
, и .191
являются частью подсети, в отличие от .188
- .193
заявлено - казалось бы, сломанным - онлайн-инструментом.
Смотрите также Википедия - Подсеть - Интернет-протокол версии 4 для получения дополнительных сведений о подсетях IPv4 в целом и сетевых префиксах в частности.