ipfw + natd - обрывы tcp сессий, куда копать?
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
ipfw + natd - обрывы tcp сессий, куда копать?
Имееться 2 хоста freebsd 6.2-6.4 со связкой ipfw+natd периодически замечаю обрывы сессий сквозь нат. Тобишь выкачать с фтп изошку куском более 120-170 мег без докачки практически невозможно. Также дружно начинают жаловаться геймеры с одинаковым симптомом "рвет каждых 10-15-20 минут". На фоне этого пакетлоза нету - пускаем пинг подальше на несколько суток - максимум пара пакетов теряеться что считаю отличным показателем. Пока что на скорую руку поднял по несколько экземпляров natd на алиасах и свободных сетевухах и рассовываю туда дивертами особо чувствительный траффик типа всяких мморпг итд на которые более всего жалуються юзера. Но это естественно не вариант и конечно же плохо.
Среднестатистический load averages: 0.13, 0.23, 0.35 тобишь не зашкаливают как таковые, natd кудою ходит большинство траффика тоже в топе не проявляют чудес нагруженности. Ладно. Раньше списывал на здоровый поток (на каждом из хостов в среднем 20-30 мбит трафика при 300-500 юзерами за этим же натом) и славу natd(все понимаю, юзерспейс, переключение контекста итд..).
Все это можно было объяснить до того момента когда пришло время выносить на новый хост небольшой сегмент сети. Для начала переехало туда около сотни пользователей для долизывания нового биллинга, из них 20-30 постоянно онлайн (читай видим их деятельность в trafshow). Казалось бы все должно быть отлично хоть тут (юзеров немного, чистым интернетом там ходит 2-5 мбит/с, весь остальной траффик не существенен так как ходит не сквозь нат, да и его не много). Теперь сижу изумляюсь тому как даже при таких условиях докачать без докачки изошку (принял для себя как тест) более чем до 90-120 мег невозможно.
Гуглил - sysctl кручен во все стороны - абсолютно никакого видимого еффекта.
Теперь изгуглил весь гугл, обчитался много-много "умных советов" про "переходи на ipnat/ng_nat/pfnat - natd зло итд". Но практической возможности вот так вот просто "взять и перейти" на pfnat как минимум на одном из хостов допустим попросту нету - себестоимость такого перехода и сложность реализации в силу наличия клозедсорцного биллинга для одного из сегментов сети будет мягко говоря очень неприятной. Естественно что при скоростях выше 30-40 мбит/с я вижу единственный способ - заиметь АС и вообще отказаться от ната. Но это в ближайших перспективах. С другой стороны я просто не понимаю - что связка ipfw+natd не способна вытянуть 2-5 мбит живого траффика при 20-30 пользователях? Естественно способна, причем по заверениям умных людей конец ей приходит при тех же 35-40 мбитах потока. Итого вопрос - что я делаю не так? И в каком направлении следует порыть причину _внезапных_ дропов сессий?
Среднестатистический load averages: 0.13, 0.23, 0.35 тобишь не зашкаливают как таковые, natd кудою ходит большинство траффика тоже в топе не проявляют чудес нагруженности. Ладно. Раньше списывал на здоровый поток (на каждом из хостов в среднем 20-30 мбит трафика при 300-500 юзерами за этим же натом) и славу natd(все понимаю, юзерспейс, переключение контекста итд..).
Все это можно было объяснить до того момента когда пришло время выносить на новый хост небольшой сегмент сети. Для начала переехало туда около сотни пользователей для долизывания нового биллинга, из них 20-30 постоянно онлайн (читай видим их деятельность в trafshow). Казалось бы все должно быть отлично хоть тут (юзеров немного, чистым интернетом там ходит 2-5 мбит/с, весь остальной траффик не существенен так как ходит не сквозь нат, да и его не много). Теперь сижу изумляюсь тому как даже при таких условиях докачать без докачки изошку (принял для себя как тест) более чем до 90-120 мег невозможно.
Гуглил - sysctl кручен во все стороны - абсолютно никакого видимого еффекта.
Теперь изгуглил весь гугл, обчитался много-много "умных советов" про "переходи на ipnat/ng_nat/pfnat - natd зло итд". Но практической возможности вот так вот просто "взять и перейти" на pfnat как минимум на одном из хостов допустим попросту нету - себестоимость такого перехода и сложность реализации в силу наличия клозедсорцного биллинга для одного из сегментов сети будет мягко говоря очень неприятной. Естественно что при скоростях выше 30-40 мбит/с я вижу единственный способ - заиметь АС и вообще отказаться от ната. Но это в ближайших перспективах. С другой стороны я просто не понимаю - что связка ipfw+natd не способна вытянуть 2-5 мбит живого траффика при 20-30 пользователях? Естественно способна, причем по заверениям умных людей конец ей приходит при тех же 35-40 мбитах потока. Итого вопрос - что я делаю не так? И в каком направлении следует порыть причину _внезапных_ дропов сессий?
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: ipfw + natd - обрывы tcp сессий, куда копать?
пахнет хреновым аплинком
няшный natd работает как швейцарские часы, гарантирую :-)
няшный natd работает как швейцарские часы, гарантирую :-)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
- отказываюсь веритьпахнет хреновым аплинком

Без НАТа единичный виндовый хост воткнутый на прямую на сим аплинке с назначенной реальной айпишкой отлично льет на предельной скорости изошки любого размера ясно без обрывов. Кроме того няшные natd которые понаподнимались рядышком проблеме не подвержены практически - тудою тожно можно комфортно лить изошки

Ну это зависит думаю от руконогости - в данном случае грешу на собственную. Только банально не понимаю где может быть подвох.няшный natd работает как швейцарские часы, гарантирую :-)
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
Посидел, мыслей воообще нету - изошки далее не качаються :\
Все конструктивно вроде, бы безупречно
cat /etc/rc.conf | grep default
defaultrouter="192.168.3.1"
#(читаем резервный канал)
NATD висят следующим образом:
/sbin/natd -u -p 8671 -a xxx.xxx.xxx.122 - основной канал
/sbin/natd -u -p 8673 -a 192.168.1.3 - все тот же основной канал но сквозь другой хост
/sbin/natd -u -p 8672 -a 192.168.3.5 - резервный канал
FwCMD="/sbin/ipfw -q"
${FwCMD} -f flush
# Networks define
# тут живут юзера
${FwCMD} table 2 add 172.90.0.0/21
# Это наши реальные и нереальные айпишки с сервисами
# к которым не будем натить
${FwCMD} table 9 add xxx.xxx.xxx.116
${FwCMD} table 9 add xxx.xxx.xxx.120
${FwCMD} table 9 add xxx.xxx.xxx.115
${FwCMD} table 9 add xxx.xxx.xxx.117
${FwCMD} table 9 add xxx.xxx.xxx.118
${FwCMD} table 9 add xxx.xxx.xxx.119
${FwCMD} table 9 add xxx.xxx.xxx.121
${FwCMD} table 9 add xxx.xxx.xxx.122
${FwCMD} table 9 add 192.168.0.0/24
#security
${FwCMD} add 101 allow all from 172.90.0.1 to any
${FwCMD} add 101 allow all from any to 172.90.0.1
${FwCMD} add 101 allow all from 172.16.0.1 to any
${FwCMD} add 101 allow all from any to 172.16.0.1
${FwCMD} add 102 deny all from table\(2\) to 192.168.0.0/24
${FwCMD} add 102 deny all from 192.168.0.0/24 to table\(2\)
# ну мы же хотим чтобы пользователи могли свою статистику проверить даже если денег нету
${FwCMD} add 103 allow all from table\(2\) to me dst-port 80
${FwCMD} add 103 allow all from table\(2\) to me dst-port 53
${FwCMD} add 104 deny all from table\(2\) to me dst-port 139
${FwCMD} add 104 deny all from me to table\(2\) dst-port 139
#internet natting and preserving
# Категория пользователей которые живут перманентно в резервном канале - table(5)
# - всякие спонсорские, и ультрадешевые промо-пакеты
${FwCMD} add 1700 divert 8672 ip from table\(5\) to not table\(9\) out via xl1
# в 8671 сворачиваеться весь траффик собственно к интернетам, в 1800 оное не попадает что логично
${FwCMD} add 1799 divert 8671 ip from table\(2\) to not table\(9\)
# если основной аплинк скончался просто убиваеться предыдущее правило и весь траффик из юзерской сети
# уходит в резервный канал (диверт 8672), также убиваеться форвард 1849 и обратный диверт 2099
${FwCMD} add 1800 divert 8672 ip from table\(2\) to not table\(9\) out via xl1
# прокидываем хост по которому от себя контролируем скриптом живость основного аплинка строго в него
${FwCMD} add 1847 fwd xxx.xxx.xxx.113 ip from me to 213.180.204.8
# далее идут форварды собственно куда надо
${FwCMD} add 1849 fwd xxx.xxx.xxx.113 ip from xxx.xxx.xxx.122 to not table\(9\)
${FwCMD} add 1850 fwd 192.168.3.1 ip from 192.168.3.5 to not table\(9\)
${FwCMD} add 1851 fwd 192.168.1.2 ip from 192.168.1.3 to not table\(9\)
# ... и обратные диверты
${FwCMD} add 2099 divert 8671 ip from any to xxx.xxx.xxx.122 in via xl0
${FwCMD} add 2100 divert 8672 ip from any to 192.168.3.5 in via xl1
..... вот здесь уже идут allow и шейпера к table(2) ......
${FwCMD} add 65533 deny all from table\(2\) to any
${FwCMD} add 65534 deny all from any to table\(2\)
${FwCMD} add 65535 allow all from any to any
Вопрос знатокам: что я делаю не так?
Все конструктивно вроде, бы безупречно
cat /etc/rc.conf | grep default
defaultrouter="192.168.3.1"
#(читаем резервный канал)
NATD висят следующим образом:
/sbin/natd -u -p 8671 -a xxx.xxx.xxx.122 - основной канал
/sbin/natd -u -p 8673 -a 192.168.1.3 - все тот же основной канал но сквозь другой хост
/sbin/natd -u -p 8672 -a 192.168.3.5 - резервный канал
FwCMD="/sbin/ipfw -q"
${FwCMD} -f flush
# Networks define
# тут живут юзера
${FwCMD} table 2 add 172.90.0.0/21
# Это наши реальные и нереальные айпишки с сервисами
# к которым не будем натить
${FwCMD} table 9 add xxx.xxx.xxx.116
${FwCMD} table 9 add xxx.xxx.xxx.120
${FwCMD} table 9 add xxx.xxx.xxx.115
${FwCMD} table 9 add xxx.xxx.xxx.117
${FwCMD} table 9 add xxx.xxx.xxx.118
${FwCMD} table 9 add xxx.xxx.xxx.119
${FwCMD} table 9 add xxx.xxx.xxx.121
${FwCMD} table 9 add xxx.xxx.xxx.122
${FwCMD} table 9 add 192.168.0.0/24
#security
${FwCMD} add 101 allow all from 172.90.0.1 to any
${FwCMD} add 101 allow all from any to 172.90.0.1
${FwCMD} add 101 allow all from 172.16.0.1 to any
${FwCMD} add 101 allow all from any to 172.16.0.1
${FwCMD} add 102 deny all from table\(2\) to 192.168.0.0/24
${FwCMD} add 102 deny all from 192.168.0.0/24 to table\(2\)
# ну мы же хотим чтобы пользователи могли свою статистику проверить даже если денег нету
${FwCMD} add 103 allow all from table\(2\) to me dst-port 80
${FwCMD} add 103 allow all from table\(2\) to me dst-port 53
${FwCMD} add 104 deny all from table\(2\) to me dst-port 139
${FwCMD} add 104 deny all from me to table\(2\) dst-port 139
#internet natting and preserving
# Категория пользователей которые живут перманентно в резервном канале - table(5)
# - всякие спонсорские, и ультрадешевые промо-пакеты
${FwCMD} add 1700 divert 8672 ip from table\(5\) to not table\(9\) out via xl1
# в 8671 сворачиваеться весь траффик собственно к интернетам, в 1800 оное не попадает что логично
${FwCMD} add 1799 divert 8671 ip from table\(2\) to not table\(9\)
# если основной аплинк скончался просто убиваеться предыдущее правило и весь траффик из юзерской сети
# уходит в резервный канал (диверт 8672), также убиваеться форвард 1849 и обратный диверт 2099
${FwCMD} add 1800 divert 8672 ip from table\(2\) to not table\(9\) out via xl1
# прокидываем хост по которому от себя контролируем скриптом живость основного аплинка строго в него
${FwCMD} add 1847 fwd xxx.xxx.xxx.113 ip from me to 213.180.204.8
# далее идут форварды собственно куда надо
${FwCMD} add 1849 fwd xxx.xxx.xxx.113 ip from xxx.xxx.xxx.122 to not table\(9\)
${FwCMD} add 1850 fwd 192.168.3.1 ip from 192.168.3.5 to not table\(9\)
${FwCMD} add 1851 fwd 192.168.1.2 ip from 192.168.1.3 to not table\(9\)
# ... и обратные диверты
${FwCMD} add 2099 divert 8671 ip from any to xxx.xxx.xxx.122 in via xl0
${FwCMD} add 2100 divert 8672 ip from any to 192.168.3.5 in via xl1
..... вот здесь уже идут allow и шейпера к table(2) ......
${FwCMD} add 65533 deny all from table\(2\) to any
${FwCMD} add 65534 deny all from any to table\(2\)
${FwCMD} add 65535 allow all from any to any
Вопрос знатокам: что я делаю не так?
-
- рядовой
- Сообщения: 16
- Зарегистрирован: 2009-05-10 7:02:03
Re: ipfw + natd - обрывы tcp сессий, куда копать?
natd использовал как стартовый опыт, pfnat, ngnat, ipfw nat ^__^
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
а чем именно natd так критичен? если ОС 7.х - можно попробовать nat , который в ядре уже...
переделывать особо ничего не нужно...теже таблицы, тот же аля диверт на нат...
переделывать особо ничего не нужно...теже таблицы, тот же аля диверт на нат...
ядерный взрыв...смертельно красиво...жаль, что не вечно...
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
pf ng... так и не прочитали почему этого не будет даже в теории. Разве что на органы пол колектива продать чтобы это окупилось.
Нет не 7, переустановка продакшн серверов тоже не рассматриваеться как возможная. Вобще не вижу смысла в замене ната под небольшими нагрузками.
Нет не 7, переустановка продакшн серверов тоже не рассматриваеться как возможная. Вобще не вижу смысла в замене ната под небольшими нагрузками.
Последний раз редактировалось neko 2009-06-18 16:02:53, всего редактировалось 2 раза.
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
ну у меня с натд тоже приколы, из-за долгой работы переполняется место в /var
почему - хз, приходится раз в неделю рестартовывать ночью.
почему - хз, приходится раз в неделю рестартовывать ночью.
ядерный взрыв...смертельно красиво...жаль, что не вечно...
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
Вобще не вижу связи переполнения места в var и natd. Поубирать нафиг log со всех рулесов не пробывали?ну у меня с натд тоже приколы, из-за долгой работы переполняется место в /var

ПС ах да еще ж вербоуз лимит

- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
ну как бы траблу решал довольно таки долго. НАТ держит файл, который удален. его реально нет, а место занимает.
тут именно с НАТом дело
тут именно с НАТом дело
ядерный взрыв...смертельно красиво...жаль, что не вечно...
- ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
sysctl.conf ничего не ставил, скорее всего там рубит
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
Код: Выделить всё
[root@stl /home/eugene]# ps -aux| grep natd
root 33470 2,8 0,9 5128 1152 ?? Ss пн04 154:27,61 /sbin/natd -f /etc/natd.conf -n vlan113
root 34870 0,0 0,7 1604 852 p1 S+ 16:11 0:00,01 grep --color natd
[root@stl /home/eugene]# lsof -p 33470
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
natd 33470 root cwd VDIR 0,74 512 2 /
natd 33470 root rtd VDIR 0,74 512 2 /
natd 33470 root txt VREG 0,74 23616 8317 /sbin/natd
natd 33470 root txt VREG 0,74 158712 8402 /libexec/ld-elf.so.1
natd 33470 root txt VREG 0,74 48260 16666 /lib/libalias.so.5
natd 33470 root txt VREG 0,74 922668 16691 /lib/libc.so.6
natd 33470 root 0u VCHR 0,10 0t0 10 /dev/null
natd 33470 root 1u VCHR 0,10 0t0 10 /dev/null
natd 33470 root 2u VCHR 0,10 0t0 10 /dev/null
natd 33470 root 3u IPv4 0xc1780e10 0t0 DIVERT *:8668
natd 33470 root 4w VREG 0,83 230272251 212194 /var (/dev/ad2s2)
natd 33470 root 5u rte 0xc21e7020 0t0
natd 33470 root 6u IPv4 0xc1782000 0t0 ICMP *:*
natd 33470 root 7u unix 0xc1a2e42c 0t0 ->0xc17476f4
[root@stl /home/eugene]# df -h
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 248M 64M 164M 28% /
devfs 1.0K 1.0K 0B 100% /dev
/dev/ad2s2 2.0G 794M 1.0G 43% /var
/dev/ad0s1e 248M 3.5M 224M 2% /tmp
/dev/ad0s1f 15G 10G 3.1G 77% /usr
/dev/ad0s1g 57G 55G 983M 98% /work
/dev/ad2s1 47G 33G 13G 71% /work/public/music
/dev/ad2s4 17G 1.8G 15G 11% /work/public/trash
/dev/ad2s3 159G 82G 75G 52% /work/public/video
devfs 1.0K 1.0K 0B 100% /var/named/dev
[root@stl /home/eugene]# du -d 1 -h /var/
2,0K /var/.snap
2,0K /var/account
6,0K /var/at
2,0K /var/audit
18K /var/backups
4,0K /var/cache
4,0K /var/crash
6,0K /var/cron
272M /var/db
2,0K /var/empty
72K /var/ftp
2,0K /var/games
2,0K /var/heimdal
8,0K /var/lib
203M /var/log
4,0K /var/msgs
67K /var/named
6,0K /var/net-snmp
68K /var/netams
2,0K /var/preserve
104K /var/run
2,0K /var/rwho
412K /var/spool
8,4M /var/tmp
22K /var/yp
485M /var/
ядерный взрыв...смертельно красиво...жаль, что не вечно...
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
#lsof | grep natd | grep var
#
даже не осмеливаюсь предположить какие же он у вас логи там пишет
А то что после перезапуска процесса освобождаеться место это понятно - банально поубивать кеш сквида, или логи апача - будет тот же еффект. Не пробывали вдуматься какой же он лог ведет и кому он нужен?
#
даже не осмеливаюсь предположить какие же он у вас логи там пишет

А то что после перезапуска процесса освобождаеться место это понятно - банально поубивать кеш сквида, или логи апача - будет тот же еффект. Не пробывали вдуматься какой же он лог ведет и кому он нужен?
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: ipfw + natd - обрывы tcp сессий, куда копать?
кто мешает для тестов прописать одну строку ната
и заюзать ipnat,pfnat
дабы понять где проблема
?
а потом уже думать
потому как
кабель, провайдер итд
и заюзать ipnat,pfnat
дабы понять где проблема
?
а потом уже думать
потому как
настораживает что это проблема где то вне сервера"рвет каждых 10-15-20 минут".
кабель, провайдер итд
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
собственно подымается еще один нат на алиасе(вверху реализация), сворачиваеться туда единичного пользователя (допустим меня) и все летает отлично.кто мешает для тестов прописать одну строку ната
физиологические проблемы и провайдер исключены так как если паралельно воткнуть еще один хост - на нем тоже работает все отлично, строим на этом хосте нат по аналогичному методу - ну как минимум для одного пользователя тобишь меня - все тоже отлично. Естественно это все на фоне стоящих рядышком двух хостов на которых методично обрываються сессии.настораживает что это проблема где то вне сервера
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: ipfw + natd - обрывы tcp сессий, куда копать?
предлагаю попробовать pfnatсобственно подымается еще один нат на алиасе(вверху реализация), сворачиваеться туда единичного пользователя (допустим меня) и все летает отлично
с одним правилом
токо не на одного пользователя
а на всех
в конфигурации когда рветься tcp сессия у natd
и тогда станет ясно хотя бы куда копать
вариант
попробовать ядреный natd
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
это вы серьезно про переход на pf?
я про те 4 мбит потока которые сейчас на втором хосте при активных на данный момент 6 пользователях + моем тестовом аккаунте?
Не могу ниразу назвать это пределом natd
# ps aux | grep natd
root 649 1.0 0.3 11636 11036 ?? Rs 31May09 380:42.16 /sbin/natd -u -p 8671 -a ххх.ххх.ххх.122
root 651 0.0 0.1 3556 2948 ?? Ss 31May09 3:59.51 /sbin/natd -u -p 8672 -a 192.168.3.5
root 653 0.0 0.0 1704 1092 ?? Ss 31May09 46:41.51 /sbin/natd -u -p 8673 -a 192.168.1.3
тем более учитывая ночной тест какраз на разгруженном хосте когда закачка шириной в 256к тянулась всего от одного пользователя.
я про те 4 мбит потока которые сейчас на втором хосте при активных на данный момент 6 пользователях + моем тестовом аккаунте?
Не могу ниразу назвать это пределом natd
# ps aux | grep natd
root 649 1.0 0.3 11636 11036 ?? Rs 31May09 380:42.16 /sbin/natd -u -p 8671 -a ххх.ххх.ххх.122
root 651 0.0 0.1 3556 2948 ?? Ss 31May09 3:59.51 /sbin/natd -u -p 8672 -a 192.168.3.5
root 653 0.0 0.0 1704 1092 ?? Ss 31May09 46:41.51 /sbin/natd -u -p 8673 -a 192.168.1.3
тем более учитывая ночной тест какраз на разгруженном хосте когда закачка шириной в 256к тянулась всего от одного пользователя.
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: ipfw + natd - обрывы tcp сессий, куда копать?
я не говорил про пределы и про переход
я сказал что вам нужно локализовать проблему
поскоку вы щас даже приблизительно незнаете где проблема - так?
вот и поеспериментируйте
если будет глючить на всех pfnat и ipnat
тогда и будет смотреть дальше
я сказал что вам нужно локализовать проблему
поскоку вы щас даже приблизительно незнаете где проблема - так?
вот и поеспериментируйте
если будет глючить на всех pfnat и ipnat
тогда и будет смотреть дальше
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
в конкретном экземпляре natd, которым ломиться весь траффик, причем идентично на двух разных хостах с совершенно разной нагрузкой.поскоку вы щас даже приблизительно незнаете где проблема - так?
можно далеко не ходить - думаю образцово поднятый еще один natd ликвидирующий на себе проблему говорит что рыть следует таки в сторону natd а не сетевух (em/xl/fxp кстати всюду) итд.
Еще с более веселым выражением лица представил себе приостановку 2 продакшн серверов на период "пересобрать ядро/переписать 2 разных биллинга один из которых без сорцов и намертво прибит гвоздями к ipfw/поиграться (а вдруг получиться)" лично этого "попробовать просто так" я себе не представляю.
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: ipfw + natd - обрывы tcp сессий, куда копать?
pf.ko и ipf.ko
в пересборки ядра не нуждаються
это к примеру
но насчет ядреного natd
это уж вам виднее
в пересборки ядра не нуждаються
это к примеру
но насчет ядреного natd
это уж вам виднее
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
ipfw add 1796 divert 8673 tcp from any to any dst-port 80
вот и чудо - качнул без обрывов и проблем изошку фри по хттп на скорости 20-25 мбит
Идей вообще никаких, канал тот же, юзера все теже, просто диверт соседний.
Хотя всеже есть идея относительно количества сессий, а как можно нежно ограничить их для table(2)?
вот и чудо - качнул без обрывов и проблем изошку фри по хттп на скорости 20-25 мбит
Идей вообще никаких, канал тот же, юзера все теже, просто диверт соседний.
Хотя всеже есть идея относительно количества сессий, а как можно нежно ограничить их для table(2)?
- armadex
- мл. сержант
- Сообщения: 111
- Зарегистрирован: 2007-11-07 21:29:33
- Откуда: Ukraine, Кривой Рог
- Контактная информация:
Re: ipfw + natd - обрывы tcp сессий, куда копать?
http://subnets.ru/blog/?tag=ng_nat рекомендую! или ipfw nat
Автор благодарит алфавит за любезно предоставленные буквы!
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
люблю повторяться:
я тоже могу взять и порекомендовать пятициферную циску и автономку /21 - в чем проблема?
вот так вот просто "взять и перейти" на pfnat как минимум на одном из хостов допустим попросту нету - себестоимость такого перехода и сложность реализации в силу наличия клозедсорцного биллинга для одного из сегментов сети будет мягко говоря очень неприятной.
я тоже могу взять и порекомендовать пятициферную циску и автономку /21 - в чем проблема?
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: ipfw + natd - обрывы tcp сессий, куда копать?
локализуй проблему на своем сервере
а не повторяя такие же операции на других серверах
а не повторяя такие же операции на других серверах
- neko
- рядовой
- Сообщения: 38
- Зарегистрирован: 2009-02-04 21:24:24
Re: ipfw + natd - обрывы tcp сессий, куда копать?
Что значит на "своем"? Если имееться в виду тестовая машина повторяющая набор сервисов и конфигурацию продакшнов так - давно уже. Проблемы там нет так каковой думаю изза отсутствия живых пользователей за спиной.
Чем можно посмотреть общее количество активных tcp сессий висящих сквозь nat и количество активных/wait сессий от каждого пользователя в частности?
Чем можно посмотреть общее количество активных tcp сессий висящих сквозь nat и количество активных/wait сессий от каждого пользователя в частности?