Сети для самых маленьких. Часть нулевая. Планирование
Это первая статья из серии «Сети для самых маленьких». Мы с товарищем thegluck долго думали с чего начать: маршрутизация, VLAN’ы, настройка оборудования.
В итоге решили начать с вещи фундаментальной и, можно сказать, самой важной: планирование. Поскольку цикл рассчитан на совсем новичков, то и пройдём весь путь от начала до конца.
Предполагается, что вы, как минимум читали о эталонной модели OSI (то же на англ.), о стеке протоколов TCP/IP (англ.), знаете о типах существующих VLAN’ов (эту статью я настоятельно рекомендую к прочтению), о наиболее популярном сейчас port-based VLAN и о IP адресах (более подробно). Мы понимаем, что для новичков «OSI» и «TCP/IP» — это страшные слова. Но не переживайте, не для того, чтобы запугать вас, мы их используем. Это то, с чем вам придётся встречаться каждый день, поэтому в течение этого цикла мы постараемся раскрыть их смысл и отношение к реальности.
- В данный момент у компании есть два офиса: 200 квадратов на Арбате под рабочие места и серверную. Там представлены несколько провайдеров. Другой на Рублёвке.
- Есть четыре группы пользователей: бухгалтерия (Б), финансово-экономический отдел (ФЭО), производственно-технический отдел (ПТО), другие пользователи (Д). А так же есть сервера (С), которые вынесены в отдельную группу. Все группы разграничены и не имеют прямого доступа друг к другу.
- Пользователи групп С, Б и ФЭО будут только в офисе на Арбате, ПТО и Д будут в обоих офисах.
- упрощается понимание организации сети
- модель подразумевает модульность, что означает простоту наращивания мощностей именно там, где необходимо
- легче найти и изолировать проблему
- повышенная отказоустойчивость засчет дублирования устройств и/или соединений
- распределение функций по обеспечению работоспособности сети по различным устройствам.
Согласно этой модели, сеть разбивается на три логических уровня: ядро сети (Core layer: высокопроизводительные устройства, главное назначение — быстрый транспорт), уровень распространения (Distribution layer: обеспечивает применение политик безопасности, QoS, агрегацию и маршрутизацию в VLAN, определяет широковещательные домены), и уровень доступа (Access-layer: как правило, L2 свичи, назначение: подключение конечных устройств, маркирование трафика для QoS, защита от колец в сети (STP) и широковещательных штормов, обеспечение питания для PoE устройств).
В таких масштабах, как наш, роль каждого устройства размывается, однако логически разделить сеть можно.
Составим приблизительную схему:
На представленной схеме ядром (Core) будет маршрутизатор 2811, коммутатор 2960 отнесём к уровню распространения (Distribution), поскольку на нём агрегируются все VLAN в общий транк. Коммутаторы 2950 будут устройствами доступа (Access). К ним будут подключаться конечные пользователи, офисная техника, сервера.
Именовать устройства будем следующим образом: сокращённое название города (msk) — географическое расположение (улица, здание) (arbat) — роль устройства в сети + порядковый номер.
Соответственно их ролям и месту расположения выбираем hostname:
Маршрутизатор 2811: msk-arbat-gw1 (gw=GateWay=шлюз)
Коммутатор 2960: msk-arbat-dsw1 (dsw=Distribution switch)
Коммутаторы 2950: msk-arbat-aswN, msk-rubl-asw1 (asw=Access switch)
Документация сети
Вся сеть должна быть строго документирована: от принципиальной схемы, до имени интерфейса.
Прежде, чем приступить к настройке, я бы хотел привести список необходимых документов и действий:
• Схемы сети L1, L2, L3 в соответствии с уровнями модели OSI (Физический, канальный, сетевой)
• План IP-адресации = IP-план.
• Список VLAN
• Подписи (description) интерфейсов
• Список устройств (для каждого следует указать: модель железки, установленная версия IOS, объем RAM\NVRAM, список интерфейсов)
• Метки на кабелях (откуда и куда идёт), в том числе на кабелях питания и заземления и устройствах
• Единый регламент, определяющий все вышеприведённые параметры и другие.
Жирным выделено то, за чем мы будем следить в рамках программы-симулятора. Разумеется, все изменения сети нужно вносить в документацию и конфигурацию, чтобы они были в актуальном состоянии.
Говоря о метках/наклейках на кабели, мы имеем ввиду это:
На этой фотографии отлично видно, что промаркирован каждый кабель, значение каждого автомата на щитке в стойке, а также каждое устройство.
Подготовим нужные нам документы:
Список VLAN
№ VLAN | VLAN name | Примечание |
---|---|---|
1 | default | Не используется |
2 | Management | Для управления устройствами |
3 | Servers | Для серверной фермы |
4-100 | Зарезервировано | |
101 | PTO | Для пользователей ПТО |
102 | FEO | Для пользователей ФЭО |
103 | Accounting | Для пользователей Бухгалтерии |
104 | Other | Для других пользователей |
Каждая группа будет выделена в отдельный влан. Таким образом мы ограничим широковещательные домены. Также введём специальный VLAN для управления устройствами.
Номера VLAN c 4 по 100 зарезервированы для будущих нужд.
IP-план
IP-адрес | Примечание | VLAN |
---|---|---|
172.16.0.0/16 | ||
172.16.0.0/24 | Серверная ферма | 3 |
172.16.0.1 | Шлюз | |
172.16.0.2 | Web | |
172.16.0.3 | File | |
172.16.0.4 | ||
172.16.0.5 — 172.16.0.254 | Зарезервировано | |
172.16.1.0/24 | Управление | 2 |
172.16.1.1 | Шлюз | |
172.16.1.2 | msk-arbat-dswl | |
172.16.1.3 | msk-arbat-aswl | |
172.16.1.4 | msk-arbat-asw2 | |
172.16.1.5 | msk-arbat-asw3 | |
172.16.1.6 | msk-rubl-aswl | |
172.16.1.6 — 172.16.1.254 | Зарезервировано | |
172.16.2.0/24 | Сеть Point-to-Point | |
172.16.2.1 | Шлюз | |
172.16.2.2 — 172.16.2.254 | Зарезервировано | |
172.16.3.0/24 | ПТО | 101 |
172.16.3.1 | Шлюз | |
172.16.3.2 — 172.16.3.254 | Пул для пользователей | |
172.16.4.0/24 | ФЭО | 102 |
172.16.4.1 | Шлюз | |
172.16.4.2 — 172.16.4.254 | Пул для пользователей | |
172.16.5.0/24 | Бухгалтерия | 103 |
172.16.5.1 | Шлюз | |
172.16.5.2 — 172.16.5.254 | Пул для пользователей | |
172.16.6.0/24 | Другие пользователи | 104 |
172.16.6.1 | Шлюз | |
172.16.6.2 — 172.16.6.254 | Пул для пользователей |
Выделение подсетей в общем-то произвольное, соответствующее только числу узлов в этой локальной сети с учётом возможного роста. В данном примере все подсети имеют стандартную маску /24 (/24=255.255.255.0) — зачастую такие и используются в локальных сетях, но далеко не всегда. Советуем почитать о классах сетей. В дальнейшем мы обратимся и к бесклассовой адресации (cisco). Мы понимаем, что ссылки на технические статьи в википедии — это моветон, однако они дают хорошее определение, а мы попробуем в свою очередь перенести это на картину реального мира.
Под сетью Point-to-Point подразумеваем подключение одного маршрутизатора к другому в режиме точка-точка. Обычно берутся адреса с маской 30 (возвращаясь к теме бесклассовых сетей), то есть содержащие два адреса узла. Позже станет понятно, о чём идёт речь.
План подключения оборудования по портам
Разумеется, сейчас есть коммутаторы с кучей портов 1Gb Ethernet, есть коммутаторы с 10G, на продвинутых операторских железках, стоящих немалые тысячи долларов есть 40Gb, в разработке находится 100Gb (а по слухам уже даже есть такие платы, вышедшие в промышленное производство). Соответственно, вы можете выбирать в реальном мире коммутаторы и маршрутизаторы согласно вашим потребностям, не забывая про бюджет. В частности гигабитный свич сейчас можно купить незадорого (20-30 тысяч) и это с запасом на будущее (если вы не провайдер, конечно). Маршрутизатор с гигабитными портами стоит уже ощутимо дороже, чем со 100Mbps портами, однако оно того стоит, потому что FE-модели (100Mbps FastEthernet), устарели и их пропускная способность очень невысока.
Но в программах эмуляторах/симуляторах, которые мы будем использовать, к сожалению, есть только простенькие модели оборудования, поэтому при моделировании сети будем отталкиваться от того, что имеем: маршрутизатор cisco2811, коммутаторы cisco2960 и 2950.
Имя устройства | Порт | Название | VLAN | |
---|---|---|---|---|
Access | Trunk | |||
msk-arbat-gw1 | FE0/1 | UpLink | ||
FE0/0 | msk-arbat-dsw1 | 2,3,101,102,103,104 | ||
msk-arbat-dsw1 | FE0/24 | msk-arbat-gw1 | 2,3,101,102,103,104 | |
GE1/1 | msk-arbat-asw1 | 2,3 | ||
GE1/2 | msk-arbat-asw3 | 2,101,102,103,104 | ||
FE0/1 | msk-rubl-asw1 | 2,101,104 | ||
msk-arbat-asw1 | GE1/1 | msk-arbat-dsw1 | 2,3 | |
GE1/2 | msk-arbat-asw2 | 2,3 | ||
FE0/1 | Web-server | 3 | ||
FE0/2 | File-server | 3 | ||
msk-arbat-asw2 | GE1/1 | msk-arbat-asw1 | 2,3 | |
FE0/1 | Mail-Server | 3 | ||
msk-arbat-asw3 | GE1/1 | msk-arbat-dsw1 | 2,101,102,103,104 | |
FE0/1-FE0/5 | PTO | 101 | ||
FE0/6-FE0/10 | FEO | 102 | ||
FE0/11-FE0/15 | Accounting | 103 | ||
FE0/16-FE0/24 | Other | 104 | ||
msk-rubl-asw1 | FE0/24 | msk-arbat-dsw1 | 2,101,104 | |
FE0/1-FE0/15 | PTO | 101 | ||
FE0/20 | administrator | 104 |
Почему именно так распределены VLAN’ы, мы объясним в следующих частях.
Схемы сети
На основании этих данных можно составить все три схемы сети на этом этапе. Для этого можно воспользоваться Microsoft Visio, каким-либо бесплатным приложением, но с привязкой к своему формату, или редакторами графики (можно и от руки, но это будет сложно держать в актуальном состоянии :)).
Не пропаганды опен сорса для, а разнообразия средств ради, воспользуемся Dia. Я считаю его одним из лучших приложений для работы со схемами под Linux. Есть версия для Виндоус, но, к сожалению, совместимости в визио никакой.
L1
То есть на схеме L1 мы отражаем физические устройства сети с номерами портов: что куда подключено.
L2
На схеме L2 мы указываем наши VLAN’ы
L3
В нашем примере схема третьего уровня получилась довольно бесполезная и не очень наглядная, из-за наличия только одного маршрутизирующего устройства. Но со временем она обрастёт подробностями.
Как видите, информация в документах избыточна. Например, номера VLAN повторяются и на схеме и в плане по портам. Тут как бы кто на что горазд. Как вам удобнее, так и делайте. Такая избыточность затрудняет обновление в случае изменения конфигурации, потому что нужно исправиться сразу в нескольких местах, но с другой стороны, облегчает понимание.
К этой первой статье мы не раз ещё вернёмся в будущем, равно как и вам придётся всегда возвращаться к тому, что вы изначально напланировали.
Собственно задание для тех, кто пока только начинает учиться и готов приложить для этого усилия: много читать про вланы, ip-адресацию, найти программы Packet Tracer и GNS3.
Что касается фундаментальных теоретических знаний, то советуем начать читать Cisco press: раз, два, три (русский язык). Это то, что вам совершенно точно понадобится знать.
В следующей части всё будет уже по-взрослому, с видео, мы будем учиться подключаться к оборудованию, разбираться с интерфейсом и расскажем, что делать нерадивому админу, забывшему пароль.
P.S. Спасибо соавтору статьи — пользователю thegluck.
P.P.S Тем, кто имеет, что спросить, но не имеет возможности свой вопрос здесь задать, милости просим в ЖЖ