Итак, железка для коммутации заказана, приедет ориентировочно в среду, 14.07.2010. После ее приезда и будет продолжение. После перелистывания прайсиков и оценки стоимости и сроков доставки, выбор пал на этого зверька Коммутатор HP ProCurve 1810G-8
И сразу вопрос, а зачем? Для чего?
События развивались так, сначала был один провайдер, проблем никаких не было. Провайдера в одну сетевую, локалку — в другу.
Потом появился второй провайдер… Ну что-же, еще одну сетевую в сервер.
Теперь появляется еще один провайдер ..., а сетевые больше втыкать и не куда, слоты закончились. Досадно, но надо как-то искать выход из данной ситуации.
А теперь немного теории, практика будет только после доставки зверька.
Есть такое понятие VLAN. VLAN (аббр. от англ. Virtual Local Area Network) — виртуальная локальная компьютерная сеть, представляет собой группу хостов с общим набором требований, которые взаимодействуют так, как если бы они были подключены к широковещательному домену, независимо от их физического местонахождения. VLAN имеет те же свойства, что и физическая локальная сеть, но позволяет конечным станциям группироваться вместе, даже если они не находятся в одной физической сети. Такая реорганизация может быть сделана на основе программного обеспечения вместо физического перемещения устройств. Т.е. хосты находящиеся в одном вилане могут общаться только с хостами внутри этого вилана. В другие виланы им вход заказан. Нам это пригодится, чтоб не гонять ethernet трафик от одного провайдера, в другого. Отсюдова следует — что каждый провайдер будет заведен в свой вилан, который никак не связан с виланом другого провайдера! Это очень важно!!!
У нас получилось, что в коммутаторе будет создана 3 вилана, в каждом вилане будет по одному порту, в каждый из которых будет вставлен отдельный провайдер.
Есть такое понятие транк — это порт (или несколько портов), который принадлежит сразу нескольким виланам одновременно. При этом, к ethernet-фрейму при передаче по транку еще добавляется метка вилана (тэг). Такой трафик называется тэгированый. Таким образом на наш сервер будет попадать тегированый трафик. Сервер, на основе метке вилана будет знать — с какого провайдера пришел трафик.
Чего мы этим добьемся?
В сервер будет всего один кабель, в одну сетевую! Вместо 4 кабелей в разные сетевые!
На условной схеме изображен 8-ми портовый коммутатор, разными цветами помечены разные виланы.
8 порт — транковый порт, который одновременно лежит в первых 4 виланах.
Порты 1,2,3 — выделены для трех разных провайдеров. Порт 4 выделен для ЛВС.
Пока попробую ответить на ваши вопросы, ибо теории тут очень много…
Продолжение следует после получения зверька ...
Все получилось сумбурно, и начал, как обычно с конца :)
1. Проектирование
Разумеется, первый этап — это проектирование сети. Чтоб с проектировать — надо знать, что мы вообще имеем. А имеем мы следующее. У нас есть небольшая ЛВС, состоящая из:
— две рабочих станции;
— сервер;
— беспроводная точка доступа;
— ну и собственно беспроводные клиенты.
Что мы хотим:
— предоставить доступ из локальной сети в глобальную сеть интернет;
— доступ в Интернет из ЛВС осуществляется через сервер;
— предоставить доступ из глобальной сети Интернет к нашему серверу (а именно к файловому хранилищу).
Как будет подключен Интернет:
— Интернет будет приходить в нашу локальную сеть по витой паре;
— Интернет будет поступать от 3 разных провайдеров.
Подытожим все: нужно выпустить локальную сеть в Интернет и дать возможность из Интернет добираться до файлового хранилища на сервере.
Вроде ничего не упустил, теперь зарисуем нашу схемку:
Некоторые замечания. ЛВС предоставляется доступ только через сервер.
Бегло оценив схемку, сразу видно — что придется разбивать сеть на несколько сегментов. Трафик между сегментами будет проходить только через сервер.
Итак, разбиваем нашу сеть не несколько логических сегментов, а именно:
— провайдер 1;
— провайдер 2;
— провайдер 3;
— ЛВС.
И разносим эти сегменты, каждый в свой VLAN:
— VLAN0101 — провайдер 1;
— VLAN0102 — провайдер 2;
— VLAN0103 — провайдер 3;
— VLAN0001 — ЛВС.
Т.к. сервер предоставляет доступ всем этим товарищам, то он соответственно будет находится одновременно в каждом сегменте. Что, зарисуем это безобразие:
На этом проектирование закончено.
Маленькие выкладки: почему выбран гигабитный свитч? Дело в том, что большая часть трафика будет не откуда, а именно из пиринговых сетей провайдеров. Провайдеры подключают по технологии Ethernet, со скоростью подключения 100Мбит/сек. Т.е. скорость от трех провайдеров может суммарно достигать 300Мбит/сек. Поэтому, как минимум, один порт на коммутаторе должен уметь переваривать 300Мбит/сек. Оптимально под это подходит HP ProCurve 1700-8, он содержит 7 портов на скорости 100Мбит/сек, и 1 порт — 1Гбит/сек. Но в разумные сроки его ждать не приходится. HP ProCure 18 серии — все порты гигабитные, и сроки доставки — в пределах недели. Стоимость соответственно повыше.
Продолжаем ждать зверька.
Продолжение следует ...
2. Настраиваем сервер
Пока зверек не приехал, можно приступить к настройке сервера. Сетевая карта вкручена, драйверы проставлены. Проверяем, что получилось:
Все правильно, теперь остается проверить, формируются ли 802.1Q фреймы или нет. Для этого запустим снифер (tcpdump) и посмотрим, что бегает на физическом интерфейсе sk0:
[22:23 root@mira /etc]# tcpdump -e -n -i sk0 vlan
tcpdump: WARNING: sk0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on sk0, link-type EN10MB (Ethernet), capture size 68 bytes
А ничего там не бегает, ибо взяться не откуда трафику :)
Ну что же, пошлем из каждого вилана по DHCP запросу:
[22:27 dk@mira ~]> sudo dhclient vlan1
DHCPDISCOVER on vlan1 to 255.255.255.255 port 67 interval 7
^C
[22:27 dk@mira ~]> sudo dhclient vlan101
DHCPDISCOVER on vlan101 to 255.255.255.255 port 67 interval 5
^C
[22:27 dk@mira ~]> sudo dhclient vlan102
DHCPDISCOVER on vlan102 to 255.255.255.255 port 67 interval 6
^C
[22:27 dk@mira ~]> sudo dhclient vlan103
DHCPDISCOVER on vlan103 to 255.255.255.255 port 67 interval 3
^C
Все правильно, тип фрейма ethertype 802.1Q, виланы внутри фрейма тоже правильные: vlan 1, vlan 101, vlan 102, vlan 103
Собственно на этом настройка сервера пока что завершена, канальный уровень настроили и проверили. Пакеты получаются тэгированые, номера виланов верный.
Предстоящий фронт работ — настроить на коммутаторе виланы, и на порте, идущем в сервер, разрешить тегированый трафик, попутно включить его в нужные виланы.
Продолжение следует ...
Закружили тут, но вот время появилось, и продолжение. Коммутатор привезли, быстро его смонтировал и настроил, поэтому будет описание постфактум.
Коммутатор настраивается только через WEB-интерфейс, ну да ладно. Первым делом скачал и установил новую прошивку с сайта изготовителя. И, что приятно удивило, оказывается на коммутаторе порт #1 поддерживает стандарт 802.3ad (PoE, Power of Etherner), что по-русски — может питаться от другого устройства поддерживающего это стандарт. Возможно в будущем это пригодится. Итак, заходим на WEB-интерфейс:
Вводим и пароль и попадем в интерфейс управления коммутатором:
Теперь чуток остановимся на портах, что куда вставлено. Провайдер «Зеленая точка» еще свой кабель не провел, поэтому пока воткнуты в коммутатор 2 провайдера («Домолинк», «Прокма»), беспроводная точка доступа, и собственно сам сервер. На картинке это выглядит так:
Далее приступаем к настроек VLAN на коммутаторе, для чего заходим в меню «VLANs — VLAN Configuration» и создаем нужные нам VLAN:
После чего приступаем к настройке портов по VLAN, для этого переходим в меню «VLANs — Participation / Tagging»:
Вот тут надо немного остановиться. В верхней части в поле VLAN — выбирается один из созданных нами. На данной картинке выбран VLAN 1. И снизу перечислены все порты коммутатора с разными буквами: T, U и E. T — означает что по данному порту будет передаваться тегированый трафик, U — по порту будет передавать не тегированый трафик. E — порт вообще не принадлежит данному VLAN. Более крупная картинка:
На картинке видно, что:
— порт 1 принадлежит VLAN 1 и по нему передается тегированый трафик;
— порты 2, 3, 4, 5 тоже принадлежать VLAN 1, но по ним передается не тегированый (обычный) трафик;
— порты 6, 7, 8 не принадлежать VLAN 1 (ибо они каждый принадлежать конкретному провайдеру).
Т.е. если на порт 1 поступает ethernet-пакет с типом 802.1Q и в нем будет указан VLAN 1 — то пакет будет считаться принадлежащим VLAN 1.
Теперь заполняем порты по остальным VLAN:
Как видно — порт 1 принадлежит каждому VLAN, причем помечен, что по нему передается тегированый трафик. Таким образом по одному физическому кабелю будет передаваться трафик от 3 разных провайдеров + трафик от локальной сети.
На этом настройка коммутатора закончена, и осталось глянуть ifconfig на сервере, что и делаем:
Все отлично, физический интерфейс завелся в режиме 1000baseT <full-duplex>. Каждый провайдер закреплен за виртуальными интерфейсами vlan101, vlan102, vlan103. Локальная сеть закреплена за vlan1.
Сам физический интерфейс просто передает тегированый трафик.
Дальше можно настраивать использование каналов провайдера, но это уже не в рамках этой статьи. Здесь мы только рассмотрели как через один физический кабель спустить серверу несколько провайдеров и локальную сеть.
Самый дешевый свитч Cisco стоит от 17к, грубо. И он не подходит по ряду параметров, таких как как габариты, энергопотребление :)
Если в качестве терминации транка ..., то сервер — на то и сервер — что предоставляет что-то :) Допустим предоставление файл-помойки
так это же cisco, там тебе впаривают селерон 366 за 50тр и ты радуешься, что дещево :) это совсем другое железо. п3 733 / 256 озу / 32гб на флешке угадай скока стоит? 500тр! :) у меня таких пара есть
Цена, увы, не является техническим показателем :) Вот для примера:
xx-xxxxx-xx> sh ver
Cisco Adaptive Security Appliance Software Version 7.2(4)
Device Manager Version 5.2(4)
Compiled on Sun 06-Apr-08 13:39 by builders
System image file is "disk0:/asa724-k8.bin"
Config file at boot was "startup-config"
fw-cisco-1 up 300 days 9 hours
Hardware: ASA5520, 512 MB RAM, CPU Pentium 4 Celeron 2000 MHz
Internal ATA Compact Flash, 256MB
BIOS Flash M50FW080 @ 0xffe00000, 1024KB
Encryption hardware device : Cisco ASA-55x0 on-board accelerator (revision 0x0)
Boot microcode : CNlite-MC-Boot-Cisco-1.2
SSL/IKE microcode: CNlite-MC-IPSEC-Admin-3.03
IPSec microcode : CNlite-MC-IPSECm-MAIN-2.05
0: Ext: GigabitEthernet0/0 : address is 0021.a0af.c792, irq 9
1: Ext: GigabitEthernet0/1 : address is 0021.a0af.c793, irq 9
2: Ext: GigabitEthernet0/2 : address is 0021.a0af.c794, irq 9
3: Ext: GigabitEthernet0/3 : address is 0021.a0af.c795, irq 9
4: Ext: Management0/0 : address is 0021.a0af.c791, irq 11
5: Int: Internal-Data0/0 : address is 0000.0001.0002, irq 11
6: Int: Not used : irq 5
7: Ext: GigabitEthernet1/0 : address is 0023.5ee5.dc0a, irq 255
8: Ext: GigabitEthernet1/1 : address is 0023.5ee5.dc0b, irq 255
9: Ext: GigabitEthernet1/2 : address is 0023.5ee5.dc0c, irq 255
10: Ext: GigabitEthernet1/3 : address is 0023.5ee5.dc0d, irq 255
11: Int: Internal-Data1/0 : address is 0000.0003.0002, irq 255
The Running Activation Key feature: 50 security contexts exceed the limit on the platform, reduced to 20 security contexts.
Licensed features for this platform:
Maximum Physical Interfaces : Unlimited
Maximum VLANs : 150
Inside Hosts : Unlimited
Failover : Active/Active
VPN-DES : Enabled
VPN-3DES-AES : Enabled
Security Contexts : 20
GTP/GPRS : Enabled
VPN Peers : 750
WebVPN Peers : 2
This platform has an ASA 5520 VPN Plus license.
Все ограничения — искусственные! И вот это очень сильно бесит, почему должны платить за функционал, которые уже есть, просто манагеры решили не отдавать весь этот функционал целиком.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
15 комментариев
п.с. название слегка поправил, а то глаза резало :)
Если в качестве терминации транка ..., то сервер — на то и сервер — что предоставляет что-то :) Допустим предоставление файл-помойки
Все ограничения — искусственные! И вот это очень сильно бесит, почему должны платить за функционал, которые уже есть, просто манагеры решили не отдавать весь этот функционал целиком.