Предположим, я не знаю, какой у меня диапазон IP-адресов или свой шлюз по умолчанию, но я знаю, что мой IP-адрес - 192.168.5.38, а мой диапазон CIDR - / 23.
Как мне узнать, какой у меня диапазон IP?
Мой диапазон
192.168.4.0-192.168.5.255
или
192.168.5.0-192.168.6.255
Можем ли мы решить это, только если знаем шлюз по умолчанию?
Обратите внимание, я не спрашиваю, какие инструменты могут предоставить эту информацию, это мысленное упражнение. Я пытаюсь понять, как вы узнаете диапазон, когда столкнетесь с такой ситуацией.
Спасибо!
Ответ:
спасибо @g_bor внизу - они помогли мне понять, как вы рассчитываете диапазон. Вы делаете это, объединяя двоичные выходы IP-адреса и маски подсети с помощью И.
IP-адрес: 192.168.5.38
Двоичный
11000000.10101000.00000101.00100110
Маска подсети: / 23 (255.255.254.0)
Двоичный:
11000000.10101000.00000100.00000000
Если мы И их вместе (1 И 1 = 1, 0 И 0 = 0, 1 И 0 = 0), мы получим
11000000.10101000.00000100.00000000
который является диапазоном IP:
192.168.4.0
192.168.5.38 в двоичном формате: 11000000.10101000.00000101.00100110. Сетевая маска: 11111111.11111111.11111110.00000000. (начинается с 23 единиц) Сетевая часть этого адреса: 11000000.10101000.00000100.00000000. Это: 192.168.4.0, первый адрес в диапазоне. Последний: 192.168.5.255, так как мы должны установить все места в единицы, где маска сети имеет 0-е. Итак, диапазон: 192.168.4.0-192.168.5.255.
Как мне узнать, какой у меня диапазон IP?
Простая математика.
Все первые 23 бита идентичны.
Я обычно использую http://jodies.de/ipcalc? за то, что сделал так быстро, и он возвращается ...
HostMin: 192.168.4.1 11000000.10101000.0000010 0.00000001 HostMax: 192.168.5.254 11000000.10101000.0000010 1.11111110
Вот так просто. Это 4-5, потому что 6 будет иметь другой бит из 23, которые должны быть идентичными.
Вам даже не нужен шлюз по умолчанию, последний диапазон недействителен, вот и все. Допустимые значения / 23: 192.168.0.0/23, 192.168.2.0/23, 192.168.4.0/23, 192.168.6.0/23 и т. Д.