Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок
Модераторы: vadim64, terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
harmless
- лейтенант
- Сообщения: 719
- Зарегистрирован: 2007-08-23 10:56:51
- Откуда: Украина, г. Киев, г. Белая Церковь
-
Контактная информация:
Непрочитанное сообщение
harmless » 2013-01-12 0:19:49
Здрасте всем.
Вот по просьбе товарища написал простенький скриптик для переключения каналов
Код: Выделить всё
#!/bin/sh
ping0=`/usr/sbin/setfib -0 /sbin/ping -c 2 8.8.8.8 | grep packets | cut -c 24-24`
ping1=`/usr/sbin/setfib -1 /sbin/ping -c 2 8.8.8.8 | grep packets | cut -c 24-24`
routechk0="`/usr/sbin/setfib -0 netstat -rn | fgrep default | awk '{print $2}'`"
routechk1="`/usr/sbin/setfib -1 netstat -rn | fgrep default | awk '{print $2}'`"
gw0="10.1.1.1"
gw1="10.2.2.1"
server="8.8.8.8"
if [ $ping0 = 2 ] && [ $ping1 = 2 ]
then
if [ $routechk0 = $gw1 ]
then
echo "Changing the channel to the main.";
echo "/usr/sbin/setfib -0 route change default $gw1";
echo "/usr/sbin/setfib -1 route change default $gw0";
else
echo "it's ok, i will repeat check again at 1 minute";
fi
elif [ $ping0 = 0 ]
then
if [ $routechk0 = $gw1 ]
then
echo "Backup channel is down.";
echo "Changing the channel to the main.";
echo "/usr/sbin/setfib -0 route change default $gw0";
echo "/usr/sbin/setfib -1 route change default $gw1";
elif [ $routechk0 = $gw0 ]
then
echo "Main channel is down.";
echo "Changing the channel to the backup.";
echo "/usr/sbin/setfib -0 route change default $gw1";
echo "/usr/sbin/setfib -1 route change default $gw0";
fi
elif [ $ping1 = 0 ]
then
if [ $routechk0 = $gw1 ]
then
echo "Main channel is down.";
echo "Working on the backup channel.";
else
echo "Backup channel is down.";
echo "Working on the main channel.";
fi
else
echo "Unknown result.";
fi
harmless
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
harmless
- лейтенант
- Сообщения: 719
- Зарегистрирован: 2007-08-23 10:56:51
- Откуда: Украина, г. Киев, г. Белая Церковь
-
Контактная информация:
Непрочитанное сообщение
harmless » 2013-01-13 3:35:51
Чуть видоизменил скрипт
Код: Выделить всё
#!/bin/sh
SetFIB="/usr/sbin/setfib "
ping="/sbin/ping "
grep="/usr/bin/grep "
awk="/usr/bin/awk "
route="/sbin/route "
ping0=`${SetFIB} -0 ${ping} -c 2 8.8.8.8 | ${grep} packets | ${awk} '{print $4}'`
ping1=`${SetFIB} -1 ${ping} -c 2 8.8.8.8 | ${grep} packets | ${awk} '{print $4}'`
routechk0="`${SetFIB} -0 ${route} -n get default | ${grep} gateway | ${awk} '{print $2}'`"
routechk1="`${SetFIB} -1 ${route} -n get default | ${grep} gateway | ${awk} '{print $2}'`"
gw0="10.1.1.1"
gw1="10.2.2.1"
server="8.8.8.8"
log(){
logger -t CannelSwitcher -i $1;
}
cangeGW(){
${SetFIB} -0 ${route} change default $1;
${SetFIB} -1 ${route} change default $2;
}
if [ $ping0 = 2 -a $ping1 = 2 ]
then
if [ $routechk0 = $gw1 ]
then
log "Changing the channel to the main.";
cangeGW $gw0 $gw1;
else
log "it's ok, i will repeat check again at 1 minute";
fi
elif [ $ping0 = 0 ]
then
if [ $routechk0 = $gw1 ]
then
log "Backup channel is down. Changing the channel to the main.";
cangeGW $gw0 $gw1;
elif [ $routechk0 = $gw0 ]
then
log "Main channel is down. Changing the channel to the backup.";
cangeGW $gw1 $gw0;
fi
elif [ $ping1 = 0 ]
then
if [ $routechk0 = $gw1 ]
then
log "Main channel is down. Working on the backup channel.";
else
log "Backup channel is down. Working on the main channel.";
fi
else
log "Unknown result.";
fi
harmless
-
Саша2
- проходил мимо
Непрочитанное сообщение
Саша2 » 2013-09-12 16:13:33
куда вписать
1.ipnat -CF -f /etc/ipnat.rules
2.ipnat -CF -f /etc/ipnaty.rules
1.echo nameserver 194.44.214.40 >> /etc/resolv.conf
2.echo nameserver 213.130.16.3 >> /etc/resolv.conf
Саша2