1

Я видел этот вопрос на subnettingquestions.com и думал, что это будет легко!

Сколько подсетей (и хостов на подсеть) вы можете получить из сети 10.0.0.0 255.255.240.0?

К сожалению, ответ, который они дали, сильно отличается от того, что я получил из своих расчетов.

Если бы кто-то мог ответить на это (и показать свою работу), я был бы признателен.

Редактировать:

Некоторые из ответов, которые я вижу ниже, не говорят точно, что говорит сайт (то есть официальный ответ "4096 подсетей и 4094 хоста"). Может ли кто-нибудь рассказать, как именно вы должны достичь этих ценностей?

Для всех, кто интересуется тем, как я пытался рассчитать это, вот что я сделал:

255.255.240.0 является маской подсети /20, поэтому есть 4 заимствованных бита (из 3-го октета).

Количество подсетей = 2 до степени 4 (в битах сети = 4), что дает 16

Количество хостов в каждой подсети = (от 2 до степени 4) - 2 (т.е. 4 бита в части адреса узла), что дает 14.

Итак, я получил 16 подсетей и 14 хостов в каждой подсети. Мой ответ в 256 раз!

Кто-нибудь может увидеть, где я иду не так? Кажется, я правильно понял расчеты класса C, но у меня проблемы с остальными.

3 ответа3

4

С этими настройками, как указывает @Darius, вы получите 20-битную маску и так:

Start Address: 10.0.0.1
End Address..: 10.0.15.254

Максимальное количество доступных хостов - 4094. Конечно, вы не можете использовать первый или последний IP-адрес в подсети (например, 10.0.0.0 и 10.0.15.255) для хостов, так как они необходимы для других целей. Первый IP-адрес используется для сетевого адреса, а последний - для широковещательного адреса.

Используя именно вашу маску, вы, строго говоря, имеете только 1 подсеть. Используя маску 255.255.255.0, вы можете получить 16. Конечно, вы можете использовать другие маски для получения различного количества подсетей, но это становится сложным для вычисления. Это потому, что именно маска создает подсети.

3

Для вашего конкретного вопроса относительно маски подсети 255.255.240.0 в сети класса A 10.0.0.0, вот «работа»:

идентификатор сети: 10.0.0.0

маска подсети: 255.255.240.0

в биты: 1111 1111 . 1111 1111 . 1111 0000 . 0000 0000

Наш последний октет - все 0 (или 256 хостов), а последние 4 бита 3-го октета также равны 0 (16). Чтобы получить общее количество хостов, мы умножим число хостов 4-го октета (256) на количество оставшихся хостов октета (16) и получим 4096 (256 * 16) возможных хостов (4094 используемых адреса ')

Чтобы получить количество подсетей, мы делаем то же самое, но с «битами сети»; поскольку мы находимся в сети класса A, нас интересует 2-й октет и оставшиеся «сетевые» биты в 3-м октете, в данном случае это 1111 1111 . 1111 ... (2-й октет и остаток 3-го). Та же самая математика здесь, 2-й октет говорит все, так что это дает нам (256) возможных сетей в первом октете, умноженных на оставшиеся сети в 3-м октете (16), таким образом, давая нам 4096 возможных подсетей.

Та же математика применима и к другим сетевым классам, но сосредоточится на других октетах.

Чтобы углубиться в это:

Чтобы вычислить подсеть, вы начинаете с октета хоста и отсчитываете отсюда, поэтому в нашем примере мы будем использовать маску подсети всех 255:

255.255.255.255 == 1111 1111 . 1111 1111 . 1111 1111 . 1111 1111

Это дает нам только 1 IP, поэтому давайте начнем переворачивать биты, чтобы увидеть, куда мы идем:

255.255.255.254 == 1111 1111 . 1111 1111 . 1111 1111 . 1111 1110

Помните: бит, установленный в 0, - это «используемые» IP-адреса, так что это даст нам только 2 IP-адреса (.0 и .1 для начала диапазона подсети), оба из которых невозможно использовать, так как 1 - хост, а другая широковещательная рассылка ... Продолжить:

255.255.255.252 == 1111 1111 . 1111 1111 . 1111 1111 . 1111 1100

Хорошо, теперь у нас есть 4 IP-адреса, но можно использовать только 2 (.0 - .3, .0 - «хост», «.3» - широковещательный)... давайте продолжим:

255.255.255.248 == 1111 1111 . 1111 1111 . 1111 1111 . 1111 1000

теперь у нас есть 8 всего (6 используемых) с этой маской подсети .. еще один ..

255.255.255.240 == 1111 1111 . 1111 1111 . 1111 1111 . 1111 0000

Сейчас у нас всего 16 IP-адресов с 14-ю полезными.

Это относится к сети на основе класса C, касается только последнего октета, но тот же шаблон продолжает применяться (как указано выше) и к другим сетевым классам.

Расчеты подсетей утомительны (особенно если вам приходится вычислять каждую сеть вручную, а вам нужно рассчитать сотни сетей).

Я надеюсь, что это может помочь.

2

Скорее всего, это было забыто, но если ответа txtechhelp недостаточно, вот другой способ объяснить это.

  1. Вопрос является "классным" вопросом о подсетях. Это означает, что часть информации для решения проблемы включена в IP-адрес.

  2. В этом случае 10.0.0.0 - это сеть класса A или блок CIDR /8. Следовательно, эта сеть состоит из 8 битов с маской 255.0.0.0.

  3. Подсеть в сети означает заимствование битов, а маска подсети (воспринимается как расширенная маска) сообщает вам, сколько битов было заимствовано.

  4. В этом случае 255.255.240.0 означает, что 255.240 является "расширенной" частью. 255 состоит из 8 бит, а 240 - из 4 бит. Это составляет 8+4 = еще 12 бит.

  5. Чтобы узнать количество подсетей, просто посмотрите, сколько разных способов можно включить или выключить заимствованные биты. Это означает 2 ^ n, поэтому 2 ^ 12 = 4096.

  6. Чтобы узнать количество хостов, посмотрите, сколько разных способов можно включить или выключить оставшиеся биты. Посмотрите, что осталось 32- (8+12) = 12 битов, так что опять же это 4096.

  7. Вычтите 2 из общего количества хостов, потому что хосту не могут быть назначены первый и последний адреса (они используются для идентификации подсети и широковещания).

Это должно быть так.

Примечание. Эту последнюю перечисляемую точку не следует путать с сетью ".0" или ".255". Первый и последний адреса могут быть любым числом (подробнее см. [1]). Обратите внимание, что без этих адресов вы не сможете направлять пакеты в подсеть или позволять узлу обмениваться данными с другими узлами в той же подсети. Конечно, это зависит от IPv4. IPv6 делает вещи более интуитивно понятными.

[1] https://serverfault.com/questions/10985/is-xyz-0-a-valid-ip-address

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .