Адресация в компьютерной сети


Всего теоретически IPv4-адресов может быть:
232 = 210*210*210*22
 = 1024*1024*1024*4
 ≈ 1000*1000*1000*4 = 4 млрд.
довольно много из них «съедается» под различные нужды.
Четыре октета (байта) в десятичном представлении без начальных нулей, разделенные точками: 192.168.11.10
В заголовке IP-пакета есть поля:  
source IP - адреса источника (кто посылает) 
destination IP: назначения (кому). 
Как на почтовом конверте. 
Внутри пакетов у IP-адресов нет никаких масок. Разделителей между октетами тоже нет. Просто 32-бита на адрес назначения и еще 32 на адрес источника.
Когда IP-адрес присваивается интерфейсу компьютера или маршрутизатора, то кроме самого адреса данного устройства ему назначают еще и маску подсети.
Компьютерам маска подсети нужна для определения границ подсети.
Чтоб каждый мог определить, кто находится с ним в одной подсети, а кто — за ее пределами. Внутри одной сети компьютеры обмениваются пакетами «напрямую», а когда нужно послать пакет в другую сеть — шлют их шлюзу по умолчанию
Маска подсети — это тоже 32-бита. Но в отличии от IP-адреса, нули и единицы в ней не могут чередоваться. Всегда сначала идет сколько-то единиц, потом сколько-то нулей. Например:
255.255.248.0
=11111111.11111111.11111000.00000000
В данном примере длина маски 21 
(21 единица).
В маске сначала записывается N единиц, потом 32-N нулей. Несложно догадаться, что такая форма записи является избыточной. Вполне достаточно числа N, называемого длиной маски. Так и делают: пишут 192.168.11.10/21
вместо
192.168.11.10 255.255.248.0.
IP адрес: 192.168.11.10 
Маска: 255.255.248.0 
Чтобы определить границы подсети, компьютер делает побитовое умножение (логическое И) между IP-адресом и маской, получая на выходе адрес с обнуленными битами в позициях нулей маски. Рассмотрим пример 192.168.11.10/21:

11000000.10101000.00001011.00001010 – адрес компьютера;
11111111.11111111.11111000.00000000 – маска подсети.
---------------------------------------------- - поразрядная конъюнкция.
11000000.10101000.00001000.00000000 = 192.168.8.0  - это и есть адрес сети (подсети)

Адрес 192.168.8.0, со всеми обнуленными битами на позициях, соответствующих нулям в маске, называется адресом подсети.
Его нельзя использовать в качестве адреса для интерфейса того или иного хоста. Если же эти биты (соответствующие 0 в маске) наоборот, установить в единицы, то получится адрес:
11000000.10101000.00001111.11111111, или
192.168.15.255.
Этот адрес называется широковещательным адресом (бродкастом) для данной сети.
Рассмотрим пример 192.168.11.10/21:
Адрес компьютера:
11000000.10101000.00001011.00001010
Маска:
11111111.11111111.11111000.00000000
Адрес сети:
11000000.10101000.00001000.00000000
Широковещательный адрес
11000000.10101000.00001111.11111111=
192.168.15.255
Этот адрес также нельзя использовать в качестве адреса хоста.

Количество хостов в подсети определяется как 232-N-2, где N — длина маски. Чем длиннее маска, тем меньше в ней хостов.
Маска:
11111111.11111111.11111000.00000000
Длина маски 21.
Компьютеров в подсети 232-21-2=2046
(не учитываем адрес сети и широковещательный адрес)
Рассмотрим пример 192.168.11.10/21:
Адрес компьютера:
11000000.10101000.00001011.00001010
Маска:
11111111.11111111.11111000.00000000
Порядковый номер компьютера в подсети:
011.000010102=776
Задача.
Маска подсети 255.255.255.224 и IP-адрес компьютера в сети 162.198.0.157.
Определить:
  1. Адрес подсети;
  2. Широковещательный адрес;
  3. Количество компьютеров в сети;
  4. Порядковый номер компьютера в сети.

Маска:
11111111.11111111.11111111.11100000
Адрес компьютера:
10100010.11000110.00000000.10011101
Адрес подсети (побитовая конъюнкция)
10100010.11000110.00000000.10000000
162.198.0.128

Маска:
11111111.11111111.11111111.11100000
Адрес подсети :
10100010.11000110.00000000.10000000
Бродкаст:
10100010.11000110.00000000.10011111
162.198.0.159

Маска:
11111111.11111111.11111111.11100000
Длина маски: 27

Количество адресов: 232-27-2=30

Маска:
11111111.11111111.11111111.11100000
Адрес компьютера:
10100010.11000110.00000000.10011101
Номер компьютера в сети
111012=29


Комментариев нет:

Отправить комментарий