Tomsk Sysadmins Forum

Unix => Администрирование => Topic started by: Всеволод on May 23, 2008, 11:29:35

Title: iproute2 + Томские сети
Post by: Всеволод on May 23, 2008, 11:29:35
Всем доброго дня.

Имеется у меня следующая проблема.

Дано:
Два сервера
Gentoo Linux 2.6.20-gentoo-r2 и  2.6.22-gentoo-r9
iproute2-ss061214 и iproute2-ss070710

Требуется мне вбивать маршруты на Томские сети, т.к. на обоих серверах есть внешние каналы.
Устанавливаются маршруты следующим простеньким скриптом.
Code: [Select]
#!/sbin/runscript
# Copyright 1999-2006 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/mdadm/files/mdadm.rc,v 1.2 2006/04/25

wget=/usr/bin/wget
cat=/bin/cat
ip=/sbin/ip


TSK_GW=213.183.99.1
start() {
    ebegin "Starting tomsk net tables"
    $ip r d default &2> /dev/null
    $ip r a default via $TSK_GW &2> /dev/null
    $wget "http://noc.tomline.ru/tomskNets-txt.php?ms=/&ml=1&nc=1" -O /tmp/tsk-n                                                                              ets -o /dev/null
    list=$(/bin/cat /tmp/tsk-nets)

    for net in $list; do
        echo "Setting "
        echo $net
        $ip r d $net via $TSK_GW &2> /dev/null
        $ip r a $net via $TSK_GW &2> /dev/null
    done

    $ip r d default &2> /dev/null
    $ip r a default dev ppp0
    eend $? "Failed to set tomsk net tables"
}

stop() {
    ebegin "Stoping tomsk net tables"
    $wget "http://noc.tomline.ru/tomskNets-txt.php?ms=/&ml=1&nc=1" -O /tmp/tsk-n                                                                              ets -o /dev/null
    list=$(/bin/cat /tmp/tsk-nets)

    for net in $list; do
        $ip r d $net via $TSK_GW &2> /dev/null
    done

    eend $? "Failed to unset tomsk net tables"
}
При работе скрипта вылетают ошибки
Code: [Select]
RTNETLINK answers: No such processИ не все сети появляются в маршрутах, что создает коллизии.
Что не так в моем скрипте или как можно исправить?
Title: iproute2 + Томские сети
Post by: Xray_Linux_Root on May 23, 2008, 11:59:34
Добавь set -x в скрипт и запусти вручную чтобы увидеть чего происходит.
Code: [Select]
#!/sbin/runscript
# Copyright 1999-2006 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/mdadm/files/mdadm.rc,v 1.2 2006/04/25
set -x

wget=/usr/bin/wget
Title: iproute2 + Томские сети
Post by: Всеволод on May 23, 2008, 14:29:51
добавил при stop()

Code: [Select]
$ip r flush via $TSK_GW
вбивает теперь все подсетки.
спасибо за set -x