gentoo и VLAN tags - как скрутить вместе?

Доброго времени суток всем!

У меня в ведомстве 15 сегментов сети по 254 адреса в каждом. Сегменты разделены маршрутизатором - коммутатором 3 уровня Dlink DGS-3627. Каждый сегмент там записан как отдельный VLAN соответственно. Есть у меня замысел, засунуть одну машинку во все VLAN'ы сразу т.е. чтобы можно было бы отправлять и принимать на ней пакеты (в т.ч. и arp) из любого сегмента сети. Так вот, вычитал я про это, что для таких целей существуют VLAN тэги, которые может проставлять в пакетах коммутатор 3 уровня и по которым машина может понять, из какого VLAN пришел пакет (если я что то не так усвоил прошу меня поправить:)). Соответственно суть вопроса в том, как научить gentoo понимать эти тэги? Так же не откажусь выслушать тех, кто реализовывал нечто подобное, какие могут быть сложности, подводные камни и т.п.

З.Ы. Нашел несколько тем по поводу VLAN'ов здесь, сейчас занимаюсь их изучением, но все же хочу получить ответ по моей конкретной задаче, прошу не бить сильно :)

на длинке подымаем еще один

на длинке подымаем еще один влан, делаем его транком и сливаем туда остальные 15.

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

можно поинтересоваться зачем

можно поинтересоваться зачем новый VLAN?

slepnoga написал(а): на

slepnoga написал(а):
на длинке подымаем еще один влан, делаем его транком и сливаем туда остальные 15.

Прошу прощения, не знаю, что значит транк, поясните пожалуйста

Если есть возможность

Если есть возможность подключить комп непосредственно к маршрутизатору, то можно проще - в настройках маршрутизатора ставишь нужный порт во все VLAN'ы с тегированием.
А уже на linux создаешь новые интерфейсы, на gentoo можно например по handbook http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?part=4&chap=3 (смотреть в самом конце)

Для общего развития можно прочитать например тут http://www.linuxcenter.ru/lib/articles/networking/linux_vlan.phtml

Спааасибо :)

Почитал http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?part=4&chap=3, возникло 2 вопроса: эти настройки нужно писать в conf.d/net? При установке пакета vconfig система начинает распознавать теги с коммутатора автоматически?
Еще по поводу тегирования хочу спросить: тегировать нужно только порт в который включаю целевой комп?

если напрямую к порту

если напрямую к порту свитча/рутера , но никакой влан на гентоо нафик не нужен ( тем более 15 штук)
У вас вланами сколько сетей порезано и где оно аггрегатируется - на свитче ?

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

Объясню задачу более

Объясню задачу более подробно, с предисторией. На gentoo у нас никаких VLAN'ов нет, они настроены на свитче. 15 штук их потому что такова схема сети: сеть делится порайонно, каждый район это отдельный VLAN и отдельный порт на свитче, который этому VLAN'у принадлежит. Скоммутировано оно все в один свитч, как вы уже наверное догадались. На каждый VLAN выделен свой пул адресов (по 254 адреса в каждом), таким образом у нас получается 15 раздельных (благодаря VLAN'ам) подсетей, но это не суть. Если нужно отправить пакет из одного VLAN в другой, то он, естественно, пойдет через маршрутизатор (маршрутизатором является сам свитч). Так вот моя цель подключить к свитчу один компьютер с одним сетевым интерфейсом но чтобы с него можно было отправить пакет (в том числе и arp,ethernet,broadcast и другие пакеты, которые через маршрутизатор не проходят) в любой VLAN напрямую, минуя маршрутизатор. Как запрограммировать свитч, чтобы получить такой порт я знаю и уже сделал это, но загвоздка то в том, что если порт тегированный то подключенный к нему компьютер не видит вообще ничего, а если не тегированный то через него нельзя пересылать пакеты с разными VLAN тэгами, только с каким то определенным, который устанавливается в конфиге. В тех поддержке Dlink мне разъяснили, что с не тегированными портами такую конструкцию создать невозможно, а чтобы ее создать необходимо чтобы подключенное оборудование - в моем случае компьютер на gentoo - распознавало эти тэги и понимало, из какого VLAN пришел пакет и куда ответ слать. И наоборот, чтобы при отправке пакета понимало, в каком VLAN находится получатель и отправляло именно туда. Вот и главный вопрос: как сделать, чтобы понимало?

> эти настройки нужно писать

> эти настройки нужно писать в conf.d/net
да, но можно и разнести в разные файлы, например conf.d/net.vlan1 conf.d/net.vlan2 conf.d/net.vlan3 и так далее
ну и естественно не забыть сделать символические ссылки
# ln -s /etc/init.d/net.lo /etc/init.d/net.vlan1
# ln -s /etc/init.d/net.lo /etc/init.d/net.vlan2
....
# ln -s /etc/init.d/net.lo /etc/init.d/net.vlanN

ну и окончательно занести их в автозапуск на уровень boot или default
# rc-update add net.vlan1 boot
...
# rc-update add net.vlanN boot
или
# rc-update add net.vlan1 default
....
# rc-update add net.vlanN default

и перезагрузка или ручной запуск всех виртуальных сетевух, например
# /etc/init.d/net.vlan1 start
....
# /etc/init.d/net.vlanN start

> При установке пакета vconfig система начинает распознавать теги с коммутатора автоматически?
нет, только после проведения вышеуказанных настроек
> Еще по поводу тегирования хочу спросить: тегировать нужно только порт в который включаю целевой комп?
да, только этот порт на маршрутизаторе

Забыл добавить что в ядре

Забыл добавить что в ядре тоже нужно включить поддержку VLAN

+ Networking support 
 + Networking options 
  + 802.1Q VLAN Support 
   и если используете GVRP, то возможно понадобится включить
   + GVRP (GARP VLAN Registration Protocol) support 

Прошу прощения за

Прошу прощения за некропостинг, но для будущих поколений:
делать этого совершенно не нужно!
Читаем хэндбук, и делаем по инструкции:
http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?part=4&chap=3

# указание номеров VLAN для интерфейса
# пожалуйста, убедитесь, что ваши номера VLAN НЕ дополнены нулем
vlans_eth0="1 2"

# можно также настроить VLAN
# за подробностями обращайтесь к man vconfig
vconfig_eth0=( "set_name_type VLAN_PLUS_VID_NO_PAD" )
vconfig_vlan1=( "set_flag 1" "set_egress_map 2 6" )

# настройка интерфейса как обычно
config_vlan1=( "172.16.3.1 netmask 255.255.254.0" )
config_vlan2=( "172.16.2.1 netmask 255.255.254.0" )

Там старые неактуальная

Там старые неактуальная данные.
Надо смотреть сюда http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 и сюда /usr/share/doc/openrc-0.9.8.4/net.example.bz2

Воистину некропостинг -

Воистину некропостинг - конфигурация через vconfig устарела ;-)

Нейтральность - высшее достижение сознания!

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".