Обычно вам дается адрес с маской подсети для подсети. Например:
192.168.0.0/16
Но предположим, что вам не дали адрес. Вам придется предположить адрес.
Хозяевам дано:
Имеется 5 отделов:
- ЧСС = 60
- Маркетинг = 60
- Кодирование = 60
- Тестирование = 60
- Отдел контроля = 5
Итак, общее количество хостов составляет 60*4+5=245.
т.е. вам требуется 8 бит адреса хоста (что неверно, но продолжайте в том же духе). У вас есть 256 адресов.
Но вам придется пожертвовать начальным и конечным IP-адресами. Таким образом, общее количество требуемых IP-адресов становится 245+5*2=255
Я знаю, что это неправильно, потому что в подсетях нельзя выделить 62 IP-адреса, можно только 64.
Так есть ли какая-то формула или что-то еще, чтобы я мог узнать маску подсети, зная количество хостов, указанных напрямую?
Я прекрасно понимаю, что я мог бы выбрать основную маску подсети сети как /1, и моя работа была бы сделана. Но это заставило бы меня выглядеть сумасшедшим.
решение1
Как найти маску подсети основной сети?
Имеется 5 отделов:
- ЧСС = 60
- Маркетинг = 60
- Кодирование = 60
- Тестирование = 60
- Отдел контроля = 5
Сначала составьте 5 уравнений:
4*(2^x-2)=60*4-
т.е. 2^x -2 =60 --уравнение 1)
2^y - 2=5 ---уравнение 2)
Найдите значения x и y.
х=log_2 (60+2)
у=log_2 (5+2)
Требуется маска подсети=z=32-xy=23
Следовательно, /23 — это основная маска подсети сети.
Другой более простой подход — мыслить в двоичном формате.
Для 60 хостов можно разместить только в 64 IP-адресах. А 5 хостов в 8 IP-адресах. Так что 64*4+8=264
log_2(264)=9
т.е. для представления 264 адресов требуется 9 бит.
Таким образом, маска подсети=32-9=23.
эмпирический ответ для тех, кто предпочитает использовать математику, а не вычисления:
Суммирование (2^log_2(количество хостов в подсети+2)).
Суммирование производится от первого отдела до n-го отдела.
но помните, что не следует использовать калькулятор, так как он даст неверные результаты.
сначала вычислите log_2(количество хостов в подсети+2)
затем вычислите его 2-ю степень.
например: для 60, log_2(62)=6
тогда 2^6 =64
Аналогично для еще 4 подсетей это становится 64*4=256
Затем для конечной подсети
log_2(7)=3
2^3=8
Таким образом, потребуется 256+8=264 IP-адреса.
log_2(264)=9
Таким образом, для такого количества хостов требуется 9 бит, т.е. 32-9=23 в качестве маски подсети.