Другой способ предоставления пользователям локальной сети доступа в интернет заключается в использовании прокси-сервера.
Более-подробно о том как настраивать общий доступ для локальной сети будет детально расписано в следующих материалах цикла
Прежде чем перейти непосредственно к маскам и шлюзам, стоит дать определения основным устройствам, которые используются в сети.
Сервер — это служба (программа, если хотите), которая запущена на компьютере.
Репитер (повторитель) — это устройство, которое предназначено для усиления сигнала. Используется для увеличения дальности соединения.
Хаб (концентратор) — это устройство, которое содержит несколько портов. При подаче сигнала на один порт — он усиливается и передается на остальные порты. Хаб — это по сути многопортовый репитер. И хаб, и репитер работают на первом (физическом) уровне модели OSI.
Бридж (мост) — это устройство, которое служит для фильтрации трафика по MAC-адресам. Он разделяет домены коллизий.
Свич (коммутатор) — это по сути многопортовый мост. Основной задачей коммутатора служит создание "виртуальных" каналов между устройствами на основе MAC-адресов.
Примечание: Дело в том, что технология Ethernet изначально рассчитывалась на сети с общей средой передачи данных — коаксиальным кабелем. В такой среде часто возникают ситуации, когда два устройства одновременно передают данные. Такая ситуация называется коллизией, а компьютеры в сети, которые подвержены колизии — называются доменом коллизии. Мост и коммутатор разбивают домен коллизии на меньшие части, а вот концентратор коллизии пропускает и в результате домен коллизии увеличивается. Кроме доменов коллизий есть еще и широковещательные домены. Широковещательные рассылки и мост и коммутатор пропускают. И мост, и коммутатор работают исключительно с MAC-адресами. В каждом мосте и коммутаторе существует таблица коммутации. Она представляет по сути таблицу, где каждому порту соответствует определенный набор MAC-адресов. В каждом пакете (точней, фрейме), который пересылается по сети, указан MAC-адрес назначения и MAC-адрес отправителя. Когда такой пакет попадает на порт коммутатора, последний считывает MAC-адрес получателя. Если такого в таблице коммутации нету, то пакет рассылается на все порты, кроме того, откуда он пришел. Адрес отправителя записывается в таблицу коммутации и ему ставится в соответствие порт, на который пакет поступил. Таким образом через некоторое время в таблице коммутации моста или коммутатора будут все MAC-адреса компьютеров в сети, а также порта, к которым последние подключены. Чтобы избавится от "петель" коммутаторы используют протокол STP
Роутер (маршрутизатор) — это устройство, которое предназначено для соединения сетей, фильтрации по IP-адресам, обеспечения политик безопасности, а также многих других функций (DHCP, NAT/PAT…). Роутер работает с IP-адресами пакетов. Каждый роутер должен иметь таблице маршрутизации, где указано какой пакет куда отправлять (или не отправлять ) Таблица маршрутизации может заполнятся как вручную, так и с помощью протоколов маршрутизации (RIP, OSPF, IGRP, EIGRP…). В таблице маршрутизации указывается на какой интерфейс отправлять пакет, который адресован на тот или иной адрес. Именно для роутера огромное значение имеют маски подсети. К каждому интерфейсу роутера должны подключатся разные сети, иначе он может некорректно работать. Коммутатор и мост ни с IP-адресами, ни с масками подсети не работают. Для них это всего лишь данные, которые нужно передать. В этом и состоит основное отличие между маршрутизатором и коммутатором
Вот мы и подошли к такому понятию как маска подсети. Маска подсети — это 32-битное число, которое указывает где в IP-адресе адрес сети, а где адрес компьютера в сети. Выглядит маска сети примерно так: 255.255.255.0 или так 255.255.192.0, или даже так: 255.240.0.0
Особенностью маски подсети является то, что если записать ее в двоичной форме, то слева будут только единички, а справа — нули. Это обязательное условие!
Вот запишем в двоичной форме приведенные выше маски:
255.255.255.0 — 11111111.11111111.11111111.00000000
255.255.192.0 — 11111111.11111111.11000000.00000000
255.240.0.0 — 11111111.11110000.00000000.00000000
Как видим, есть четкая граница между нулями и единицами. Иногда маску 255.255.255.0 обозначают просто как /24 — 24 единицы, вторая маска будет обозначатся как /18, третья в моем примере — /12. В итоге адрес записывают так 192.168.0.1 /24
Все IP-адреса делятся на 5 классов: A, B, C, D и E
A — 0.0.0.0 — 127.255.255.255
B — 128.0.0.0 — 191.255.255.255
C — 192.0.0.0 — 223.255.255.255
D — 224.0.0.0 — 239.255.255.255
E — 240.0.0.0 — 255.255.255.255
Для первых трех классов установлены маски по-умолчанию. Для А — 255.0.0.0 или /8, для В — 255.255.0.0 или /16, для С — 255.255.255.0
Использование других масок тоже разрешено
Примечание: иногда бывают случаи, когда использование масок по-умолчанию нерационально. Яркий пример: соединение двух роутеров. Для соединения нужно всего два IP-адреса. Чтобы избежать нерационального использования IP-адресов и были придуманы сетевые маски переменной длинны — VLSM.
Как я уже отметил, сетевая маска нужна для выделения из IP-адреса компьютера IP-адреса сети или подсети. Делается это побитовой операцией логического И между IP-адресом и маской подсети. Стоит отметить, что IP-адреса, в хостовой части которых все нули являются адресами подсетей и использовать их в качестве IP-адресов компьютеров НЕЛЬЗЯ. Например: IP-адрес 192.168.0.16 с маской 255.255.255.240
будет адресом подсети. Чтобы в этом убедится запишем в двоичной форме сам адрес, а внизу маску подсети:
11000000.10101000.00000000.00010000 — адрес (синим указана хостовая часть адреса, красным — сетевая согласно маске подсети)
11111111.11111111.11111111.11110000 — маска
Как видим, в хостовой части (последние 4 бита) у нашего адреса все нули, следовательно, он является адресом подсети и назначить его назначить его на компьютер не получится. Именно поэтому невозможно назначить компьютеру адрес 192.168.0.0.
Кроме адреса подсети есть еще и широковещательный адрес. Если компьютеру нужно отправить сообщение всем компьютерам в сети, то вместо того, чтобы отправлять сообщение каждому из них, компьютер отправляет сообщение на адрес, в хостовой части которого все единицы. Для сети 192.168.0.0 с маской 255.255.255.0 это будет адрес 192.168.0.255. Для той же сети с маской 255.255.255.240 это будет уже 192.168.0.15
Объясню почему. Запишем опять адрес в двоичной форме:
11000000.10101000.00000000.00000000 — адрес
11111111.11111111.11111111.11110000 — маска
хххххххх. хххххххх. хххххххх. хххх0000 — хостовая часть (жирным)
меняем в хостовой части все нули на единицы, чтобы получить широковещательный адрес:
11000000.10101000.00000000.00001111
и переводим полученное число в десятеричный вид. Получим адрес 192.168.0.15. Аналогично определяются и адреса подсетей.
Примечание: Широковещательные адреса и адреса подсетей нельзя указывать в качестве IP-адресов компьютеров!!!
Вот пример разбиения сети на подсети с помощью масок подсети:
![Компьютерные сети. Принципы, технологии, протоколы img1FA9.jpg](https://litlife.club/books/256890/read/images/img1FA9.jpg)
Как видим, у нас есть большая приватная сеть 10.0.0.0/8. Ее разбили на три подсети поменьше: 10.1.0.0, 10.2.0.0 и 10.3.0.0. Сеть 10.2.0.0 разбили 10.2.1.0, 10.2.2.0 и 10.2.3.0. Из этого примера четко видно, что IP-адреса имеют иерархическую структуру.
Если Вам что-нибудь не ясно в вопросах о подсетях и масках — спрашиваем в этом разделе форума
А теперь перейдем к шлюзам. Шлюз — это устройство, которое обеспечивает связь между сетями. Шлюзом, как правило, выступает роутер, один интерфейс которого подключен к одной сети, а второй — к другой.