Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.UNIX.BSD
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.UNIX.BSD с датами от 18 Jan 11 22:51:00 до 16 Sep 24 17:28:15, всего сообщений: 10763
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 2918 из 10763 ===================================== RU.UNIX.BSD =
От   : Victor Sudakov                   2:5020/400         06 May 15 11:13:46
Кому : All                                                 06 May 15 11:13:46
Тема : Re: Полностью прозрачный Ethernet туннель
FGHI : area://RU.UNIX.BSD?msgid=<1187500933@news.sibptus.ru>+e8311388
На   : area://RU.UNIX.BSD?msgid=2:5005/49+553e01b3
= Кодировка сообщения определена как: CP866 ==================================
==============================================================================
From: Victor Sudakov <vas@mpeks.tomsk.su>

Victor Sudakov wrote:

> Посоветуйте пожалуйста, можно ли чем-нибудь сделать сабж поверх IP. Чтобы
> проходили и тегированные кадры, и STP, и проч.

В общем всё получилось, хоть и громоздко. Для каждого vlan, который
нужно передать на другую сторону, пришлось заводить отдельный ksocket,
и еще отдельный для нетегированного трафика. При этом vlan-ы, которые на
ту сторону передавать не нужно, попадают в nomatch со снятыми тэгами,
поэтому пришлось их на портах коммутаторов запретить.

Вот картинка: https://flic.kr/p/srkDfw

А вот скрипт для rc.d:

#!/bin/sh
kldstat -q -m ng_ether || kldload ng_ether || exit 3

self=10.14.131.82
peer=10.14.131.74

port01=7701
port38=7738
port03=7703

if=vr0

case "$1" in
        start)
            echo "Starting netgraph switch."
            ngctl mkpeer ${if}: vlan lower downstream
            ngctl name ${if}:lower vlan

            ngctl mkpeer vlan: ksocket nomatch inet/dgram/udp
            ngctl name vlan:nomatch untagged_socket
            ngctl msg untagged_socket: bind inet/${self}:${port01}
            ngctl msg untagged_socket: connect inet/${peer}:${port01}

            ngctl mkpeer vlan: ksocket vlan3 inet/dgram/udp
            ngctl name vlan:vlan3 vlan3_socket
            ngctl msg vlan: addfilter '{ vlan=3 hook="vlan3" }'
            ngctl msg vlan3_socket: bind inet/${self}:${port03}
            ngctl msg vlan3_socket: connect inet/${peer}:${port03}

            ngctl mkpeer vlan: bridge vlan38 link0
            ngctl name vlan:vlan38 sw
            ngctl connect ${if}: sw: upper link1
            ngctl mkpeer sw: ksocket link2 inet/dgram/udp
            ngctl name sw:link2 vlan38_socket
            ngctl msg vlan: addfilter '{ vlan=38 hook="vlan38" }'
            ngctl msg vlan38_socket: bind inet/${self}:${port38}
            ngctl msg vlan38_socket: connect inet/${peer}:${port38}


            ngctl msg ${if}: setpromisc 1
            ngctl msg ${if}: setautosrc 0
            ngctl msg sw: setconfig '{ debugLevel=1 loopTimeout=60 maxStaleness=60 minStableAge=1 }'

            echo "Ok."
            exit 0
            ;;
        stop)
            echo "Stopping netgraph switch."
            ngctl shutdown vlan38_socket:
            ngctl shutdown vlan3_socket:
            ngctl shutdown untagged_socket:
            ngctl shutdown sw:
            ngctl shutdown vlan:
            ngctl shutdown ${if}:
            echo "Ok."
            exit 0
            ;;
        restart)
            sh $0 stop
            sh $0 start
            ;;
        *)
            echo "Usage: `basename $0` { start | stop | restart }"
            exit 64
            ;;
esac

--
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
2:5005/49@fidonet http://vas.tomsk.ru/
--- ifmail v.2.15dev5.4
* Origin: AO "Svyaztransneft", SibPTUS (2:5020/400)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.141816 секунды