вторник, 11 декабря 2012 г.

Пример настройки 802.1q VLAN в Linux (linux vlan ethernet)

From: Preventer Newsgroups: Кавминводская Группа Пользователей Linux Date: Mon, 20 Sep 2004 18:21:07 +0000 (UTC) Subject: Пример настройки 802.1q VLAN в Linux Оригинал: http://lug.kmv.ru/index.php?page=vlan Чуточку о VLAN`ах в Linux Хочу поделиться опытом настройки VLAN`ов в Linux. Мне надоело прыгать из сети в сеть имея только одну сетевуху, и я решил поближе познакомиться с VLAN`ами. Мне необходимо "видеть" сети 192.168.0.0/24, 192.168.1.0/24, 10.х.х.х/24 и еще внешнюю сеть х.х.х.х/27. Все эти сети заведены на коммутатор производства D-LINK, DES3226S, который умеет стандарт 802.1q На железке VLAN`ы разведены по портам. Т.е. порты 1-4 сделаны untagged и отданы сети 192.168.0.0/24, VID2 (VLAN ID), порт 24 и 23 являются tagged. Порты 5-6 сделаны untagged и отданы сети 192.168.1.0/24, VID3, порт 24 и 23 являются tagged.
Порты 7-10 сделаны untagged и отданы сети 10.х.х.х/24, VID4, порт 24 и 23 являются tagged. Порты 11-15 сделаны untagged и отданы сети х.х.х.х/27, VID5, порт 24 и 23 являются tagged. Объясню почему tagged два порта. Все очень просто. Порт 24 используется для "проброски" VLAN`ов по оптике на такую же железку, в четырех километрах от места событий. Ну, а порт 23, естественно, для моей машины, на которой я как раз и собираюсь делать VLAN`ы. Теперь непосредственно настройка. Для того чтобы у нас все работало, нам необходимо ядро, скомпилированное с поддержкой стандарта 802.1q Можно использовать и модуль, но я так не захотел. Если хотите использовать модуль: # modprobe 8021q Если все нормально - поздравляю. Если нет - натраиваем и компилим ядро: # make menuconfig Далее ищем позицию: Network options, а в ней <*> 802.1Q VLAN Support # make clean; make dep; make install # make modules; make modules_install Если все прошло без заморочек - приступаем к настройке сети, если нет - читайте Kernel-HOWTO Сначала "уроним" наш сетевой интерфейс: # /sbin/ifconfig eth0 down Теперь поднимем его, но уже без адреса: # /sbin/ifconfig eth0 0.0.0.0 up Затем говорим какие VID будем пропускать. После этой комманды, создадуться виртуальные интерфейсы с номерами VID. Если у вас нет vconfig - установите его. # /sbin/vconfig add eth0 2 # /sbin/vconfig add eth0 3 # /sbin/vconfig add eth0 4 # /sbin/vconfig add eth0 5 Дальше, назначаем каждому интерфейсу свой ip # /sbin/ifconfig eth0.2 10.х.х.х netmask 255.255.255.0 up # /sbin/ifconfig eth0.3 192.168.0.х netmask 255.255.255.0 up # /sbin/ifconfig eth0.4 192.168.1.х netmask 255.255.255.0 up # /sbin/ifconfig eth0.5 х.х.х.х netmask 255.255.255.224 up Естественно прописываем маршрут по умолчанию. # /sbin/route add default gw 192.168.1.1 Сразу запретите форвардинг. Но если вам нужно пропускать сети друг к другу, то будьте внимательны при написании правил маршрутизации и форвардинга - у вас теперь много интерфейсов. :) С остальным, я имею ввиду iptables и routing, я думаю, вы разберетесь сами. Ну вот и все. Не так уж и сложно. Правда?! :)

Комментариев нет:

Отправить комментарий