Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка 10013 / 12 сообщений из 12, страница 1 из 1
27.05.2003, 22:57
    #32170180
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Я уже пытался опубликовать этот вопрос на сервере www.experts-exchange.com. Однако безрезультатно.

Проблема заключается в следующем: жил-был на сервере локальной сети Firebird. Жил он недолго (ок. 6 месяцев), но счастливо, иными словами абсолютно никаких проблем с ним не наблюдалось даже несмотря на то, что он нещадно эксплуатировался студентами (речь идет о локальной сети компьютерного класса ВУЗа).

Но в один прекрасный момент все клиенты стали выдавать сообщение "Unable to complete network request to host..." при попытке подключения к серверу по протоколу TCP/IP. Я просмотрел лог сервера и обнаружил там сообщение об ошибке WinSock 10013 "Permission denied", произошедшей при попытке обращения к функции bind() и, как следствие, к бесплодной попытке listen()... Что интересно, сервер продолжал работать по протоколам IPX, NetBEUI и локально. Перезагрузка сервера и переустановка Firebird ни к чему не привели. Тестовая версия Interbase 6.0 показала абсолютно то же самое. При попытке прослушивания порта 3050 другим приложением (естественно, при условии останова и/или деинсталляции Firebird) выводится сообщение о том, что порт занят.

Переустанавливать полностью сервер - не вариант, поскольку на данный момент это слишком трудоемко (на сервере обитает множество сервисов, и он является роутером и контроллером домена).

Предложения вроде "проверить кабель", "отключить брандмауэр" или "купить второй сервер" огромная просьба не отправлять ;-) Отчасти потому, что до момента сбоя конфигурация сервера не менялась и все работало нормально.

Использовать NetBEUI - заманчиво, но большинство клиентов работает через BDE, и я не знаю, как заставить интербейзовский драйвер BDE работать с этим протоколом. Сейчас я использую другую машину в качестве сервера Interbase, но это тоже не вариант, поскольку "другая" машина в силу специфики своего назначения время от времени перезагружается, клиенты при этом очень матерятся....

К сожалению, не имею возможности заинтересовать отвечающих материально, посему уповаю исключительно на вашу добрую волю, многоуважаемые Эксперты.

Зараенее огромное спасибо за комментарии...
...
Рейтинг: 0 / 0
28.05.2003, 07:03
    #32170211
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Ну если пишет пермишн денайд то может порыться в пермишнах? какая операционная система? что выдает команда netstat -a?
...
Рейтинг: 0 / 0
28.05.2003, 11:16
    #32170413
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Попробуй поставить FB на другой порт.
...
Рейтинг: 0 / 0
28.05.2003, 21:33
    #32171316
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
alex_k: Я поступил по-другому: порылся в MSDN и обнаружил следующее: ошибка 10013 может возникнуть вследствие использования функции setsockopt() с параметром SO_EXCLUSIVEADDRUSE. Дальнейшее - судя по всему - глюки WinSock, поскольку, насколько мне подсказывает здравый смысл, даже в случае отсутствия вызова shutdown() на "эксклюзивный" секет, проблема должна была бы исчезнуть самое позднее после перезагрузки сокета. ОС - Windows 2000, при чем фильтрацией пакетов я не пользовался. До возникновения проблемы мне пришлось перезагрузить сервер и есть вероятность, что в это время к FB был подключен клиент. Я вижу проблему в этом.

Gold: Для этого достаточно изменить строку "gds_db" в "services"??? - попробую, звучит заманчиво. Даже несмотря на то, что придется менять настройки девяти клиентов.

P. S. Вообще-то я не специалист по Interbase...
...
Рейтинг: 0 / 0
28.05.2003, 23:14
    #32171334
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Попробовал вручную отредактировать "services" дома... Чудесно... порт 3050 свободен. Странно, как я об этом сразу не догадался... Интересно, сработает на работе или нет. По идее, если глюк с конкретным портом, то должно сработать.
...
Рейтинг: 0 / 0
29.05.2003, 04:05
    #32171350
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Странный глюк.
>попытке прослушивания порта 3050 другим приложением (естественно, при
>условии останова и/или деинсталляции Firebird) выводится сообщение о том,
>что порт занят.
Нужно найти что за процесс слушает на нем. посмотри netstat есть там вообще *.3050
...
Рейтинг: 0 / 0
29.05.2003, 20:42
    #32172309
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
> Нужно найти что за процесс слушает на нем. посмотри netstat есть там
> вообще *.3050

Нет, в довольно внушительном списке, выдаваемом netstat, ни 3050, ни gds_db нет (когда служба остановлена). Глюк действительно странный, потому и хотелось бы добраться до его сути.

Впрочем, проблему я решил с переходом на другой порт. Странно, как эта мысль сразу не пришла в голову ;). В любом случае, спасибо за подсказку.

Итак, мое первоначальное предположение о глюке setsockopt() пока что подтверждается...
...
Рейтинг: 0 / 0
29.05.2003, 21:30
    #32172325
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
>Итак, мое первоначальное предположение о глюке setsockopt() пока что
>подтверждается...
если это действительно так, то, видимо, подобные проблемы возникнут со временем не только у тебя и не только с интербэйзом.
...
Рейтинг: 0 / 0
29.05.2003, 22:27
    #32172354
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Уверен, что я не первый, у кого возник подобный глюк. Однако не исключаю, что проблема может быть в FireBird-е, вернее, в некорректном закрытии им соединения TCP (например, не всегда вызывает shutdown()). Дизасемблировать FireBird, вроде как некультурно, попробую просмотреть его исходники. Думаю, на это уйдет немало времени. Но источник глюка найти хотелось бы.
...
Рейтинг: 0 / 0
30.05.2003, 05:40
    #32172400
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
не закрытый сокет это гон. Когда убивается процесс, убиваются и все хандлы, принадлежащие ему. И уж тем более, после перезагрузки все должно быть нормально. Так что это операционная система.
...
Рейтинг: 0 / 0
30.05.2003, 08:31
    #32172440
msa2003
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Можно ли сказать то же самое о разрешениях???
...
Рейтинг: 0 / 0
30.05.2003, 09:19
    #32172466
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка 10013
Про разрешения тогоже сказать нельзя. Но не думаю, что firebird специально меняет разрешения на порты в системе. Это ОС, либо какая-то софтина левая, больше вариантов не вижу
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка 10013 / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]