netgraph: virtual switch + netams

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
wanderer
ефрейтор
Сообщения: 59
Зарегистрирован: 2007-10-17 18:19:57
Контактная информация:

netgraph: virtual switch + netams

Непрочитанное сообщение wanderer » 2009-07-23 23:36:59

Приветствую!

К сожалению, не понимаю как настраивать netgraph в его проявлениях, хватило только мозгов использовать готовые схемы и скрипты :(

Ситуация:
1. стоит у меня, так называемый, virtual switch, настроенный по статье http://www.lissyara.su/?id=1690 Он прекрасно работает, без нареканий.

Код: Выделить всё

#!/bin/sh

#тут указываем наш белый адрес
self=192.168.112.2
peer=192.168.112.5
#тут порт по которому будет бегать трафик
port=1234
#интерфейс который включаем в свитч
if=sk0
case "$1" in
        start)
            echo "Starting netgraph switch."
                ngctl mkpeer ${if}: bridge lower link0
                ngctl name ${if}:lower switch
                ngctl mkpeer switch: ksocket link1 inet/dgram/udp
                ngctl msg switch:link1 bind inet/${self}:${port}
                ngctl msg switch:link1 connect inet/${peer}:${port}
                ngctl connect switch: ${if}: link2 upper
                ngctl msg ${if}: setpromisc 1
                ngctl msg ${if}: setautosrc 0
            echo "Ok."
            exit 0
            ;;
        stop)
            echo "Stopping netgraph switch."
            /usr/sbin/ngctl shutdown ${if}:
            /usr/sbin/ngctl shutdown switch:
            echo "Ok."

            exit 0
            ;;
        restart)
            sh $0 stop
            sh $0 start
            ;;
        *)
            echo "Usage: `basename $0` { start | stop | restart }"
            exit 64
            ;;
esac
2. понадобилось поднять на роутере netams для подсчета трафика и квотирования. т.к. на машине не стоит вообще фаервола и ната (это не внешний маршрутизатор, он соединяет две локалки), то захотел поднять по методике http://www.netams.com/doc/kb_netgraph.html
netams-netgraphctl.sh

Код: Выделить всё

#! /bin/sh
# Netgraph node configuration script for NeTAMS project (FreeBSD 5.xx only!)
# $Id: netams-netgraphctl.sh,v 1.7 2005-03-03 01:53:36 anton Exp $
#
IFACE=sk0
MODE=2 # 1=TEE, 2=DIVERT
DEBUG=1 # 1=enable, 0=disable
DEFAULTPOLICY=2 #1=drop, 2=pass, 3=pass_local_ssh

###### You don't have to change anything below this line! #####################
PATH=/usr/local/sbin:/bin:/usr/bin:/usr/sbin:/sbin:/usr/local/bin

nodename=netams_${IFACE}
hookprefix=${IFACE}

if [ $MODE -eq 1 ]; then
        case "$1" in
                stop)
                        ngctl shutdown netams:
                        ngctl shutdown ${IFACE}_netams_tee:
                        ngctl shutdown ${IFACE}:
                        kldunload ng_netams > /dev/null 2>&1
                        ;;

                start|*)
                        kldload ng_netams > /dev/null 2>&1
                        kldunload ng_tee > /dev/null 2>&1
                        kldload ng_tee > /dev/null 2>&1

                        ngctl mkpeer ${IFACE}: tee lower right
                        ngctl connect ${IFACE}: lower upper left
                        ngctl name ${IFACE}:lower ${IFACE}_netams_tee
                        ngctl mkpeer ${IFACE}_netams_tee: netams right2left if_in
                        ngctl name ${IFACE}_netams_tee:right2left netams
                        ngctl connect ${IFACE}_netams_tee: netams: left2right if_out
                        ngctl msg netams: mode $MODE
                        ngctl msg netams: debug $DEBUG
                        ngctl msg netams: setdefault $DEFAULTPOLICY
                        ;;
        esac
fi

if [ $MODE -eq 2 ]; then
        case "$1" in
                stop)
                        ngctl shutdown netams:
                        kldunload ng_netams > /dev/null 2>&1
                        ;;

                start|*)
                        kldload ng_netams > /dev/null 2>&1
                        ngctl mkpeer ${IFACE}: netams lower if_in
                        ngctl name ${IFACE}:lower netams
                        ngctl connect ${IFACE}: netams: upper if_out
                        ngctl msg netams: mode $MODE
                        ngctl msg netams: debug $DEBUG
                        ngctl msg netams: setdefault $DEFAULTPOLICY
                        ;;
        esac
fi
3. появилась незадачка - вместе все это добро отказывается работать (
вопрос: возможно ли это поднять вместе и как?

спасибо всем заранее!)

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.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/

Аватара пользователя
LMik
капитан
Сообщения: 1852
Зарегистрирован: 2007-07-17 9:14:39
Откуда: МО
Контактная информация:

Re: netgraph: virtual switch + netams

Непрочитанное сообщение LMik » 2009-07-24 13:57:48

Ну тут все просто, сначала просто нарисуйте блок схему как должен общий граф выглядеть.
BSD... Join the dark side.
Виpус детям не игpушка, не товаpищ и не дpуг!

Аватара пользователя
LMik
капитан
Сообщения: 1852
Зарегистрирован: 2007-07-17 9:14:39
Откуда: МО
Контактная информация:

Re: netgraph: virtual switch + netams

Непрочитанное сообщение LMik » 2009-07-24 13:59:53

Не особо вчитывался, нет времени... но по идее надо трафик интерфейса разделить на копии чем нибудь типа ng_hub вроде, и привинчивать уже свитч и tee к хабу.
BSD... Join the dark side.
Виpус детям не игpушка, не товаpищ и не дpуг!

wanderer
ефрейтор
Сообщения: 59
Зарегистрирован: 2007-10-17 18:19:57
Контактная информация:

Re: netgraph: virtual switch + netams

Непрочитанное сообщение wanderer » 2009-07-24 18:13:10

к сожалению, в данном вопросе я вообще не разбираюсь... ( поэтому я не понимаю как все это сделать..
понимаю, что мне никто ничего не напишет готовенькое..
тогда скажем так, посоветуйте что читать, чтобы я сам смог понять как это сделать.