Добро пожаловать на форум, Гость!
Войдите или зарегистрируйтесь!
Имя пользователя:   Пароль:  
Запомнить меня 




Начать новую тему Ответить на тему   [ Сообщений: 6 ] 
Автор Сообщение
СообщениеДобавлено: 31 мар 2010, 11:15 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2898
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 121 раз.
ОС: RHEL 6.7
Скрипт для шлюзов с двумя внешними каналами (FreeBSD), проверяющий и переключающий их в случае отсутствия интернета. на основном канале.
Синтаксис: [ Загрузить ] [ Скрыть ]
Используется подсветка синтаксиса bash
#! /bin/sh

route="/sbin/route"
ping="/sbin/ping"
natd="/sbin/natd"
sleep="/bin/sleep"
killall="/usr/bin/killall"
touch="/usr/bin/touch"

# внешние сетевые карты
lan_isp1="rl0"
lan_isp2="rl1"

GW1=194.242.118.61
GW2=83.218.237.45

$ping -q -c 2 $GW1 > /dev/null 2>&1

# Если код завершения пинга 1 = error
if [ $? !=0 ]; then
        # пингуем второй канал
        $ping -q -c 2 $GW2 > /dev/null 2>&1
        # если код завершение true =0
        if [ $? =0 ]; then
                # Если файла gw2.changed нет, создаем его.
                # Он определяет переход на основной канал,
                # даже если есть и резервный
                # GW2 будет маршрутом по умолчанию
                if [ ! -f /tmp/gw2.changed ]; then
                $route delete default
                $killall natd
                $route add default $GW2
                $touch /tmp/gw2.changed
                $sleep 15
                $natd -n ${lan_isp2}
                . /etc/fwrules2.sh
                exit 0;
                fi
        else
                echo "Оба канала не доступны";
                exit 1;
        fi
else
        # Если пинганулся первый шлюз
        # Если файл gw2.changed найден, удаляем его
        # GW1 будет маршрутом по умолчанию
        if [ -f /tmp/gw2.changed ]; then
                $route delete default
                $killall natd
                $route add default $GW1
                $rm /tmp/gw2.changed
                $sleep 15
                $natd -n ${lan_isp1}
                . /etc/fwrules1.sh
                exit 0;
        fi
        echo "Основной канал работает и установлен по умолчанию";
        exit 0;
fi
Обработано за 0.014 секунд, используется GeSHi 1.0.8.4


Я не злопамятный, я просто часто ковыряю логи
Изображение



За это сообщение автора Raven поблагодарил: xvz
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 02 апр 2013, 12:52 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2

Зарегистрирован: 27 мар 2013, 20:54
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
ОС: SUSE 11 SP2
Raven
как будет если обе PPPoE подключение?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 02 апр 2013, 21:14 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2898
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 121 раз.
ОС: RHEL 6.7
В принципе так же, за исключением нескольких нюансов.


Я не злопамятный, я просто часто ковыряю логи
Изображение



За это сообщение автора Raven поблагодарил: xvz
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 06 апр 2013, 21:03 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2

Зарегистрирован: 27 мар 2013, 20:54
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
ОС: SUSE 11 SP2
Raven
можете поподробнее
# внешние сетевые карты
lan_isp1="rl0"
lan_isp2="rl1"

GW1=194.242.118.61
GW2=83.218.237.45
здесь что изменится если ip динамический?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 апр 2013, 19:43 
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 1887

Зарегистрирован: 03 мар 2010, 11:25
Благодарил (а): 4 раз.
Поблагодарили: 39 раз.
ОС: Slackware-current
xvz
даже при динамическом ИПе у провайдера шлюз не меняется. Т.е. его можно оставить статично в скрипте... Ну или уж на самый крайний случай получать grep'ом из выхлопа ifconfig (или как он там во фряхе зовется?)


Изображение

Изображение

Work: Slackware Linux 14.0 х 'all Servers'
Laptop: Slackware64-current / Xfce 4.10 / Linux 3.10.5



За это сообщение автора Infernal Flame поблагодарил: xvz
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 апр 2013, 22:43 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2898
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 121 раз.
ОС: RHEL 6.7
Infernal Flame
Да, а имена интерфейсов будут соответственно pppХ


Я не злопамятный, я просто часто ковыряю логи
Изображение



За это сообщение автора Raven поблагодарил: xvz
Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
   Похожие темы   Автор   Ответов   Просмотров   Последнее сообщение 
Перенесенная ^_^

в форуме Linux

root

3

38

02 мар 2010, 16:15

Gen1us2k Перейти к последнему сообщению

Перенесенная Документация по Gentoo

в форуме Linux

Gen1us2k

0

4

05 мар 2010, 18:54

Gen1us2k Перейти к последнему сообщению



Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Собрано Raven. Русская поддержка phpBB
phpBB SEO