Конфигурация vlan’ов и static-routes

Сегодня поставил перед собой цель разнести конфигурацию vlan’ов по конфигам в sysconfig/network-scripts, что более удачно и правильно, чем их подъем из скриптов. Заодно и с файлом конфигурации статических маршрутов разобрался. Как показал поиск по гуглу, найти путнее описание как это делается задача не тривиальная. Во всяком случае у меня не сразу это вышло, но все же получилось собрать инфу и вот что вышло.

В общем все банально:

# cat /etc/sysconfig/network-scripts/ifcfg-eth0.3
DEVICE=eth0.3
BROADCAST=10.10.10.255
HWADDR=00:17:08:58:9E:A1
IPADDR=10.10.10.1
NETMASK=255.255.255.0
NETWORK=10.10.10.0
ONBOOT=yes
VLAN=yes

«.3» — это и есть номер вилана, т.е. 3-й вилан. Параметр «VLAN=yes» — обязательный, иначе система не поймет, что это вилан и ничего не подхватится. Алиас на вилан вешается подобным образом:

# cat /etc/sysconfig/network-scripts/ifcfg-eth0.3:10
DEVICE=eth0.3:10
BROADCAST=10.10.20.255
HWADDR=00:17:08:58:9E:A1
IPADDR=10.10.20.1
NETMASK=255.255.255.0
NETWORK=10.10.20.0
ONBOOT=yes
VLAN=yes

Как видим, ничего сложного. «:10» — номер алиаса в 3-м вилане.

Со статик-роутом все еще проще:

# cat /etc/sysconfig/static-routes
eth0.4 net xxx.xxx.xxx.xxx/nn gw yyy.yyy.yyy.yyy

Запись соответствует команде «route add -net xxx.xxx.xxx.xxx/nn gw xxx.xxx.xxx.xxx».

Все. Теперь не надо рисовать никаких своих скриптов, вешать их в rc.local. Все будет сделано на этапе поднятия сетевых интерфесов.

Вы можете оставить комментарий, или поставить трэкбек со своего сайта.

4 комментариев(я)

  • 26.06.2008 08:20, www2 сказал:

    Я практически сразу приучил себя к мысли делать все настройки по правилам дистрибутива. Исполльзование rc.local или добавление в автозагрузку собственных скриптов, как правило не есть хорошо.

    • 26.06.2008 08:24, Silver Ghost сказал:

      www2, почему не есть хорошо? Иногда очень даже помогает.. :)

      • 27.06.2008 06:15, www2 сказал:

        Помогать-то помогает, но у каждой системы есть свой официальный способ настройки, поэтому прописывание в rc.local считается хаком.

        Во-первых rc.local не вписывается в систему runlevel’ов, команды добавленные туда будут выполняться на любом runlevel’е.

        Во-вторых, rc.local не участвует в отслеживании взаимозависимостей между службами, поэтому при перенастройке сети нужно будет вручную перезапустить сетевых демонов. Если всё делать правильно, достаточно будет перезапустить скрипт настройки сети, в правильной системе демоны перезапустятся автоматом. Во FreeBSD отслеживаются взаимозависимости по описанной схеме. В Debian статические маршруты, например, прописываются в настройках интерфейса. При падении интерфейса маршруты удалятся, при поднятии — снова пропишутся.

        Во-третьих, правильный админ будет ругаться, когда не обнаружит настроек в правильном месте. Ему придётся поискать grep’ом, куда же Вы засунули настройки. Самому не понравилось, когда не обнаружил на одной из систем, доставшихся мне в наследство, настроек статических маршрутов в FreeBSD в файле /etc/rc.conf. Они прописывались в отдельном самописном скрипте.

        (Обязательно)
        (Обязательно, не публикуется)

        Создавая новую Папку, не считайте себя Создателем, это право Вам дано Админом!
        Яндекс.Метрика beget