fbclient.dll обламывается работать по TCP

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

fbclient.dll обламывается работать по TCP

Сообщение Deem » 24 май 2007, 12:53

FB 1.5 Киентская библиотека исп. - fbclient.dll. Работа в LAN.

Иногда происходит такая вещь: на некоторых машинах клиентская прога отказывается работать с сервером по TCP.

Ответ такой (машина с FB - SERVER (192.168.0.1)):

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

Unable to complete network request to host "SERVER".
Failed to establish a connection.
или такой

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

Unable to complete network request to host "192.168.0.1".
Failed to establish a connection.
TCP на машине работает, работают клиенты самодельного чата и др.

И еще : если указать клиенту сетевой адрес этой же машины (на ней тоже висит проверочный FB), то он вяжется с FB по TCP.


"Злые языки" говорят, что у FB c сетью проблем нет.
Что происходит? Подскажите.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 24 май 2007, 20:09

Что происходит? Подскажите.
проверяйте firewall, антивирусы, клиенты proxy.

считаю что обсуждать тут нечего. возьмите чистую машину с корректными настройками tcp, без упомянутой выше дряни, и она ВСЕГДА будет коннектиться.

промониторить коннект можно tcpview и прочими средствами.

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 10:02

Егеж.... Я и говорю: чистая машина коннектилась. А после установки N-ного числа разных прог - перстала. Я пытался выяснить, кто из прог виноват - не отловил. У меня на машине ни файрволов, ни антивирусов. Долго не было аськи. Все работало. Как-то поигрался я с ней - разные клиенты ставил, симы, ICQ, трилианы . И вдруг у меня тоже перестало коннектиться по TCP. Мои программки на сокетах прекрасно работают.
Обрадовался, что нашел причину - аська. Деинсталлировал все - не вяжется. На машине стоит местный FB (для испытаний). После переинсталляции его, клиент стал коннектится к удаленному FB по TCP. О, думаю, -решение. Снова налепил асек. Сначала все работало, потом снова отвалилось. Зарезал асек, переисталлировал местный FB - и нихрена. Сначала была мысля, что какая-то DLL системная виндовая кем-то заменяется и клиент не может с сокетами работать. Но другие проги работают.


По NamedPipe вяжется всегда.
При попытке связи по TCP матюкается так:

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

Unable to complete network request to host "SERVER".
Failed to establish a connection.
Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.



Такая хрень произошла у меня на XP без паков. На других машинах с такой фигней - W2000 SP4.

Пусть ответит только тот, кто такое видел и вышел из положения. А разных умозаключений, типа "FB без изьянов, а ошибка в твоей ДНК" я могу и сам накидать. Спасибо.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 май 2007, 10:41

"FB без изьянов, а ошибка в твоей сетке"
так устраивает ?

ping SERVER что говорит ?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 10:52

Говорит: все ништяк. Вяжусь на 192.168.0.10 (это мой сетевой и FB есть) - усе работает по TCP. Такое впечатление (и скорее всего), что виновата не машина клиента, а сервер кого хочет, того и пускает по TCP. Остальных по FIFO. В качестве сервера W2000 SP4, так касперский есть.

Но на сервере ничего не изменялось, тогда как изменялись результаты коннекта к нему.

Слгласен, в сети что-то не то. Щас проверю другой прогой коннект к серваку.

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 11:00

Запустил на сервере свой NETChatServer (на сокетах). Со своей машины приконнектился своим NETChatClient, и представьте себе, что все прекрасно работает. Ну и чего делать? При чем тут "пакеты" и другая лабуда? Они идут как надо.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 май 2007, 11:34

Deem писал(а):Говорит: все ништяк. Вяжусь на 192.168.0.10 (это мой сетевой и FB есть) - усе работает по TCP
Слово "ништяк" не присутствует в списке системных сообщений, выбирай слова - ты не на дискотеке, это раз.
Твой ИП никого не интересует, речь шла о пинге по имени, это два.
Сетевой протокол FIFO мне лично не известен, это три.
Раз ты сам пишешь программы (аж!) на сокетах, то дожен понимать что обозначает системное сообщение, выдаваемое тебе клиентом FB, это четыре.

Хватит ?

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 25 май 2007, 11:43

Deem писал(а):В качестве сервера W2000 SP4, так касперский есть.
FB в исключения добавлен?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 13:39

Да, включен.

Но вот хохма: SERVER/3050 все прекрасно связалось по TCP! Чисто "на дурняк", чем черт не шутит, воткнул. И шо это такое? А у клиента fbclient.dll и настроек (в файле) нету. Он чо, самолично решил вязаться на другой порт?


А это пишет IBExtert при проверке коннекта при использовании SERVER и TCP :
Attempting to connect to:
server:d:\lenbase\newlenbase.fdb

Connecting... Failed!
------------------------------------
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
Unable to complete network request to host "server".
Failed to establish a connection.
Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.
.
А это при SERVER/3050:
Attempting to connect to:
server/3050:d:\lenbase\newlenbase.fdb

Connecting... Passed!
Server version: WI-V6.3.2.4731 Firebird 1.5

Attempting to connect to services manager... Passed!

Disconnecting from database... Passed!
Блин, как это обьяснить? Кто-то погрыз fbclient.dll? Так он сто раз копировался и переустанавливался. И этот метод помог и на других машинах с W2000, которые давно отказались по TCP работать.

Это, типа, как бельченок говорил: загадка природы.

А теперь можно обсудить снифферы, файрволы и прочие прокси-клиенты. :)

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 13:56

Народ, а теперь просветите меня, при пмощи чего я мог отловить этот вариант (клинт коннектится не на тот порт). И на какой машине стоило бы это искать (думаю на серваке).
Хотя, ирреальная какая-то ошибка. Кто мог в рантайме подпортить строку коннекта? Причем, уже составленную строку я вывожу на экран при коннекте, и там мусора ранее (пока все работало) не наблюдалось. Ипользую IBX. Блин, да причем здесь он, если IBExpert делал то же самое?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 14:30

Однозначно нашел причину херни (на моей конкретно машине) : fbclient.dll при установленном на локальной машине FB лезет в его конфиг (сволочь!) и использует (зачем?) порт, который указан же локальному FB (!), для доступа к удаленному - если в строке коннекта не указан конкретный порт !

Это глюк или фича? :evil:

На других машинах еще не проверил, но там тоже могут стоять embedded - сервера.

И снова "на дурняк" определился глюк. Чисто "а что, если".
Зла не хватает. Я, конечно, очень люблю FB (не связывался бы с ним), но заявления некоторых товарищей на фоне подобных выкрутас, раздражают: сеть херовая или мозги из ж... растут (Пилите, Шурочка, пилите. Они - золотые!).
Ладно, я не по злому. :)

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 14:40

Не удержусь: в который раз ворумы бесполезны, и хавцы на них тоже. :twisted:

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 май 2007, 14:42

Deem писал(а):Однозначно нашел причину херни (на моей конкретно машине) : fbclient.dll при установленном на локальной машине FB лезет в его конфиг (сволочь!) и использует (зачем?) порт, который указан же локальному FB (!), для доступа к удаленному - если в строке коннекта не указан конкретный порт !

Это глюк или фича? :evil:
Если бы ты, зайчоног, иногда читал релизные ноты, то не морочил бы голову себе и другим

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 14:49

Папа-заец, подскажи в каком разделе. Буду очень благодарным. Кстати, кто-нить кроме меня (нечитающего) упомянул о такой возможности? Ну хоть бы ты? А раздельчик скажи.

А даже если и есть там об ентом, все равно гавно. Т.к. читается даже конфиг embedded - сервака для коннекта на совсем другую машину. А для какой такой великой цели?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 15:02

:twisted: Да, таки есть такая глупость. И ей пофиг, чья это root-директория: клиентская или сервера. Но написано нечеловеческим языком. Читал я это несколько раз ранее. Но в моем контексте даже и не вспомнил.
А форумы для чего? Что не вспомнит один, "должны" вспомнить другие. Ладно.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 25 май 2007, 15:14

Deem писал(а):А форумы для чего? Что не вспомнит один, "должны" вспомнить другие. Ладно.
Т.е. ты утверждаешь, что мы тут на форуме обязаны быстренько вспомнить все-все возможные проблемы с подключением и с кривыми настройками, вывалить тебе список с фильтром на твои уже опробованные варианты, чтобы ты просмотрел каждое и попробовал, а вдруг это оно?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 15:33

Ша, Дикий, уже ни хто ничего не утверждает.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 25 май 2007, 17:03

Кстати, а зачем тебе локальный порт отличный от удалённого?

Deem
Сообщения: 22
Зарегистрирован: 18 фев 2005, 17:37

Сообщение Deem » 25 май 2007, 17:50

Я настроил локальный (но он не локальный, он нормальный, только стоит на моей машине, я на нем гоняю базы при тестировании изменений) сервачек на 3000 порт, тк отрабатывал работу через прокся, туннели, друю всякую лабуду. А клиент стоит совсем в другой папке, вяжется на сервак на ругой машине с работающей базой.
И фигли ему лезть в папку местного сервака?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 28 май 2007, 15:26

лучше скажи, фигли ты тут нам мозги парил? :) два конца свести про порты - это ж элементарно. пусть даже для тебя оказалось неожиданностью что клиент использует конфиг.
Причем ведь, рассказывал, что с разных с компов клиент не работает.

p.s. я вообще был против такого безобразия, изначально. т.е. клиент никогда никаких конфигов не хотел. и не надо было. но...

Ответить