Маска подсети/сети и ее назначение в протоколе IP: как узнать IP-адрес шлюза.

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

Блог: http://zametkinapolyah.ru/
Полезное в блоге: http://zametkinapolyah.ru/veb-programmirovanie и http://zametkinapolyah.ru/servera-i-protokoly
Паблик блога в ВК: https://vk.com/zametkinapolyah

Если взглянуть на структуру IP-пакета, то мы там никогда не увидим маски подсети, в пакете есть две 32-ух битных последовательности (да, разделителей между октетами IP-адреса в пакете тоже нет). Одна последовательность является адресом отправителя, а вторая последовательность адресом получателя.
Но когда мы настраиваем подключение на своем компьютере, помимо IP-адреса, нам следует указать маску подсети или маску сети, которая помогает определить компьютеру какое устройство находится в своей сети, а какое в чужой.
Если устройство из своей сети, то никакой маршрутизации не происходит, данные передаются напрямую, для этого используется, к примеру, протокол ARP. Но, если компьютер видит, что IP-адрес не из его сети, то он обращается к маршрутизатору (да, каждому компьютеру мы прописываем третий параметр – адрес шлюза, к шлюзам мы еще вернемся, сейчас поговорим о том, как происходит определение свой-чужой).
Маска подсети, как и IP-адрес состоит из 32-ух бит, но, суть маски в том, что первых N-бит должны быть строго единицы, а последующие M-бит строго нули: 32-N=M.
Пример маски, которая не может существовать: 255.255.98.0
Ее двоичный вид: 11111111 11111111 01100010 00000000
Пример маски: 255.255.255.248
Ее двоичный вид: 11111111 11111111 11111111 11111000
Вместо длиной маски можно вполне себе использовать префикс:
192.168.1.0/29. Такая запись говорит о том, что первых 29 бит в маске – это номер сети, а 3 бита отданы под номер узла. Тут можно подумать, что 2 в 3 – это восемь, следовательно в нашей подсети может быть восемь компьютеров, но не тут-то было.
Да, в такой подсети у нас будет 8 IP-адресов, но один IP-адрес уйдет на номер шлюза, обычно это первый адрес: 192.168.1.0, и есть широковещательный адрес: 192.168.1.7. Следовательно, у нас остается 6 адресов, которые мы можем присваивать компьютерам.
Еще нам стоит отметить, что маска подсети – это основной метода бесклассовой маршрутизации (CIDR).
IP-адрес: 10.20.30.41
Маска подсети: 255.255.255.252

IP адрес в двоичном виде: 00001010 00010100 00011110 00101001
(Логическое И)
Маска подсети в двоичном виде: 11111111 11111111 11111111 11111100

Номер сети в двоичном виде: 00001010 00010100 00011110 00101000
Номер узла в двоичном виде: 00000000 00000000 00000000 00000001
Номер сети: 10.20.30.40
Номер узла в данной сети: 0.0.0.1
Нам осталось рассмотреть подсети: /32 и /31. Первая – это вовсе не подсеть, а просто один единственный IP-адрес, который может использоваться для служебных целей администратора или для написания правил firewall.
Некоторые администраторы, руководствуются правилом как бы чего не наворотить не используют маски /31, хотя современные маршрутизаторы прекрасно с ними работают: в этом случае нулевой хост используется как номер сети, а броадкаст адрес используется как номер машины в этой сети.

Композиция “All Good In The Wood” принадлежит исполнителю Audionautix. Лицензия: Creative Commons Attribution (https://creativecommons.org/licenses/by/4.0/).
Исполнитель: http://audionautix.com/

ПРИСОЕДИНЯЙТЕСЬ
Поделиться

Кирилл Антонов

Канал для начинающего веб-разработчика. Здесь ты найдешь различные видео уроки о технологиях и программном обеспечение, которые используют веб-разработчики.



Обсуждение закрыто.