The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Порядок активации сетевых интерфейсов centos"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Система. проблемы, диагностика)
Изначальное сообщение [ Отслеживать ]

"Порядок активации сетевых интерфейсов centos"  +/
Сообщение от SAY (??) on 13-Окт-10, 11:39 
Добрый день!

Есть 2 сервера с CentOS 5.4, между ними настроен туннель у обоих серверов это интерфейс tun0, внутри этого туннеля трафик шифруется ipsec'ом.
ipsec настроен стандарным для centos способом в файле ifcfg-ipsec0.

Проблема в том, что при загрузке системы поднимаются сначала интерфейсы eth, затем ipsec и последний tun. При таком порядке загрузки ipsec не работает, если после загрузки сделать ifup ipsec0, то все начинает работать.

Как можно сконфигурировать порядок загрузки, что бы интерфейсы tun поднимались перед тем как поднимутся интерфейсы ipsec?

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от shadow_alone (ok) on 13-Окт-10, 12:14 
В RH-дистрах нет такой возможности.

сделай на интерфейсах
ONBOOT=no
и активируй их в /etc/rc.local в нужном порядке.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от McLeod095 (ok) on 13-Окт-10, 12:57 
> В RH-дистрах нет такой возможности.
> сделай на интерфейсах
> ONBOOT=no
> и активируй их в /etc/rc.local в нужном порядке.

Не говорите чушь.
Стандартными возможностями конечно нет, но кто мешает назвать файл с настройками для ipsec например так ifcgf-tun0ipsec
после чего он будет выполняться после скрипта ifcfg-tun0

Ну а к топикстартеру такой вопрос, почему шифровать в туннеле а не шифровать сам туннель?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от SAY (??) on 13-Окт-10, 13:36 
> Стандартными возможностями конечно нет, но кто мешает назвать файл с настройками для
> ipsec например так ifcgf-tun0ipsec
> после чего он будет выполняться после скрипта ifcfg-tun0

Мешает то, что для каждого интерфейса свой скрипт - для tun интерфейсов ifup-tun, для ipsec - ifup-ipsec и скрипт ifup-tun не сможет поднять ipsec соединение

> Ну а к топикстартеру такой вопрос, почему шифровать в туннеле а не
> шифровать сам туннель?

У провайдера запрещены протоколы AH и ESP

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от McLeod095 (ok) on 13-Окт-10, 14:07 
>> Стандартными возможностями конечно нет, но кто мешает назвать файл с настройками для
>> ipsec например так ifcgf-tun0ipsec
>> после чего он будет выполняться после скрипта ifcfg-tun0
> Мешает то, что для каждого интерфейса свой скрипт - для tun интерфейсов
> ifup-tun, для ipsec - ifup-ipsec и скрипт ifup-tun не сможет поднять
> ipsec соединение

Извиняюсь, был немного не прав.
Сначала поднимаются все физические интерфейсы, после чего у меня поднимаются все логические типа tun. А точнее те интерфейсы у которых в конфигурации определена переменная DEVICE.
После чего поднимаются vlan bridge dsl ipsec.

Что в принципе удовлетворяет Вашим требованиям.

>> Ну а к топикстартеру такой вопрос, почему шифровать в туннеле а не
>> шифровать сам туннель?
> У провайдера запрещены протоколы AH и ESP

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от SAY (??) on 13-Окт-10, 14:15 
> Сначала поднимаются все физические интерфейсы, после чего у меня поднимаются все логические
> типа tun. А точнее те интерфейсы у которых в конфигурации определена
> переменная DEVICE.
> После чего поднимаются vlan bridge dsl ipsec.

Очень странно - у меня в ifcfg-ipsec0 отсутсвует переменная DEVICE, а в ifcfg-tun0 присутсвует и поднимаются - сначала ipsec затем tun

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от McLeod095 (ok) on 13-Окт-10, 14:33 
>> Сначала поднимаются все физические интерфейсы, после чего у меня поднимаются все логические
>> типа tun. А точнее те интерфейсы у которых в конфигурации определена
>> переменная DEVICE.
>> После чего поднимаются vlan bridge dsl ipsec.
> Очень странно - у меня в ifcfg-ipsec0 отсутсвует переменная DEVICE, а в
> ifcfg-tun0 присутсвует и поднимаются - сначала ipsec затем tun

Сейчас сам проверить не могу т.к. боевые сервера не охото ковырять, но вроде такой порядок загрузки я понял их файла /etc/init.d/network
для того что бы проверить можно поменять в нем строки action на echo и проверить.

вот скрипт с основными циклами

#!/bin/bash

cd  /etc/sysconfig/network-scripts
interfaces=$(ls ifcfg* | \
        LANG=C sed -e "$__sed_discard_ignored_files" \
               -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \
               -e '/ifcfg-[A-Za-z0-9\._-]\+$/ { s/^ifcfg-//g;s/[0-9]/ &/}' | \
        LANG=C sort -k 1,1 -k 2n | \
        LANG=C sed 's/ //')

vlaninterfaces=""
vpninterfaces=""
xdslinterfaces=""
bridgeinterfaces=""

for i in $interfaces; do
    unset DEVICE TYPE SLAVE
    eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
    eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
    eval $(LANG=C fgrep "SLAVE=" ifcfg-$i)

    if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi

    if [ "${DEVICE##cipcb}" != "$DEVICE" ] ; then
        vpninterfaces="$vpninterfaces $i"
        continue
    fi
    if [ "$TYPE" = "xDSL" ]; then
            xdslinterfaces="$xdslinterfaces $i"
        continue
    fi

    if [ "$TYPE" = "Bridge" ]; then
            bridgeinterfaces="$bridgeinterfaces $i"
        continue
    fi
    if [ "$TYPE" = "IPSEC" ]; then
        vpninterfaces="$vpninterfaces $i"
        continue
    fi

    if [ "${DEVICE%%.*}" != "$DEVICE"  -o  "${DEVICE##vlan}" != "$DEVICE" ] ; then
        vlaninterfaces="$vlaninterfaces $i"
        continue
    fi
        
    if [ "$SLAVE" = "yes" ]; then
        continue
    fi

#    if LANG=C egrep -L "^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i > /dev/null ; then
#            # this loads the module, to preserve ordering
#        is_available $i
#        continue
#    fi
    # If we're in confirmation mode, get user confirmation.
    if [ -f /var/run/confirm ]; then
        confirm $i
        test $? = 1 && continue
    fi
#    action $"Bringing up interface $i: " ./ifup $i boot
#    rc=$((rc+$?))
    echo ""Bringing up interface $i: ""
done
echo "vlan - $vlaninterfaces"
echo "bridge - $bridgeinterfaces"
echo "dsl - $xdslinterfaces"
echo "vpn - $vpninterfaces"

# Bring up xDSL and VPN interfaces
for i in $vlaninterfaces $bridgeinterfaces $xdslinterfaces $vpninterfaces ; do
       if ! LANG=C egrep -L "^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i >/dev/null 2>&1 ; then
    # If we're in confirmation mode, get user confirmation.
        if [ -f /var/run/confirm ]; then
            confirm $i
            test $? = 1 && continue
        fi
#    action $"Bringing up interface $i: " ./ifup $i boot
#    rc=$((rc+$?))
    echo ""Bringing up interface $i: ""
    fi
done

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "Порядок активации сетевых интерфейсов centos"  +/
Сообщение от shadow_alone (ok) on 13-Окт-10, 16:15 
Действительно, есть в Вашем ответе чушь....

> но кто мешает назвать файл с настройками для ipsec например так ifcgf-tun0ipsec

Мешает идеология

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру