9

Какая польза от маски подсети?

Что представляет собой вывод ниже, передаваемый пользователю?

 Connection-specific DNS Suffix  . :
 IP Address. . . . . . . . . . . . : 192.168.1.2
 Subnet Mask . . . . . . . . . . . : 255.255.255.0
 Default Gateway . . . . . . . . . : 192.168.1.1

В общем, зачем мне маска подсети, когда у меня есть IP?

5 ответов5

22

Если вы думаете о своем IP-адресе как о номере телефона:

  • маска подсети говорит вам, сколько цифр являются частью кода города
  • остальные цифры - ваш индивидуальный номер под этим кодом города
16

краткое

Ваша маска подсети используется для определения вашей локальной сети или подсети. Вы можете получить доступ ко всему внутри той же подсети напрямую, но все, что не находится в вашей подсети, требует, чтобы запрос проходил через шлюз.

Таким образом, для домашнего пользователя ваша подсеть будет вашей домашней сетью - все ваши компьютеры и беспроводные устройства могут напрямую общаться друг с другом. Но Интернет находится за пределами вашей подсети, поэтому все коммуникации должны проходить через ваш шлюз (обычно маршрутизатор).

Слегка Технический

Подсеть - это 32-битная длинная битовая маска (как затронул Манаф Або.Rous), обычно записывается в виде четырех 8-битных байтов. Обратите внимание, что 255 - это 11111111 (8 единиц) в двоичном виде.

Маска в основном означает «только те IP-адреса, которые имеют одинаковые номера в местах, определенных маской подсети, находятся в моей локальной сети».

Таким образом, подсеть 255.255.255.0 означает, что каждый IP-адрес, который совпадает с первыми тремя байтами, является вашей локальной сетью, с указанными вами номерами это что-либо, совпадающее с 192.168.001.### . Альтернативно, более широкая подсеть 255.255.0.0 сделает вашу локальную сеть 192.168.###.### .

Более технический

Значения байтов не всегда должны быть 255, у вас может быть 255.255.255.240 , что составляет 28 единиц и 4 нуля. Это означает, что первые 28 бит другого IP-адреса должны соответствовать вашим, чтобы быть в том же подмножестве. Маска подсети всегда должна быть определенным числом 1, за которым следуют только нули, чтобы сделать 32-битные, и поэтому она может быть также представлена как /28 (в данном случае в любом случае) со значением, показывающим, сколько единиц содержит маска - это обычно используется в контексте IP, например, 192.168.1.2/28

Таким образом, если ваш IP-адрес 192.168.1.2 с маской подсети 255.255.255.240 , то ваша подсеть имеет диапазон IP-адресов от 192.168.1.0 до 192.168.1.15 (хотя самый низкий и самый высокий обычно не используются для устройств, поскольку они имеют специальные функции). Если ваш IP был 192.168.1.53 ваша сеть будет иметь диапазон от 192.168.1.48 до 192.168.1.63 .

Обратите внимание, как оба этих набора содержат 16 уникальных адресов? Подсеть также определила, насколько велика подсеть, потому что она определяет, сколько IP-адресов доступно.

А теперь с двоичным

Наконец, перефразируя Манафа Або.Ответ Рауса , давайте посмотрим на двоичный файл.

Мы начнем с использования маски 255.255.255.0 , здесь она в двоичном виде:

11111111 11111111 11111111 00000000

Итак, учитывая ваш IP, вы знаете, что каждый IP в локальной сети соответствует этим первым 24, поэтому давайте проверим ваш IP (192.168.1.2) в двоичном виде:

11000000 10101000 00000001 00000010 

Теперь мы только посмотрим, где находятся 1 в подсети, чтобы получить номер вашей подсети:

11000000 10101000 00000001 --------

И теперь мы знаем, что каждый IP в вашей локальной сети начинается с номера вашей подсети, и в конце может быть что угодно с пропущенными значениями.

Наконец, давайте рассмотрим второй пример с использованием IP 192.168.1.53 и подсети 255.255.255.240:

11111111 11111111 11111111 11110000  [subnet] 
11000000 10101000 00000001 00110101  [IP]
11000000 10101000 00000001 0011----  [subnet number]

И опять же, ваши локальные IP-адреса будут иметь что-либо в последних четырех двоичных значениях - от 0000 , 0001 и т.д. До 1111 - или в десятичном виде от 0 до 15 - но помните, что перед ними будет 0011 чтобы сделать полный байт, так что на самом деле Доступные IP- адреса : 00110000 (48), 00110001 (49) и т. д. до 00111111 , что составляет 63.

5

Маска подсети используется для определения IP-адреса вашей сети.

Применение логической операции « И» к вашему IP-адресу и маске подсети выведет ваш сетевой IP-адрес.

в приведенном выше примере

IP-адрес: 11000000 10101000 00000001 00000010 = 192.168.1.2

Маска подсети: 11111111 11111111 11111111 00000000 = 255.255.255.0

AND Результат: 11000000 10101000 00000001 00000000 = 192.168.1.0 = Ваш сетевой адрес

Больше информации здесь

1

Маска подсети разделяет IP на две части: сетевую (или подсетевую) часть и часть хоста. Предыдущие комментарии прекрасно это иллюстрируют.

Все, где сетевая часть IP одинакова, может обмениваться данными без необходимости проходить через маршрутизатор. Разумеется, IP-адрес узла должен отличаться для каждого устройства.

Если у вас было 4 компьютера с этими масками IP/ подсети:

host_11 - 192.168.2.1/255.255.255.0

host_12 - 192.168.2.2/255.255.255.0

gateway - 192.168.2.3/255.255.255.0

host_21 - 192.168.3.5/255.255.255.0

только первые 3 могли общаться. Четвертый не ответил бы, потому что он не находится в той же подсети.

"Шлюз по умолчанию" - это причудливое имя для маршрутизатора, и оно должно быть в той же сети. Возможно, вы видели вывод ipconfig, где нет шлюза по умолчанию. Это означает, что нет маршрутизации; т.е. связь может происходить только между IP-адресами в этой сети.

Следуя нашему примеру:

host_11 - 192.168.2.1/255.255.255.0; default gateway 192.168.2.3

host_12 - 192.168.2.2/255.255.255.0; default gateway 192.168.2.3

gateway - 192.168.2.3/255.255.255.0

host_21 - 192.168.3.5/255.255.255.0; default gateway 192.168.2.3

Если бы 192.168.2.1 хотел говорить, скажем, 192.168.3.5, то в итоге 192.168.2.3 получает этот трафик и затем пересылает его. (Маршрутизация переадресация.) Для 192.168.2.3 потребуется второй IP-адрес, настроенный на что-то вроде 192.168.3.1/255.255.255.0. Тогда для 192.168.3.5 необходимо, чтобы его шлюз по умолчанию был настроен на что-то в своей подсети, которым является 192.168.3.1.

Итак, на самом деле, это действительно выглядит так:

host_11 - 192.168.2.1/255.255.255.0; default gateway 192.168.2.3

host_12 - 192.168.2.2/255.255.255.0; default gateway 192.168.2.3

gateway - first IP 192.168.2.3/255.255.255.0, second IP 192.168.3.1/255.255.255.0

host_21 - 192.168.3.5/255.255.255.0; default gateway 192.168.3.1

Так что теперь 192.168.2.Х и 192.168.3.X сети могут общаться друг с другом. Конечно, они не могут общаться ни с какой другой сетью или Интернетом. Шлюзу потребуется третий IP-адрес, подключенный к интернет-провайдеру, и он должен быть установлен в качестве шлюза по умолчанию. Затем шлюз получает трафик не из той же сети с 192.168.2.Х и 192.168.3.ИКС.

Вы можете установить правила маршрутизации для ситуаций, когда шлюз не может выяснить все самостоятельно. В этом примере нам это не нужно, поскольку все сети подключены к маршрутизатору. Однако в ситуациях, когда у вас есть сеть с несколькими маршрутизаторами (шлюзами по умолчанию) или "сетями за сетями", необходимо указать правила маршрутизации. Это входит в некоторые продвинутые вещи. Я надеюсь, что это было полезно.

1

Маска подсети используется для маршрутизации IP-пакетов.

По сути, вы берете IP-адрес назначения, and он с маской и, если он соответствует значению, вы используете этот маршрут.

Например, вот один из моих выводов из netstat -nrv:

Destination      Netmask          Gateway         Interface
192.168.182.0    255.255.255.0    192.168.182.1   192.168.182.1

Это означает, что любой IP-адрес в форме 192.168.182.x будет маршрутизироваться на основе этого правила, потому что любой адрес этого формата, когда and -ed с 255.255.255.0 (маска сети), даст 192.168.182.0 (пункт назначения).

Точно так же маршрут по умолчанию будет:

Destination      Netmask          Gateway         Interface
0.0.0.0          0.0.0.0          9.185.149.1     9.185.149.52

поскольку любой адрес and -ed с 0.0.0.0 дает 0.0.0.0 .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .