И так начинаем сказку про злую ICQ. :-(
Имеем FreeBSD в качестве сервера, на ней NAT через который получают доступ в инет около 25 машин под Windows 2000 с приватными адресами.
До поры до времени жили все счастливо, пока ICQ не стала ругаться.Например trilian под Windows орет - "Слишком много соединений с одного IP" и коннекта естественно нет.
Есть пара машин с приватными адресами под FreeBSD, так ickle на FreeBSD орет про то, что не может открыть сокет.Чего это за фигня??? И как с этим бороться?
>И так начинаем сказку про злую ICQ. :-(
>Имеем FreeBSD в качестве сервера, на ней NAT через который получают доступ
>в инет около 25 машин под Windows 2000 с приватными адресами.
>
>До поры до времени жили все счастливо, пока ICQ не стала ругаться.
>
>
>Например trilian под Windows орет - "Слишком много соединений с одного IP"
>и коннекта естественно нет.
>Есть пара машин с приватными адресами под FreeBSD, так ickle на FreeBSD
>орет про то, что не может открыть сокет.
>
>Чего это за фигня??? И как с этим бороться?
а попробуйте под фрей работать с vicq, она честно говорит, что работает через прокси, хотя на самом деле коннектится напрямую
>>И так начинаем сказку про злую ICQ. :-(
>>Имеем FreeBSD в качестве сервера, на ней NAT через который получают доступ
>>в инет около 25 машин под Windows 2000 с приватными адресами.
>>
>>До поры до времени жили все счастливо, пока ICQ не стала ругаться.
>>
>>
>>Например trilian под Windows орет - "Слишком много соединений с одного IP"
>>и коннекта естественно нет.
>>Есть пара машин с приватными адресами под FreeBSD, так ickle на FreeBSD
>>орет про то, что не может открыть сокет.
>>
>>Чего это за фигня??? И как с этим бороться?
>
>
>а попробуйте под фрей работать с vicq, она честно говорит, что работает
>через прокси, хотя на самом деле коннектится напрямую% vicq
Use vicq -r if you want register new UIN
UIN #:xxxxxxxxx
Password:
Reading config....done
vICQ version: [0.4.1] revision:[1.103]
vICQ.pm version: [0.03]
Trying to connect...failed!
ERROR: socket error[server]: IO::Socket::INET: Operation timed out
Using GNU readline
vICQ>Ну и чего??? Тажа самая фигня. :(
Причем вот еще что, те кто утром успеет законнектится, те могут целый день сидеть в онлайне пока сами не отцепятся, а другие кто запускает ICQ позже получает облом. :( То бишь сидят рядом два человека на разных машинах, cеть одна 192.168.125.0/255.255.255.0, один в онлайне, а у другого проблемы с коннектом - слишком много соединений с одного IP.
>Причем вот еще что, те кто утром успеет законнектится, те могут целый
>день сидеть в онлайне пока сами не отцепятся, а другие кто
>запускает ICQ позже получает облом. :( То бишь сидят рядом два
>человека на разных машинах, cеть одна 192.168.125.0/255.255.255.0, один в онлайне, а
>у другого проблемы с коннектом - слишком много соединений с одного
>IP.
Я могу ошибатся но у меня работае так: во Free открыл 1080 порт и аськи у клиентов настроил по HTTP на 1080 порт
>>Причем вот еще что, те кто утром успеет законнектится, те могут целый
>>день сидеть в онлайне пока сами не отцепятся, а другие кто
>>запускает ICQ позже получает облом. :( То бишь сидят рядом два
>>человека на разных машинах, cеть одна 192.168.125.0/255.255.255.0, один в онлайне, а
>>у другого проблемы с коннектом - слишком много соединений с одного
>>IP.
>
>
>Я могу ошибатся но у меня работае так: во Free открыл 1080
>порт и аськи у клиентов настроил по HTTP на 1080 порт
>Чего-то несколько не въехал. Надо просто открыть порт 1080? Или поставить squid и настроить, что бы ася работала через прокси?
Если честно не охота возится с настройкой squid для аси, может кто подскажет IP прокси сервера который поддерживает ICQ, чтобы для начала проверить нормально ли все будет, а потом уже свой squid мучать если все будет - OK.
попробуй конектиться с разных машин в сети к разным портам сервера icq... может поможет
>попробуй конектиться с разных машин в сети к разным портам сервера icq...
>может поможетНе помогает такое. :(((
Утром пока народу мало, все ОК, можно хоть сто раз online-offline с разными портами. Как только народ подтягивается и врубает аськи начинаются грабли, кто успел тот в онлайне, кто нет тот в обломе. :(
Может попробовать коннектить разные машины через разные анонимные прокси серверы?
Люди ну скажите кто-нибудь еще мудрые мысли.Сейчас уже вообще, что-то странное, trillian уже больше не орет про много соединений с одно IP, а говорит следующее:
*** Fatal error: (invalid FLAP header during authentication): Error Code 10054.
*** Disconnecting.Ну ладно думаю раз через NAT не хочет, поробую через squid, настроил squid согласно http://linux.opennet.ru/base/net/squid_icq.txt.html
И все равно нифига не работает. :((В access.log у squid видно, что попытка соединения есть - ...TCP_MISS/200 49 CONNECT login.icq.com:5190 - DIRECT/205.188.179.233 -
А в cache.log есть месага - sslReadServer: FD 13: read failure: (54) Connection reset by peerТолько у trillian теперь другое сообщение, точнее другой код ошибки:
*** Fatal error: (invalid FLAP header during authentication): Error Code 0.
*** Disconnecting.Где грабли не понятно... :( Ну и куда мне дальше рыть? Через NAT не идет, через squid тоже... Что это за FLAP header теперь еще?
Поставь SOCKSD и не мучайся. Например dante.
>Поставь SOCKSD и не мучайся. Например dante.Поставил dante и настроил:
запустил на терминале без ключа -D
sockd[32030]: dante/server v1.1.13 running
sockd[32031]: created new negotiatorchild
sockd[32032]: created new requestchild
sockd[32033]: created new requestchild
sockd[32034]: created new requestchild
sockd[32035]: created new requestchild
sockd[32036]: created new iochild
sockd[32031]: pass(1): tcp/accept [: 192.168.125.2.4928 -> 192.168.125.1.1080
sockd[32032]: pass(2): tcp/connect [: 192.168.125.2.4928 -> login.icq.com.5190
sockd[32037]: created new requestchildВ трилиан тоже самое, что и в настройках через squid:
*** Fatal error: (invalid FLAP header during authentication): Error Code 0.
*** Disconnecting.Это называется - полный пи..ец. :(((
У кого-нибудь есть еще мудрые советы?
>Люди ну скажите кто-нибудь еще мудрые мысли.
>
>Сейчас уже вообще, что-то странное, trillian уже больше не орет про много
>соединений с одно IP, а говорит следующее:
>*** Fatal error: (invalid FLAP header during authentication): Error Code 10054.
>*** Disconnecting.
>
>Ну ладно думаю раз через NAT не хочет, поробую через squid, настроил
>squid согласно http://linux.opennet.ru/base/net/squid_icq.txt.html
>И все равно нифига не работает. :((
>
>В access.log у squid видно, что попытка соединения есть - ...TCP_MISS/200 49
>CONNECT login.icq.com:5190 - DIRECT/205.188.179.233 -
>А в cache.log есть месага - sslReadServer: FD 13: read failure: (54)
>Connection reset by peer
>
>Только у trillian теперь другое сообщение, точнее другой код ошибки:
>*** Fatal error: (invalid FLAP header during authentication): Error Code 0.
>*** Disconnecting.
>
>Где грабли не понятно... :( Ну и куда мне дальше рыть? Через
>NAT не идет, через squid тоже... Что это за FLAP header
>теперь еще?Доброго дня тебе, имел подобные грабли, решаютя элементарно
ставишь soсks5 и не имеешь проблемм, хоть один юзверь хоть 100 пофигу,
аську строишь через образовавшийся прокси и все ОК (только не забудь в FW) порты наружу разрешить и все будут ОК.
Ты случайно свою маздайную сеть такой наркотой как "Планировщик пакетов QoS" не балуешь?Если да, то приговор один - мочить на всех машинах!
>Ты случайно свою маздайную сеть такой наркотой как "Планировщик пакетов QoS" не
>балуешь?
>
>Если да, то приговор один - мочить на всех машинах!QOS был. Убрал везде.
Помогло немного, но проработало где-то час. Все пользователи зашли в асю через NAT, потом двое отвалились и опять уже войти не смогли. Затем я сам отцепился и тоже вот теперь войти не могу. Получаю *** Fatal error: (invalid FLAP header during authentication): Error Code 10054.
Попробовал снова через squid, socks5 и опять эта долбанная надпись - *** Fatal error: (invalid FLAP header during authentication): Error Code 0.
Бред какой-то! Я уже скоро завою от злости. :(
>*** Fatal error: (invalid FLAP header during authentication): Error Code 10054.пакет от ICQ сервера приходит не в том формате, в каком надо.
Кто его повреждает? Может, кривая реализация TCP/IP у WIN? :)
Windows - это не серверная платформа.
Попробуй использовать в качестве файервола Linux на 486.
Попроси у начальника какой-нить металлолом, поставь туда че-нить типа RedHat,
настрой маршрутизацию, DNS, маскарадинг... Все будет нормально. Проверено временем.WBR, Dvorkin
>>*** Fatal error: (invalid FLAP header during authentication): Error Code 10054.
>
>пакет от ICQ сервера приходит не в том формате, в каком надо.
>
>
>Кто его повреждает? Может, кривая реализация TCP/IP у WIN? :)
>Windows - это не серверная платформа.>Попробуй использовать в качестве файервола Linux на 486.
>Попроси у начальника какой-нить металлолом, поставь туда че-нить типа RedHat,
>настрой маршрутизацию, DNS, маскарадинг... Все будет нормально. Проверено временем.
>
>WBR, DvorkinПричем здесь это?
У меня в сети два сервера W2K (файловый сервер и PDC) и FreeBSD маршрутизатор, DNS, NAT, HTTP, FTP. Теперь вот есть еще squid и dante. От которых как оказалось толку нихрена нет для аси.Клиенты на виндах 2000, и пара клиентов на FreeBSD.
На бздях тоже аська (ickle) не запускается, хочешь сказать там тоже криво реализованый TСP/IP? Ну и читай внимательней, я же говорю, что с утра все нормально, а после двух часов работы начинаются проблемы.
То есть с утра по твоему виндоус релизует TCP/IP правильно, а после обеда не правильно?Советы типа линукс рулез, m$ сакс. Мне не нужны я сам прекрасно понимаю где надо использовать винду, а где юних.
>>>*** Fatal error: (invalid FLAP header during authentication): Error Code 10054.
>>
>>пакет от ICQ сервера приходит не в том формате, в каком надо.
>>
>>
>>Кто его повреждает? Может, кривая реализация TCP/IP у WIN? :)
>>Windows - это не серверная платформа.
>
>>Попробуй использовать в качестве файервола Linux на 486.
>>Попроси у начальника какой-нить металлолом, поставь туда че-нить типа RedHat,
>>настрой маршрутизацию, DNS, маскарадинг... Все будет нормально. Проверено временем.
>>
>>WBR, Dvorkin
>
>Причем здесь это?
>У меня в сети два сервера W2K (файловый сервер и PDC) и
>FreeBSD маршрутизатор, DNS, NAT, HTTP, FTP. Теперь вот есть еще squid
>и dante. От которых как оказалось толку нихрена нет для аси.
>
>
>Клиенты на виндах 2000, и пара клиентов на FreeBSD.
>
>На бздях тоже аська (ickle) не запускается, хочешь сказать там тоже криво
>реализованый TСP/IP? Ну и читай внимательней, я же говорю, что с
>утра все нормально, а после двух часов работы начинаются проблемы.
>То есть с утра по твоему виндоус релизует TCP/IP правильно, а после
>обеда не правильно?
>
>Советы типа линукс рулез, m$ сакс. Мне не нужны я сам прекрасно
>понимаю где надо использовать винду, а где юних.Извини, хотел как лучше.
WBR, Dvorkin
>
>Чего это за фигня??? И как с этим бороться?Как я понял у тебя работало все это дело через NAT? ipnat или natd?
И сколько у тебя приватных адресов и реальных? Возможно я ошибаюсь, но это похоже на то что у тебя привытных адресов гораздо больше чем реальных. Может они реальные поделить между собой не могут? А кто успел тот и занял и потом весь день висит. portmap работает?
>>
>>Чего это за фигня??? И как с этим бороться?
>
>Как я понял у тебя работало все это дело через NAT? ipnat
>или natd?
>И сколько у тебя приватных адресов и реальных? Возможно я ошибаюсь, но
>это похоже на то что у тебя привытных адресов гораздо больше
>чем реальных. Может они реальные поделить между собой не могут? А
>кто успел тот и занял и потом весь день висит. portmap
>работает?Использую один внешний IP на интерфейсе xl0, через natd -unregistered_only -use_sockets -same_ports -n xl0
второй интерфэйс (xl1) смотрит в локалку.Есть такие правила:
...
ipfw add 500 divert 8668 ip from any to any via xl0
ipfw add 510 allow tcp from any to any established
ipfw add 520 allow ip from any to any via xl1
ipfw add 530 allow ip from any to any out
...
Машин 30, у всех приватные адреса.portmap есть.
У меня вместе с сервером получается три фришки.
Одна сервер (c реальным IP) и две как рабочие станции (у них только локальные адреса).Попросил у прова еще шесть IP, эти IP в другой сети, то бишь в результате получаем:
xl0 по прежнему смотрит в инет c тем же адресом, что и раньше, например A.B.Y.Z
xl1 смотрит в локалку, и я ему даю алиас, один из шести адресов - A.B.W.UNAT висит на A.B.Y.Z (как и был).
Запускаю ickle на рабочей станции с FreeBSD и получаю тоже самое, что и было - ОБЛОМ, чего я и ожидал. :)
Но дальше делаю следущее.
Рабочей станции с FreeBSD даю реальный IP из сети которую дополнительно дал пров, т. е. даю фришке алиас на интерфейс - A.B.W.V, ну понятно, что у нее при этом остается еще и локальный адрес на этом же интерфейсе (сетевуха одна).
В качестве шлюза по умолчанию указываю - A.B.W.UВзвожу на этой машине natd -s -m -u -n xl0
и правила ipfw на диверт.Дальше запускаю ickle на этой машине. Влетает без проблем!!! В том время как другим сыплется этот гребанный FLAP header!
Ну думаю зашибись, уже что-то!
Сажусь за маздайную машину и прописываю в качестве шлюза, свежеиспеченный шлюз - указываю локальный адрес этой нового шлюза в качестве шлюза на маздайке.
Запускаю трилиан на маздайке и он коннектится тоже без всяких проблем, а у других по прежнему орет про FLAP header!
Хмм. Вот оно как!
Дальше. Захожу уже на настояющий сервер (FreeBSD). Запускаю на нем асю - vicq. И вот прямо на сервере то уже и не конектится. Прямо на сервере, мать ее за ногу, эту тетю Асю! :(((
Ну и что по этому поводу думает общественность? Чего я не понимаю? login.icq.com замотал наш адрес A.B.Y.Z? И что делать когда их замотает A.B.W.V?
К тому же меня не устраивает, что в таком случае надо держать NAT на другой машине, я по пока еще не догоняю как совместить NAT и фаервол на сервере. Ведь если я запущу NAT на сервере на интерфейс xl1, то файервол не будет пропускать пакеты. :((
Пишу с поля боя, прямо из горящего танка. :-)Прописал всем машинам новый шлюз.
Все машины законнектились!
Прошло минут 40 с этого момента. Начали проявлятся первые проблемы. :(Сначала пару человек выкинуло из аси. Но кое-как они законнектились снова, с 5-го раза. :((( Диагноз тот же FLAP header. :(( Но в итоге пока хоть все равно назад заходит.
Я перезапускаю свою ickle и вижу, что она снова попадает в коннект только с 4 раза. :(
Будем ждать, но прогноз хреновый.
Дальше видимо вернемся к тому что было - с коннектом обламывать будут всех!login.icq.com очень быстро надоел наш новый адрес? :(
Людииииии! Ну скажите же, что это за хрень такая?!
С провайдером разговаривал, чешет репу и говорит что у него есть клиенты у которых и больше чем 30 человек юзают аську через NAT, и подобного нет.
Все кердык!!! :(
С новым адресом стабильно - FLAP header. :(
>Все кердык!!! :(
>С новым адресом стабильно - FLAP header. :(попробуй проблему описать саппорту самой аськи
FLAP - низкоуровневый протокол, используемый при TCP-подключениях между клиентом и сервером.
Попробуй выделить NAT для icq дополнительно еще один порт.
Попробуй поиграть с NATD-ом (напр., убрать -same ports; заменить natd на ipnat или еще чего)
Ты пробовал запускать trafshow на FreeBSD?
Очень похоже на одного worm'а.
1. Посмотри, не расшарены ли у тебя диски C: на Win-машинах?
2. Посмотри, нет ли у тебя в директории Windows файла ScrSvr.exe?
Если есть -- это оно :)))
...и я даже знаю, как решить эту проблему -- у меня такое было... :))
>Ты пробовал запускать trafshow на FreeBSD?
>Очень похоже на одного worm'а.
>1. Посмотри, не расшарены ли у тебя диски C: на Win-машинах?
>2. Посмотри, нет ли у тебя в директории Windows файла ScrSvr.exe?
>Если есть -- это оно :)))
>...и я даже знаю, как решить эту проблему -- у меня такое
>было... :))Не не оно... Да и маловероятно, что проскочил бы, на сендмэйле проверка на вирей идет. На рабочих станциях тоже проверяется все на вирей.
trafshow показывает самый обычный трафик на http и ftp - криминала не замечено.
Даже и не знаю горевать или радоваться. Может быть лучше бы было, чтобы это оно оказалось, проблема бы хоть решилась. :-/
>Не не оно... Да и маловероятно, что проскочил бы, на сендмэйле проверка
>на вирей идет. На рабочих станциях тоже проверяется все на вирей.Он не мэйлом приходит...
>
>
>trafshow показывает самый обычный трафик на http и ftp - криминала не
>замечено.
>
>Даже и не знаю горевать или радоваться. Может быть лучше бы было,
>чтобы это оно оказалось, проблема бы хоть решилась. :-/
А после чего возникла эта проблема?
Что у тебя в /var/log/messages?
>>Не не оно... Да и маловероятно, что проскочил бы, на сендмэйле проверка
>>на вирей идет. На рабочих станциях тоже проверяется все на вирей.
>
>Он не мэйлом приходит...
>
>>
>>
>>trafshow показывает самый обычный трафик на http и ftp - криминала не
>>замечено.
>>
>>Даже и не знаю горевать или радоваться. Может быть лучше бы было,
>>чтобы это оно оказалось, проблема бы хоть решилась. :-/
>
>
>А после чего возникла эта проблема?
>Что у тебя в /var/log/messages?В /var/log/messages все нормально.
А проблема возникла скорее после того как машин прибавилось, их не всегда было 30.
То что на новых машинах какая-нить зараза - исключено, на всех машинах система ставилась с нуля.
Сегодня пошли по другому пути.
Во первых на всех машинах обновили trillian до последней версии. У некоторых был старый trillian.
И разрешили запускать trillian только на 15 машинах, т. е. сейчас использует аську только 15 человек. И млять, стоит и работает весь день. :-/
Выходит проблема явно в количестве людей использующих ICQ!!!
Глюки бывают, что иногда выкидывает, но раза с 3-4-го коннектится все же. Чую если разрешить запускать аськи еще, то грабли опять появятся... :(
Буду в день добавлять по одну человеку и вычислять предел. :)
И все же непонятно, что это за херня такая, выходит она только у меня. Раз ни у кого такого не наблюдается через NAT. :(
Или может у других такого не бывает, что больше 15 человек сидит одновременно в ICQ через NAT?
Просьба к людям у кого в сети используется NAT и активно используется ICQ.
Скажите свою версию FreeBSD, какие клиенты для ICQ используются, и какое кол-во одновременных подключений через NAT асикьюшников. Пожалуйста!Я уже не знаю куда рыть. Буду анализировать и пытаться сделать тоже самое, что и у вас в плоть до того, что учитывать версии.
Если найду решение проблемы обязательно напишу в конференцию, чтобы другие на подобные грабли не наступали.
Ты писАл, что пробовал запускать vicq -- значит, скорее всего, дело не в NAT.
> Если честно не охота возится с настройкой squid для асивсе более менее новые аси (начиная от #3286)
умеют работать через squid-proxy
(точно не скажу но где-то с версии 2.4 и выше)
без какой-либо настройки сквида,в старой асе нужно указать лишь айпи, порт, ресолв,
а в новой даже и указывать не надо - она сама всё находит
>> Если честно не охота возится с настройкой squid для аси
>
>все более менее новые аси (начиная от #3286)
>умеют работать через squid-proxy
>(точно не скажу но где-то с версии 2.4 и выше)
>без какой-либо настройки сквида,
>
>в старой асе нужно указать лишь айпи, порт, ресолв,
>а в новой даже и указывать не надо - она сама всё
>находит
Да проехали уже это, ведь писал, что через squid и socks таже фигня. :(Но все равно спасибо за содействие. :)
>Ты писАл, что пробовал запускать vicq -- значит, скорее всего, дело не
>в NAT.vicq я запускал на сервере когда login.icq.com уже не хотел работать с основным шлюзом.
Например на новом шлюзе, когда я его только создал, vicq и ickle работали без проблем, пока я весь офис на новый шлюз не повесил. Только когда и новый шлюз так сказать "засрал" (хватило где-то минут на 40) они и на новом шлюзе не запускаются. Вот так.
Вот ведь, что интересно за ночь получается все наши IP так сказать "отчищаются" ведь с утра на любой шлюз можно весь офис садить. Часа два работать будет. :)
Может мне написать скрипт который раз в два часа будет NAT на новый IP вешать? :)) 6 IP как раз на рабочий день хватит. :)
Но это же явно гон, смех сквозь слезы. :)И еще рабочий день у нас заканчивается в 18.00, как-то один сотрудник задержался до 9 вечера. И после 9 у него ася заработала. В то время как весь день (не считая первых двух часов с утра) аски орали FLAP header.
Значит как минимум на "отчистку" IP нужно часа три. :)Я после уже нескольких недель мучений все больше склоняюсь к тому, что пакеты режет сам login.icq.com (козлы они гребанные если это так), другой вопрос за ЧТО?! Чем мы им не угодили? Неправильные клиенты (trillian)? Но ведь 15 человек например работают нормально с "неправильными" клиентами. :-/
Ладно, в понедельник добавлю еще одного человека, которому можно будет запускать асю, так день за днем и вычислю предел. :)
может все-таки нат ограничивает число одновременных подключений... попробуй одновременно начать закачку, например по фтп, с одного и того же сервера какого-нибудь достаточно большого файла со всех машин поочереди и смотри - может в какой-то момент времени (после очередной попытки начать закачку) то же будет отказ в соединении... только нужно выбрать сервер у которого не ограничено число одновременных подключений с одного айпи...