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

Исходное сообщение
"Тематический каталог: Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"

Отправлено auto_topic , 09-Окт-06 16:18 
Обсуждение статьи тематического каталога: Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)

Ссылка на текст статьи: http://www.opennet.ru/base/net/vpn_balance.txt.html


Содержание

Сообщения в этом обсуждении
"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено universite , 09-Окт-06 16:18 
>/scripts/ipfwua.sh   # Данный скрипт добавляет в 1 таблицу список Украинских сетей

А можно это скрипт показать?


"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено Redacid , 10-Окт-06 11:16 
Можно, но он не совсем правильный, хотя меня и устраивает. Всё дело в том, что на пару секунд таблица полностью очищается и трафик пойдёт через Мировой канал.

#!/bin/sh

UA_SRC=ua-list.txt
UA_DST=dst.lst

rm $UA_SRC
rm $UA_DST
wget http://noc.ua-ix.net.ua/ua-list.txt

for ip in `cat $UA_SRC | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v / `; do
echo $ip/24 >> $UA_DST
done

for ip in `cat $UA_SRC | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep / `; do
echo $ip >> $UA_DST
done

ipfw table 1 flush

for ip in `cat $UA_DST`; do
ipfw table 1 add $ip
done


"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено selidora , 03-Ноя-06 18:19 
я делаю так:


#!/bin/sh
/usr/local/bin/wget -q -O - http://noc.ix.net.ua/ua-list.txt | \
  /usr/bin/sed s%"\.0$"%"\.0/24"%g > /etc/ua-list.txt && \
for SUBNET in `\
  /sbin/ipfw table 0 list | /usr/bin/cut -f 1 -d " " | /usr/bin/diff /etc/ua-list.txt - | \
  /usr/bin/grep -v [a-z] | /usr/bin/grep ">" | /usr/bin/cut -f 2 -d " " ` ; do
  /sbin/ipfw -q table 0 delete $SUBNET
done && \
for SUBNET in `\
  /sbin/ipfw table 0 list | /usr/bin/cut -f 1 -d " " | /usr/bin/diff /etc/ua-list.txt - | \
  /usr/bin/grep -v [a-z] | /usr/bin/grep "<" | /usr/bin/cut -f 2 -d " "` ; do
  /sbin/ipfw -q table 0 add $SUBNET
done

и по крону хоть каждые 10 минут.


"Разделение трафика по разным каналам с помощью IPFW и NAT в ..."
Отправлено uanic , 17-Янв-07 15:48 
Вот варант который работает и очень хорошо
http://uanic.kiev.ua/UA_networks.html

"Разделение трафика по разным каналам с помощью IPFW и NAT в ..."
Отправлено Kris , 10-Фев-09 12:34 
>Вот варант который работает и очень хорошо
>http://uanic.kiev.ua/UA_networks.html

Ссылка не работает :( Обнови пожалуйста.


"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено Redacid , 17-Фев-07 19:31 
Selidora:Спасибо за скрипт. Хоть он уменя и не заработал, но дал логику для переделки своего. Его и выкладываю.

#!/bin/sh

wget -q -O - http://noc.ix.net.ua/ua-list.txt | sed 's/\.0$/.0\/24/g' > /etc/ua-list.txt

for SUBNET in `ipfw table 0 list | cut -f 1 -d " " | diff /etc/ua-list.txt - | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep ">" | cut -f 2 -d " " ` ; do
ipfw -q table 0 delete $SUBNET
done

for SUBNET in `ipfw table 0 list | cut -f 1 -d " " | diff /etc/ua-list.txt - | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep "<" | cut -f 2 -d " " ` ; do
ipfw -q table 0 add $SUBNET
done


"Разделение трафика по разным каналам с помощью IPFW и NAT в ..."
Отправлено Uanic , 20-Фев-07 09:41 
У меня парочку вопросов.
Сколько времени занимает выполнение этого скрипта?
Есть задержки в выполнении правил ipfw, потому, как допустим для pf поиск в таблице состоящей из 10 или 10000 записей нет никакой?

Я, когда создавал первый раз таблицу из ~700 сетей в ipfw то у меня на это уходило 30-40 секунд, затем уменьшил, оптимизировав скрипт до 3-4 секунд. Но всё равно как-то не нравилось.

Заранее спасибо.


"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено Redacid , 04-Мрт-07 20:57 
Последний у меня выполняется секунд 5, основное время уходит, на сравнение таблиц

"Разделение трафика по разным каналам с помощью IPFW и NAT в связке с MPD (vpn balance ipfw freebsd)"
Отправлено Redacid , 04-Мрт-07 20:59 
ощутимых задержек замечено небыло, ведь таблица сидит в памяти.