Распространенные ошибки соединений (IRC)

Version 1.0.0


Last translated by The_Paranormal () on 2005-06-012

Originally written by Hammer () and Merlin` () on 2005-05-22

Please direct any comments or feedback about this document (only! no help requests!) to docs@dal.net. If you need help on issues not covered in this document, please see the information at http://help.dal.net.

Введение

Настоящий документ написан с целью помочь пользователям в разрешении с соединением. Чтобы помочь Вам лучше понять ситуацию, мы применим следующую аналогию:

Джо это Ваш mIRC - IRC клиент.

Мэри это IRC сервер (так же как и Джейн, Хельга, Киоко, все работают в том же месте (сети), где и Мэри

Оператор на коммутаторе, где работает Мэри - это произвольный сервер сети (обычно irc.dal.net).

В большинстве случаев в нашем сценарии Джо пытается дозвониться до Мэри по телефону.

Contents

1 · [10049] Can't assign requested address (Не могу назначить запрошенный адрес)

Сценарий: Джо звонит на коммутатор в компанию, где работает Мэри; ему неважно, кто ему ответит (Мэри, Джэйн, Хельга или Киоко), он просто звонит по основному номеру компании. Но оказывается, что номер изменили (временно). Решение, конечно, состоит в том, чтобы звонить Мэри (или Джейн, или Хельге и т.п.) напрямую.

Это означает, что IRC сервер ни для кого не доступен. Наиболее вероятно, что админы изменили свои DNS записи, чтобы те указывали на несуществующий IP 255.255.255.255 для обхода DDoS (Distributed Denial of Service - распределенный отказ в обслуживании) атак. Лучше попытаться указать определенный IRC сервер (например matrix.dal.net, а не "коммутатор" - irc.dal.net) для коннекта. (Когда админы указывают в DNS записях IP 127.0.0.1, Вы получаете ошибку "Connection refused" (Отказано в соединении), т.к. Вы пытаетесь соединиться со своим собственным компьютером как с сервером. Если же они вообще не укажут IP, Вы получите сообщение "Unable to resolve IRC server". (Невозможно отрезолвить адрес сервера.))

2 · [10050] Network is down or [10051] Network unreachable (Сеть не работает, или Сеть недоступна

Сценарий:Джо слышит гудок в трубке, но телефон Мэри не звонит.

Такие ошибки возникают если сеть не работает, или не работает один из сегментов сети на пути к конечной сети и нет пути для перемаршрутизации пакетов.

3 · [10052] Network dropped connection on reset (Сеть сбросила соединение)

Сценарий: Джо слышит гудки, но в процессе дозвона (причем телефон Мэри звонит) коммутатор перестает работать.

Сервер, на котором установлен IRC сервер или сеть, "упал" или отправлен на перезагрузку. Просто попробуйте соединиться через несколько минут.

4 · [10053] Software cause connection abort (Софт вызвал разрыв соединения)

Сценарий: Джо и Мэри на телефоне и разговаривают друг с другом. Батарейка в телефоне Джо садится и он думает, что разговор с Мэри подошел к концу и вешает трубку.

Эта ошибка возникает на стороне клиента по многим причинам. В сущности, эта ошибка аналогична следующей, возникающей на стороне сервера.

5 · [10054] Connection reset by peer (Соединение сброшено сервером)

Connection reset by peer может вызываться совершенно разными причинами. В общем случае сервер определяет, что сокет больше не работает нормально и закрывает его со своей стороны.

5.1 Read Error (Ошибка чтения)

Сценарий: Мэри не может понять, что говорит Джо, и вешает трубку вместо того, чтобы терять его сообщения (данные).

Ошибка чтения возникает когда сервер не может успешно прочитать данные от клиента. Сервера собирают информацию от клиента и когда получают ошибку при чтении данных, отключают пользователя, что приводит к сообщению "Read Error" при выходе.

5.2 Write Error (Ошибка записи)

Сценарий: Мэри пытается говорить с Джо, но полагает, что он ее не слышит. Поэтому она вешает трубку вместо того, чтобы мириться с потерей сообщений (данных).

Ошибка записи возникает когда сервер не может успешно записать информацию в клиента. При получении сервером информации, он обычно отвечает на это своими данными клиенту. Если сервер получает ошибку при записи в клиент, он отключает пользователя, и это приводит к сообщению "Write Error" по формату сходному с "Read Error"

5.3 Ping Timeout (эээ.. Пинг таймаут!)

Сценарий: Мэри, завозившись по хозяйству с детьми и сильно отвлекаясь, постоянно спрашивает Джо, слушает ли он ее. И если не получает ответа достаточно быстро - вешает трубку.

Сервер автоматически пингует пользователя через определенный промежуток времени. Это делается для того, чтобы убедиться, что клиент все еще на связи. Когда Вы видите сообщения "PING? PONG!" в окне статуса, это означает, что сервер послал пинг-запрос на Вашу машину и она отослала ему понг-ответ. Если Вы отключаетесь, а сервер не знает об этом, то он автоматически сбросит Ваш ник из сети после того, как долго не будет получать понг-ответы, что выльется в квит по "пинг таймауту". Такое может произойти с любым.

5.4 Broken pipe (Нарушенный пайп)

Сценарий: Мэри обнаружила записку с сообщением, которое ей надо было передать Джо, но каким-то образом, между запиской и ее ртом сообщение потерялось. Мэри пытается передать Джо содержание, но не уверена, что у нее это выходит и вешает трубку полагая это лучшим вариантом, чем потеря информации (данных).

Ошибка "сломанного пайпа" возникает когда сервер понимает, что у него есть сообщение для отсылки вовне, но он не может подать его на сокет из-за внутренний ошибки передачи данных.

5.5 Остальные ошибки

Сценарий: Множество вариантов; возможно в разговор вмешался оператор и это заставило Мэри усомниться в правильности звонка и она повесила трубку.

6 · [10055] No buffer space available (Нет места в буфере)

Сценарий: Джо хочет позвонить Мэри, но у него заняты обе руки.

Это означает, что у mIRCа проблемы при создании нового сетевого сокета и он не может использовать Ваше Интернет соединение для коннекта к IRC серверу. Если Вы используете много других сетевых приложений одновременно, то можете получить такую ошибку. Закройте какие-нибудь приложения и/или перезайдите в Интернет. Эта ошибка так же указывает на нехватку ресурсов системы. Она может возникнуть если Вы пытаетесь запустить слишком много приложений (любого типа). Если ошибка имеет тенденцию возникать после запуска какого-то определенного приложения, то это может быть симптомом того, что данное приложение некорректно возвращает системе ресурсы (вроде памяти). Или это может быть результатом некорректного закрытия приложения. Если ошибка настаивает на своем существовании, перезайдите в Windows или перезагрузите машину. Вы можете мониторить доступную память через команду "Help/About..." в Windows Explorer.

7 · [10060] Connection timed out (Тайм-аут соединения)

Сценарий: Джо позвонил Мэри, но ее телефон не звенит, либо она не снимает трубку.

Может возникать из-за тормозов Интернета. Либо Вы пытаетесь соединиться с сервером, который расположен очень далеко, либо нарушено соединение между IRC сервером и Вашим провайдером. Очень часто это вызвано отсутствием надежного соединение с Интернетом (еще до запуска mIRCа). Терпение в данном случае будет лучшим выходом. Попробуйте снова через несколько минут или попытайтесь соединиться с другим IRC сервером сети. Больше Вы ничего сделать здесь не сможете.

Соединение или посланный запрос провален потому что отвечающая сторона не ответила после определенного периода времени (время таймаута зависит от коммуникационного протокола)

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

Есть ли у Вас сконфигурированный роутер? Работает ли роутер (проверьте пингом его самого, а затем пингом адреса по другую его сторону)? Попробуйте трассировку маршрута (traceroute) до конечного адреса для проверки всех роутеров на маршруте.

Проверьте Вашу маску подсети. Если у Вас нету надлежащей маски подсети, Ваша сеть может принимать локальные адреса за удаленные (так что оно будет форвардить адреса на локальную подсеть роутеру, вместо локальной широковещательной рассылки ARP-запросов) или наоборот.

8 · [10061] Connection refused (Отказ в соединении)

Сценарий: Мэри вообще нет дома. Попробуйте позвонить Джэйн.

Нельзя установить соединение потому что сервер отказывает в этом. Это обычно является результатом попытки соединение с сервисом, который неактивен на удаленной машине.

Либо Вы пытаетесь соединиться с неверным хостом, либо приложение, с которым Вы пытаетесь установить контакт, на сервере не запущено. Проверьте адрес назначения. Если для коннекта Вы используете имя хоста, то проверьте, резолвится ли оно в корректный IP адрес? Если для разрешения имен используется локальная таблица хостов, возможно что Вы резолвите устаревший адрес. Еще может быть такое, что локальный сервис использует неверный номер порта (хотя это маловероятно).

Вы можете проверить, что удаленная система отказывает Вам в соединении проверив локально сетевую статистику. Убедитесь, что Ваша система имеет утилиту, умеющую эту статистику показывать. Используя утилиту выясните, получаете ли Вы TCP resets или ответы ICMP "Порт недоступен" каждый раз, когда пытаетесь соединиться.

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

  • Вы пытаетесь соединиться с неверным портом. Наиболее частая проблема.

  • Вы пытаетесь соединиться с неверным адресом.

  • Сервер не запущен на удаленной машине.

  • Сервер не прослушивает нужный порт.

9 · [10065] No route to host Error (Отсутствует маршрут до хоста)

Сценарий: Джо не может даже найти свой телефонный аппарат.

Обычно это означает, что у Вас отсутствует надежное соединение с Интернетом. Windows не может понять как и где искать IRC сервер. Ничего тут не сделать с IRC или mIRC. Проверьте Ваше соединение с Интернетом (перезайдите, если все кажется в норме) и попытайтесь снова.

10 · Unable to resolve IRC server (Нельзя отрезолвить адрес IRC сервера)

Сценарий: Джо пытается дозвониться до Мэри, но оператор не знает, кто она такая.

Эта ошибка возникает когда записи DNS (которые переводят имя хоста в IP адрес) изменены или вообще отсутствуют (ни одного DNS сервера не может быть найдено)

  • DNS сервер для данного имени хоста не работает.

  • Записи DNS для данного домена больше не активны или некорректны.

  • Новые DNS записи для домена, изменившего IP еще, не были распространены и все еще указывают на старый IP адрес, который может также выдавать ошибки Connection Refused или Connection Timed Out.

11 · В заключение

Есть еще несколько ошибок, которые я не упомянул. Описание этих ошибок Вы можете найти здесь: http://www.mirc.co.uk/help/servererrors.html (Особая благодарность Krejt'у за этот документ) Надеемся, что настоящий документ оказался полезен читателю.