1

Я нахожу это очень трудным для понимания IP-подсетей.

Вещи, которые я уже знаю, как сделать: учитывая IP-адреса и маску подсети, я могу найти все IP-адреса в подсети. Учитывая IP-адреса, такие как 145.244.0.0/14, я могу найти маску подсети.

То, что я не знаю, как сделать, это упражнение, подобное этому: Разделение сети, скажем, 192.168.0/24 на подсети. Каждая подсеть должна содержать не менее 10 хостов. Какие первые семь подсетей?

Как мне найти решение для такого упражнения? Я должен найти адреса подсети, маску подсети, IP первого хоста, IP последнего хоста и широковещательный адрес.

Обратите внимание, что это не какая-то домашняя работа, у меня есть решение в моей книге, но я не знаю, откуда оно.

Спасибо, что помогли мне.

3 ответа3

3

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

10 хостов, 2^4 = 16 (минус 2 для ID и трансляции). 32-4 = 28 , так что вы собираетесь использовать подсеть /28.

Используя ваши знания о том, как найти IP-адреса в подсети, вы можете работать в обратном направлении отсюда. Вы также можете перечислить все подсети, добавив 16 или снова работая в обратном направлении с IP-адресов:

192.168.0/24 (given supernet)
  192.168.0/28
  192.168.16/28
  192.168.32/28
  192.168.48/28
  192.168.64/28
  ...

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

1

Разделив сеть, скажем, 192.168.0/24 на подсети. Каждая подсеть должна содержать не менее 10 хостов. Какие первые семь подсетей?

Сначала выберите размер подсети, в результате чего подсети будут достаточно большими для 12 адресов (сеть + 10 хостов + широковещательная рассылка), но достаточно маленькими для размещения 7 подсетей в пределах вашего текущего префикса /24.

  • Для 12 адресов хоста вам нужно как минимум 4 бита (2 3 = 8 <12, но 2 4 = 16> 12).
  • Для 7 подсетей вам нужно как минимум 3 бита (2 2 = 4 <7, но 2 3 = 8> 7).

Поскольку у вас есть /24, то есть осталось 8 бит (из 32), у вас есть только два варианта:

  • 3 бита подсети + 5 бит хоста
  • 4 бита подсети + 4 бита хоста

Эти параметры означают /(24 + 3) = /27 и /(24 + 4) = /28 подсетей соответственно.

Как правило, я бы выбрал /28 для более простых вычислений, так как последний октет делится ровно пополам. (Это не имеет большого значения в IPv4, но немного облегчает жизнь в IPv6, где адреса записываются в 4-битных шестнадцатеричных цифрах.)


Теперь перечислите все /27 (или /28) подсетей в данной сети /24. Если у вас есть 3 бита подсети и 5 битов хоста, продолжайте увеличивать адрес на 2 5, чтобы 4-й октет был:

  • 000x xxxx → 0000 0000 → 0 → 192.168.0.0/27
  • 001x xxxx → 0010 0000 → 32 → 192.168.0.32/27
  • 010x xxxx → 0100 0000 → 64 → 192.168.0.64/27
  • ...
  • 111x xxxx → 1110 0000 → 224 → 192.168.0.224/27

Это (суб) сетевые адреса.

1

В то время как предыдущие ответы были точными, я подумал, что стоит указать на неявное предположение, которое мы здесь делаем. Ответы как grawity, так и BowlesCR предполагают маску подсети фиксированной длины, которая не обязательно должна быть истинной. Например, следующая схема подсети также будет соответствовать вашим требованиям:

192.168.0.0/28   <-- NOT /27
192.168.0.16/27
192.168.0.48/27
192.168.0.80/27
192.168.0.112/27
192.168.0.144/27
192.168.0.176/27

Вот еще один:

192.168.0.0/28
192.168.0.16/28
192.168.0.32/28
192.168.0.48/26   <-- Oops, /26?!
192.168.0.112/27  <-- How about 27 instead...
192.168.0.144/28
192.168.0.160/28

Их, как правило, гораздо сложнее и сложнее вычислить, поэтому мы по понятным причинам предпочитаем везде использовать одну и ту же маску подсети. Чтобы облегчить себе задачу, мы можем просто придерживаться границ октетов и называть это днем. Например, разделив 10.0.0.0/8 на 7 подсетей:

10.0.1.0/24
10.0.2.0/24
10.0.3.0/24
10.0.4.0/24
10.0.5.0/24
10.0.6.0/24
10.0.7.0/24

И, наконец, еще один фактор, который необходимо учитывать, это то, ищем мы маску подсети SMALLEST или LARGEST, которая содержит указанное количество хостов. Ответ Grawity ссылается на это (/27 против /28).

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