Метод быстрого вычисления адреса IPv4 сети по маске
В процессе вычисления сетей, при подготовке к CCNA, я выявил интересную закономерность, на основе которой можно быстро вычислять адрес сети, а так же ее широковещательный адрес без особых усилий. Этот метод я ранее в литературе не встречал.
Итак, мы имеем произвольный IP адрес – 192.170.175.83/13 и наша 1 задача вычислить адрес сети, для этого мы посмотрим на второй октет, так как именно он содержит как сетевую так и хостовую часть. На хостовую часть во втором октете отводится 3 бита, что дает нам 8 (2^3) изменяемых хостовых адресов в данном октете, т.е. каждая подсеть в данном октете будет содержать 8 изменяемых адресов. Теперь мы разделим представленное в третьем октете число на количество изменяемых адресов – 170/8 = 21.25, в результате деления мы получили номер искомой подсети – 21 (дробная часть нас ясное дело не интересует). Зная номер подсети, и количество изменяемых адресов в ней мы можем вычислить ее адрес, для этого 21 * 8 = 168. Итого – адрес сети будет 192.168.0.0.
Задача №2 – вычислить широковещательный адрес, для этого мы к 168 прибавим количество изменяющихся адресов и вычтем единицу: 168 + 8 – 1 = 175, следовательно, широковещательный адрес данной подсети 192.175.255.255.
И по поводу последних двух октетов в моем примере – если маска в октете нулевая, то в адресе сети он всегда будет равен 0, и широковещательный адрес всегда будет равен 255.
PS: Если данный метод ранее кому то встречался – просьба дать ссылку.
Главное меню
Последние статьи
Счетчики
Маска подсети
Эта статья не относится напрямую к операционой системе линукс, но тем не менее эта ось создавалась изначально как сетевая ОС и понимание этой информации лишним не будет.
В терминологии сетей TCP/IP маской подсети или маской сети называется битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети.
с помощью маски подсети можно определить, что один диапазон IP-адресов будет в одной подсети, а другой диапазон соответственно в другой подсети.
У маски подсети существует три наиболее часто используемые формы записи:
1. десятичный вид ( 255.255.255.192 );
2. двоичный вид( 11111111.11111111.11111111.11000000 ).
Адрес подсети.
Это адрес который используется для организации маршрутизации между несколькими подсетями. При получении IP-адреса хоста маршрутизатор накладывает на него маску и определяет адрес подсети, затем по этому адресу определяется адрес шлюза на который нужно отправить пакет.
Адреса хостов в подсети.
Это набор IP-адресов, которые могут быть выданы хостам (устройствам, подключенным к ip-сети). Чтобы подсчитать количество адресов, нужно от общего количества адресов подсети отнять два адреса(адрес сети и широковещательный). При обмене пакетами между хостами в одной подсети маршрутизатор и шлюз не нужны.
Широковещательный адрес (Broadcast).
Это адрес который не присвоен ни одному хосту в подсети. Данный адрес используется для отправки широковещательных пакетов, которые предназначены каждому хосту подсети.
Пример 1.
Найдем адрес сети, зная IP-адрес (192.168.1.2) и маску подсети (255.255.255.0). Для этого необходимо применить к ним операцию поразрядной конъюнкции (логическое И).
Для этого переводим в двоичную систему счисления.
IP-адрес: 11000000 10101000 00000001 00000010 (192.168.1.2)
Маска подсети: 11111111 11111111 11111111 00000000 (255.255.255.0)
Адрес сети: 11000000 10101000 00000001 00000000 (192.168.1.0)
Пример 2, обратный, найдем адреса хостов и широковещательный адрес
/26 = 11111111.11111111.11111111.11000000 = 255.255.255.192
192.168.111.64 = 11000000.10101000.01101111.01000000
По маске видим что наша сеть будет иметь диапазон ip-адресов
от: 11000000.10101000.01101111.01000000 = 192.168.111.64
до: 11000000.10101000.01101111.01111111 = 192.168.111.127
Где последний адрес будет широковещательный (broadcast).
Адреса хостов нашей сети:
min(в большинстве случаев является шлюзом*
(gateway)): 11000000.10101000.01101111.01000001 = 192.168.111.65
max: 11000000.10101000.01101111.01111110 = 192.168.111.126
маска: 11111111.11111111.11111111.11111100 = 255.255.255.252
IP-адрес: 01010100.11001100.10100110.01001100 = 84.204.166.76
По маске видим что наша сеть будет иметь диапазон ip-адресов
от 01010100.11001100.10100110.01001100 = 84.204.166.76
до 01010100.11001100.10100110.01001111 = 84.204.166.79
Адреса хостов подсети:
min(шлюз*
(gateway)): 01010100.11001100.10100110.01001101 = 84.204.166.77
модем\комп(если bridge)
: 01010100.11001100.10100110.01001110 = 84.204.166.78
broadcast : 01010100.11001100.10100110.01001111 = 84.204.166.79
*Сетевой шлюз — аппаратный маршрутизатор (англ. gateway) или программное обеспечение для сопряжения компьютерных сетей, использующих разные протоколы (например, локальной и глобальной). Сетевые шлюзы могут быть аппаратным решением, программным обеспечением или тем и другим вместе, но обычно это программное обеспечение, установленное на роутер или компьютер.
IP калькулятор
Калькулятор производит расчет адреса сети IPv4, широковещательного адреса, ip-адрес первого узла, ip-адрес последнего узла, количество узлов в заданной сети, маску подсети и инверсию маски (wildcard mask).
Данные представлены в десятичной и двоичных системах исчисления.
При построении сети, классы подсетей выбираются исходя из предполагаемого количества узлов в компьютерной сети. Если изначально выбрана подсеть вмещающая малое количество узлов (например, класс С c маской 255.255.255.0), при большом росте компьютерной сети часто приходится менять подсеть и маску подсети, чтобы не усложнять адресацию.
И наоборот, если изначально выбрана подсеть включающая в себя огромное количество хостов (например, класса А с маской 255.0.0.0), то при возникновении в компании филиальной сети, приходится сжимать подсети чтобы выделять подсети под филиалы.
Для того, чтобы рассчитать сетевые параметры, укажите IP-адрес хоста и маску подсети.
Справочная информация для IPv4:
Адреса зарезервированные для особых целей:
| Подсеть | Назначение |
|---|---|
| 0.0.0.0/8 | Адреса источников пакетов «этой» («своей») сети, предназначены для локального использования на хосте при создании сокетов IP. Адрес 0.0.0.0/32 используется для указания адреса источника самого хоста. |
| 10.0.0.0/8 | Для использования в частных сетях. |
| 127.0.0.0/8 | Подсеть для коммуникаций внутри хоста. |
| 169.254.0.0/16 | Канальные адреса; подсеть используется для автоматического конфигурирования адресов IP в случает отсутствия сервера DHCP. |
| 172.16.0.0/12 | Для использования в частных сетях. |
| 100.64.0.0/10 | Для использования в сетях сервис-провайдера. |
| 192.0.0.0/24 | Регистрация адресов специального назначения. |
| 192.0.2.0/24 | Для примеров в документации. |
| 192.168.0.0/16 | Для использования в частных сетях. |
| 198.51.100.0/24 | Для примеров в документации. |
| 198.18.0.0/15 | Для стендов тестирования производительности. |
| 203.0.113.0/24 | Для примеров в документации. |
| 240.0.0.0/4 | Зарезервировано для использования в будущем. |
| 255.255.255.255 | Ограниченный широковещательный адрес. |
Зарезервированные адреса, которые маршрутизируются глобально.
Как вычислить сетевой и широковещательный адрес
wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали авторы-волонтеры.
Количество просмотров этой статьи: 67 991.
Если вы собираетесь настраивать сеть, то вам нужно знать, как распределять ее. Для этого необходимо знать сетевой и широковещательный адреса сети. Следуйте шагам ниже, чтобы узнать, как вычислить эти адреса, если у вас есть IP-адрес и маска подсети.
Общее число битов Tb = 8 Число битов используемое для подсетей n = 3(так как маска подсети равна 224, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 3)
Значение последнего бита, используемого для маски подсети = Δ = 2 m = 2 5 = 32
Общее число битов = Tb = 8 Число битов используемое для подсетей = n = 2 (так как маска подсети равна 192, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 2).
Значение последнего бита, используемого для маски подсети = Δ = 2 m = 2 6 = 64
Число битов, используемое для подсетей для маски 240 = n1 = 4
(так как маска подсети равна 240, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 4)
Число битов, используемое для подсетей для маски 0 = n1 = 0
(так как маска подсети равна 0, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 0)
Число подсетей для маски 240 = 2 n1 = 2 4 = 16
Число подсетей для маски 0 = 2 n2 = 2 0 = 1
Значение последнего бита, используемого для маски подсети для маски 240 = Δ1 = 2 m1 = 2 4 = 16
Значение последнего бита, используемого для маски подсети для маски 0 = Δ2 = 2 m2 = 2 8 = 256
Для маски подсети 240, адреса будут разделены по 16, а для маски 0 их будет 256. Используя значения Δ1 и Δ2, получим 16 подсетей ниже
IP-адрес 100.5.150.34 относится к подсети 100.5.144.0 – 100.5.159.255, поэтому 100.5.144.0 — адрес сети, а — 100.5.159.255 широковещательный адрес.
| Маска подсети | 0 | 128 | 192 | 224 | 240 | 248 | 252 | 254 | 255 |
| Число битов, используемых для подсетей (n) | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
Число битов, используемое для подсетей для маски 128 = n1 = 1
(так как маска подсети равна 128, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 1)
Число битов, используемое для подсетей для маски 0 = n2 = n3 = 0
(так как маска подсети равна 0, а соответствующее «число битов используемое для подсетей» из таблицы сверху равно 0)
Число подсетей для маски 128 = 2 n1 = 2 1 = 2
Число подсетей для маски 0 = 2 n2 = 2 n3 = 2 0 = 1
Для маски подсети 128, адреса будут разделены по 128, а для маски 0 их будет 256. Используя значения Δ1 и Δ2, получим 2 подсети ниже
IP-адрес 200.222.5.100 относится к подсети 200.128.0.0 – 200.255.255.255, и поэтому 200.128.0.0 — адрес подсети, а 200.255.255.255 — широковещательный адрес.
Полезные советы для расчета сетевой IP адресации

Быстрый расчет IP сетей
В сегодняшней статье мы постараемся отметить основные моменты для быстрого расчета IPv4 сетей. Хоть сейчас и идет постепенный переход на IPv6, все же IPv4 адресация еще долго будет в тренде и умение быстро рассчитывать IPv4 сети многим может пригодиться. Данная статья написана и оформлена совместно с моим коллегой и преподавателем сетевой академии CISCO — Кузьминым Евгением.
Все мы привыкли к отображению IP адреса в виде четырех десятичных чисел, разделенных точками (также их называют октетами, так как они формируются из 8 бит). Все мы знаем, что компьютер для расчетов использует двоичную систему счисления, поэтому для компьютера сетевой адрес, например 192.168.1.1, имеет вид:
11000000 10101000 00000001 00000001
Маска подсети в двоичном виде выглядит как последовательность единиц, а затем нулей и указывает на то, сколько первых битов IP-адреса будут относится к адресу сети (у всех компьютеров в одной сети они будут одинаковые), а остальные биты будут относится к адресу каждого узла (у всех компьютеров в одной сети они будут разные). Есть специальные адреса: адрес сети — адрес, у которого узловая часть состоит из одних нулей, и широковещательный адрес — это адрес, у которого узловая часть состоит из одних единиц. Например, маска вида 255.255.255.0 в двоичном виде выглядит:
11111111 11111111 111111111 00000000
и указывает на то, что первые 24 бита относятся к адресу сети, а последние восемь к адресу конкретного узла в этой сети. Маска сети также может быть записана, как просто число, указывающее количество первых битов, относящихся к адресу сети. В данном случае — 24.
Со стандартными маскам все легко, они имеют вид; 255.0.0.0, 255.255.0.0 и 255.255.255.0 и четко отделяют узловую часть от сетевой по границе каждого октета. Поэтому, для формировани адреса сети, октеты, у которых маска 255, мы не изменяем. а октеты у которых маска 0, превращаем в 0 (для широковещательного адреса в 255). Напимер, для адреса 192.168.25.128 с маской 255.255.0.0, адрес сети будет 192.168.0.0, а широковещательный – 192.168.255.255.
Но когда нужно разделить сети на более мелкие подсети или объединить несколько сетей в одну общую могут возникнуть сложности. Основное — это запомнить, что каждое десятичное число в адресе состоит из 8 двоичных битов, и нужно знать десятичное значение каждого бита, которое является степенью двойки.
Пример 1
Есть IP адрес 192.168.1.37/28, необходимо определить адрес сети и широковещательный адрес.
Пример 2
Есть IP адрес 192.168.1.37/255.255.255.240, необходимо определить адрес сети.
Получаем адрес сети 192.168.1.32
Пример 3
Записать маску вида 255.255.255.240 в маску вида “/x”.
Значит 255.255.255.240 = /28
Пример 4
Записать маску вида /28 в маску вида XXX.XXX.XXX.XXX
Значит маска: 255.255.255.240.
Заключение
Как я уже говорил эта статья была написана и опубликована совместно c моим коллегой Евгением Кузьминым. В будущем мы планируем продолжить писать совместные статьи связанные с сетевыми технологиями и настройкой сетевого оборудования (маршрутизаторы, коммутаторы)
Если вам нужно что-то настроить или получить консультацию по медиасерверам и системам, можете обращаться ко мне и нашей команде через форму контактов.





