...

Как найти номер компьютера в сети по Ip и маске

Еще пример задания:

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1;младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.Например,маска подсети может иметь вид:

11111111 11111111 11100000 00000000 (255.255.224.0)

Это значит, что 19 старших бит в IP-адресе содержит адрес сети, оставшиеся 13 младших бит содержат адрес компьютера в сети. Если маска подсети 255.255.255.240 и IP-адрес компьютера в сети 162.198.0.44, то порядковый номер компьютера в сети равен_____

Решение (1 способ):

  1. эта задача аналогична предыдущей с той разницей, что требуется определить не номер сети, а номер компьютера (узла) в этой сети
  2. нужно помнить, что каждая часть в IP-адресе (и в маске) – восьмибитное двоичное число, то есть десятичное число от 0 до 255 (поэтому каждую часть адреса и маски называют октетом)
  3. первые три числа в маске равны 255, в двоичной системе это 8 единиц, поэтому первые три числа IP-адреса компьютера целиком относятся к номеру сети
  4. для последнего числа (октета) маска и соответствующая ей последняя часть IP-адреса равны
  1. выше голубым цветом выделены нулевые биты маски и соответствующие им биты IP-адреса, определяющие номер компьютера в сети: 11002= 12
  2. Ответ: 12.
  1. п. 1-3 – так же, как и в способе 1;
  2. последнее число в маске – 240; в такую подсеть входят адреса, в которых четвертый октет может принимать 256 – 240 = 16 разных значений
  3. выпишем адреса, принадлежащие всем возможным подсетям такого вида (четвертый октет изменяется от 0 с шагом 16):
    Начальный IP-адрес (адрес сети) Конечный IP-адрес (широковещательный)
    162.198.0.0 162.198.0.15
    162.198.0.16 162.198.0.31
    162.198.0.32 162.198.0.47
    .
  4. смотрим, что нужный нам адрес 162.198.0.44 оказывается в подсети с адресом 162.198.0.32
  5. номер компьютера 162.198.0.44 в сети 162.198.0.32 находим как 44 – 32 = 12
  6. таким образом, ответ: 12

Еще пример задания:

  1. первые два числа в маске равны 255, в двоичной системе это 8 единиц, поэтому первые два числа IP-адреса компьютера целиком относятся к номеру сети и про них (в этой задаче) можно забыть
  2. последнее число в маске – 0, поэтому последнее число IP-адреса целиком относится к номеру узла
  3. третье число маски – 240=111100002, это значит, что первые 4 бита третьей части адреса (75) относятся к адресу сети, а последние 4 бита – к номеру узла:
  1. выше голубым цветом выделены нулевые биты маски и соответствующие им биты IP-адреса, определяющие старшую часть номера компьютера в сети: 10112= 11
  2. кроме того, нужно учесть еще и последнее число IP-адреса (44 = 001011002), таким образом, полный номер компьютера (узла) в двоичной и десятичной системах имеет вид
  1. для получения полного номера узла нужно перевести число 1011001011002в десятичную систему:1011001011002=2860или, что значительно удобнее, выполнить все вычисления в десятичной системе: первое число в полученном двухкомпонентном адресе 11.44 умножается на 2 8 = 256 (сдвигается на 8 битов влево), а второе просто добавляется к сумме:
  1. Ответ: 2860.
  1. п. 1-2 – так же, как и в способе 1;
  2. третье число в маске (соответствующее неизвестному X) – 240; в такую подсеть входят адреса, в которых третий октет (третье число IP-адреса) может принимать 256 – 240 = 16 разных значений
  3. выпишем адреса, принадлежащие всем возможным подсетям такого вида (третий октет изменяется от 0 с шагом 32):
    Начальный IP-адрес (адрес сети) Конечный IP-адрес (широковещательный)
    162.198.0. 0 162.198.15.255
    162.198.16. 0 162.198.31.255
    162.198.32. 0 162.198.47.255
    162.198.48. 0 162.198.63.255
    162.198.64. 0 162.198.79.255
    .
  4. смотрим, что нужный нам адрес 162.198.75.44 оказывается в сети с адресом 162.198.64.0
  5. номер компьютера 162.198.75.44 в сети 162.198.64.0 находим как
  1. таким образом, ответ: 2860

Вычисление номера сети и номера узла по заданному ip-адресу и маске

Для вычисления номера сети по заданному IP-адресу и маске необходимо применить побитовую операцию “И” к адресу и маске. Такая операция называется наложением маски на адрес.

На рисунке 3 представлено табличное побитовой операции “И”.

1-ый операнд

2-ой операнд

Рис. 3. Определение побитовой операции “И”

Для вычисления номера узла по заданному IP-адресу и маске необходимо применить побитовую операцию “И” к адресу и результату применения побитовой операции “НЕ” к маске.

На рисунке 4 представлено табличное определение унарной операции побитового отрицания

“НЕ” (побитового дополнения).

Значение “НЕ”

Рис. 4. Определение побитовой операции “НЕ”

Применим побитовую операцию “И” к однобайтовым числам 185 и 221.

Представим числа в двоичной форме: 185 = 10111001, 221 = 11011101.

Применим побитовую операцию “НЕ” к числу 185.

Вычислим номер сети и номер узла для адреса 215.17.125.177 и маски 255.255.255.240.

IP-адрес: 215.17.125.177 (11010111.00010001.01111101.10110001)

Маска: 255.255.255.240 (11111111.11111111.11111111.11110000)

В этом случае номер сети (Н.с.) и номер узла (Н.у.) будут следующими:

Вычислим номер сети и номер узла для адреса 67.38.173.245 и маски 255.255.240.0.

IP-адрес: 67.38.173.245 (01000011.00100110.10101101.11110101)

Маска: 255.255.240.0 (11111111.11111111.11110000.00000000)

Н.с.: 67.38.160.0 (01000011.00100110.10100000.00000000)

Н.у.: 0.0.13.245 (00000000.00000000.00001101.11110101)

Соответствие блоков адресов номерам сетей на основе масок

При использовании маски, так же, как и в случае адресации на основе классов, номер сети определяет блок адресов с одинаковым префиксом.

В маске 255.255.255.192 (11111111.11111111.11111111.11000000) выделено 26 разрядов под номер сети и 6 разрядов под номер узла.

Номеру сети 192.168.74.64 с данной маской соответствует блок адресов:

Еще пример задания:

Р-01. Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет номер (внутренний адрес) компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1;младшие биты, отведенные в IP-адресе компьютера для номера (внутреннего адреса) компьютера в подсети, имеют значение 0.Например, маска подсети может иметь вид:

11111111 11111111 11100000 00000000 (255.255.224.0)

Это значит, что 19 старших бит в IP-адресе содержит адрес сети, оставшиеся 13 младших бит содержат номер (внутренний адрес) компьютера в сети. Если маска подсети 255.255.240.0 и IP-адрес компьютера в сети 162.198.75.44, то номер компьютера в сети равен_____

Решение (1 способ):

  1. первые два числа в маске равны 255, в двоичной системе это 8 единиц, поэтому первые два числа IP-адреса компьютера целиком относятся к адресу сети и про них (в этой задаче) можно забыть
  2. последнее число в маске – 0, поэтому последнее число IP-адреса целиком относится к номеру узла
  3. третье число маски – 240=111100002, это значит, что первые 4 бита третьей части адреса (75) относятся к адресу сети, а последние 4 бита – к номеру узла:
  1. выше голубым цветом выделены нулевые биты маски и соответствующие им биты IP-адреса, определяющие старшую часть номера компьютера в сети: 10112= 11
  2. кроме того, нужно учесть еще и последнее число IP-адреса (44 = 001011002), таким образом, полный номер компьютера (узла) в двоичной и десятичной системах имеет вид
  1. для получения полного номера узла нужно перевести число 1011001011002в десятичную систему:1011001011002=2860или, что значительно удобнее, выполнить все вычисления в десятичной системе: первое число в полученном двухкомпонентном адресе 11.44 умножается на 2 8 = 256 (сдвигается на 8 битов влево), а второе просто добавляется к сумме:
  1. Ответ: 2860.
  1. п. 1-2 – так же, как и в способе 1;
  2. третье число в маске (соответствующее неизвестному X) – 240; в такую подсеть входят адреса, в которых третий октет (третье число IP-адреса) может принимать 256 – 240 = 16 разных значений
  3. выпишем адреса, принадлежащие всем возможным подсетям такого вида (третий октет изменяется от 0 с шагом 32):
    Начальный IP-адрес (адрес сети) Конечный IP-адрес (широковещательный)
    162.198.0. 0 162.198.15.255
    162.198.16. 0 162.198.31.255
    162.198.32. 0 162.198.47.255
    162.198.48. 0 162.198.63.255
    162.198.64. 0 162.198.79.255
    .
  4. смотрим, что нужный нам адрес 162.198.75.44 оказывается в сети с адресом 162.198.64.0
  5. номер компьютера 162.198.75.44 в сети 162.198.64.0 находим как
  1. таким образом, ответ: 2860

При подготовке материала использовались источники:
https://studfile.net/preview/4019231/page:3/
https://studfile.net/preview/17094673/page:5/
https://studfile.net/preview/5998142/page:4/