URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9827
[ Назад ]

Исходное сообщение
"Bash Script If ping unsuccessful then eth0 down"

Отправлено ntshack , 10-Фев-14 20:57 
Добрый день дорогие друзья и коллеги!
Есть задачка.

eth0 192.168.1.1/24

eth1 10.10.10.1/24

1) Необходимо, при отсутствия линка на 10.10.10.2 через интерфейс eth1 заставить eth0 интерфейс уйти в down.

2) Необходимо, при отсутствии линка на 10.10.10.2 через интерфейс eth1 заставить eth0 интерфейс уйти в down и вернуть интерфейс в up если 10.10.10.2 reachable.

Что скажете? Как быть?


Содержание

Сообщения в этом обсуждении
"Bash Script If ping unsuccessful then eth0 down"
Отправлено pavlinux , 11-Фев-14 00:01 
> Добрый день дорогие друзья и коллеги!
> Есть задачка.
> eth0 192.168.1.1/24
> eth1 10.10.10.1/24
> 1) Необходимо, при отсутствия линка на 10.10.10.2 через интерфейс eth1 заставить eth0
> интерфейс уйти в down.

if [ $LINK_TO_10_10_10_2 == "down" ]
   then
       ifconfig eth0 down;
fi


> 2) Необходимо, при отсутствии линка на 10.10.10.2 через интерфейс eth1 заставить eth0
> интерфейс уйти в down и вернуть интерфейс в up если 10.10.10.2
> reachable.

if [ $LINK_TO_10_10_10_2 == "down" ]
   then
       ifconfig eth0 down;
   else
       ifconfig eth0 up;
fi


"Bash Script If ping unsuccessful then eth0 down"
Отправлено ntshack , 11-Фев-14 09:20 
>[оверквотинг удален]
> fi
>> 2) Необходимо, при отсутствии линка на 10.10.10.2 через интерфейс eth1 заставить eth0
>> интерфейс уйти в down и вернуть интерфейс в up если 10.10.10.2
>> reachable.
> if [ $LINK_TO_10_10_10_2 == "down" ]
>    then
>        ifconfig eth0 down;
>    else
>        ifconfig eth0 up;
> fi

Логика ясна.
Необходимо заставить eth0 уйти в down если ping check или icmp jitter не проходит на этот адрес.
На мой взгляд сложность заключается в том, что при отсутствии tcpping или же icmp-jitter
машина понимала что необходимо вырубить порт.
Как быть?



"Bash Script If ping unsuccessful then eth0 down"
Отправлено tsolodov , 11-Фев-14 16:46 
>[оверквотинг удален]
>>    else
>>        ifconfig eth0 up;
>> fi
> Логика ясна.
> Необходимо заставить eth0 уйти в down если ping check или icmp jitter
> не проходит на этот адрес.
> На мой взгляд сложность заключается в том, что при отсутствии tcpping или
> же icmp-jitter
> машина понимала что необходимо вырубить порт.
> Как быть?

проблем не вижу, просто перепешите то что сказали на bash


"Bash Script If ping unsuccessful then eth0 down"
Отправлено Аноним , 15-Фев-14 21:51 
touch ping.sh
chmod +x ping.sh

#!/bin/bash

if ! ping -q -c 1 10.10.10.2 -I eth1
    then
    echo 'no ping'
    ifconfig eth0 down
    else
    echo 'ping ok'
    if ! ifconfig | grep 'eth0'
        then
        echo 'up eth0'
        ifconfig eth0 up
    fi
fi

crontab -e
5 * * * * root /path/to/file/ping.sh