Интернет-релейный чат


Из Википедии, свободной энциклопедии
  (Перенаправлено с Vhost (IRC) )
Перейти к навигации Перейти к поиску
Первый IRC-сервер, tolsun.oulu.fi, сервер Sun-3 , выставленный рядом с компьютерным центром Университета Оулу . (2001)

Internet Relay Chat (IRC) — это система текстового чата ( мгновенного обмена сообщениями ). IRC предназначен для группового общения в дискуссионных форумах, называемых каналами , [2] , но также позволяет общаться один на один через личные сообщения [3] , а также чат и передачу данных , [4] включая совместное использование файлов . [5]

Internet Relay Chat реализован как протокол прикладного уровня для облегчения общения в виде текста. Процесс чата работает по сетевой модели клиент-сервер . Пользователи подключаются к IRC-серверу, который может быть частью более крупной сети IRC. Пользователи подключаются с помощью клиента, который может быть веб-приложением, отдельной настольной программой или встроенным в часть более крупной программы. Примеры программ, используемых для подключения, включают Mibbit , IRCCloud , KiwiIRC и MIRC .

Использование IRC неуклонно снижается с 2003 года, потеряв 60 процентов пользователей. [6] В апреле 2011 года 100 крупнейших сетей IRC обслуживали более полумиллиона пользователей одновременно. [7] По состоянию на июнь 2021 года известно, что работает 481 различная сеть IRC, [8] из которых Libera Chat с открытым исходным кодом , основанная в мае 2021 года, имеет наибольшее количество пользователей с 20 374 каналами на 26 серверах; между ними 100 лучших сетей IRC совместно используют более 100 тысяч каналов, работающих примерно на тысяче серверов. [9]

История

IRC был создан Яркко Ойкариненом в августе 1988 года для замены программы под названием MUT (MultiUser Talk) на BBS под названием OuluBox в Университете Оулу в Финляндии , где он работал на кафедре обработки информации. Яркко намеревался расширить управляемое им программное обеспечение BBS, чтобы разрешить новости в стиле Usenet , обсуждения в реальном времени и аналогичные функции BBS. Первой частью, которую он реализовал, была часть чата, которую он сделал с заимствованными частями, написанными его друзьями Юрки Куоппалой и Юккой Пихлом. Первая сеть IRC работала на одном сервере с именем tolsun.oulu.fi. [10] Ойкаринен черпал вдохновение в чат-системе, известной как Bitnet Relay., который работал на BITNET . [11]

Юрки Куоппала подтолкнул Ойкаринена к тому, чтобы попросить университет Оулу освободить код IRC, чтобы его также можно было запускать за пределами Оулу, и после того, как они, наконец, выпустили его, Юрки Куоппала немедленно установил другой сервер. Это была первая «сеть IRC». Ойкаринен уговорил друзей из Университета Хельсинки и Университета Тампере запустить серверы IRC, когда количество его пользователей увеличилось, и вскоре последовали другие университеты. В это время Ойкаринен понял, что остальные функции BBS, вероятно, не вписываются в его программу. [10]

Ойкаринен связалась с людьми из Университета Денвера и Университета штата Орегон . У них была собственная сеть IRC, и они хотели подключиться к финской сети. Они получили программу от одного из друзей Ойкаринена, Виджая Субраманиама — первого иностранца, использовавшего IRC. Затем IRC разросся и стал использоваться во всей финской национальной сети — FUNET , а затем подключился к Nordunet , скандинавскому ответвлению Интернета. В ноябре 1988 года IRC распространился по Интернету, и в середине 1989 года по всему миру насчитывалось около 40 серверов. [10]

EFnet

В августе 1990 года в мире IRC произошли первые серьезные разногласия. «А-сеть» (сеть анархии) включала сервер с именем eris.berkeley.edu. Все было открыто, не требовало паролей и не имело ограничения на количество подключений. Как объясняет Грег «wumpus» Линдал: «У него была строка сервера с подстановочными знаками, поэтому люди подключали серверы и сталкивались со всеми». «Свободная сеть Эрис», EFnet, сделал машину eris первой, получившей Q-линию (Q для карантина) из IRC. Снова словами вампуса: «Эрис отказалась удалить эту линию, поэтому я сформировал EFnet. Это не было большой дракой; я подключил все хабы, и почти все остальные увлеклись». A-net была сформирована из серверов eris, а EFnet — из серверов не-eris. История показала, что большинство серверов и пользователей использовали EFnet. После распада A-net название EFnet стало бессмысленным, и снова это была единственная и неповторимая сеть IRC. [10]

Примерно в то же время IRC использовался для сообщения о попытке советского государственного переворота 1991 года во время отключения средств массовой информации . [12] Он ранее использовался аналогичным образом во время войны в Персидском заливе . [13] Журналы чата этих и других событий хранятся в архиве ibiblio . [14]

Подсетевой форк

Еще одна попытка разветвления, первая, которая имела долгосрочное значение, была инициирована «Wildthang» в Соединенных Штатах в октябре 1992 года (она отделилась от EFnet ircd версии 2.8.10). Предполагалось, что это будет просто тестовая сеть для разработки ботов, но она быстро превратилась в сеть «для друзей и их друзей». В Европе и Канаде велась работа над отдельной новой сетью, и в декабре французские серверы подключились к канадским, а к концу месяца французская и канадская сеть были подключены к американской, образовав сеть, которая позже называться « Андернет ». [10]

«Подсетники» хотели развить ircd в попытке сделать его менее требовательным к полосе пропускания и попытаться разобраться с канальным хаосом ( сетевые разделения и поглощения ), от которого начала страдать EFnet. Для последней цели Undernet внедрила временные метки, новую маршрутизацию и предложила CService — программу, которая позволяла пользователям регистрировать каналы, а затем пыталась защитить их от нарушителей спокойствия. Первый представленный список серверов от 15 февраля 1993 г. включает серверы из США, Канады, Франции, Хорватии и Японии. 15 августа новый рекорд по количеству пользователей был установлен на уровне 57 пользователей. [10]

В мае 1993 года был опубликован RFC 1459 [15] , в котором подробно описывается простой протокол для работы клиент/сервер, каналы, диалоги один-к-одному и один-ко-многим. [10] Примечательно, что значительное количество расширений, таких как CTCP, цвета и форматы, не включены в спецификации протокола, равно как и кодировка символов, [16] что привело к расхождению различных реализаций серверов и клиентов. Реализация программного обеспечения значительно различалась от одной сети к другой, каждая сеть реализовывала свои собственные политики и стандарты в своих собственных кодовых базах.

форк DALnet

Летом 1994 года сам Undernet был разветвлен. Новая сеть была названа DALnet (по имени ее основателя: dalvenjah), созданной для лучшего обслуживания пользователей и большей защиты пользователей и каналов. Одним из наиболее значительных изменений в DALnet было использование более длинных никнеймов (исходное ограничение ircd составляло 9 букв). Модификации DALnet ircd были сделаны Алексеем «Lefler» Косутом. Таким образом, DALnet был основан на ircd-сервере Undernet, хотя пионеры DALnet отказались от EFnet. По словам Джеймса Нг, первые люди DALnet были «операторами в #StarTrek, больными постоянными расколами / задержками / поглощениями и т. д.». [10]

DALnet быстро предложил глобальные WallOps (сообщения IRCop, которые могут видеть пользователи с +w (/mode NickName +w)), более длинные псевдонимы, псевдонимы Q:Lined (псевдонимы, которые нельзя использовать, например, ChanServ, IRCop, NickServ и т. д.) , глобальные K:Lines (запрет одного человека или всего домена с сервера или всей сети), только связь IRCop: GlobOps, режим +H, показывающий, что IRCop является «помощью» и т. д. Была написана большая часть новых функций DALnet. в начале 1995 года Брайаном «Морфером» Смитом и позволяет пользователям владеть псевдонимами, контролировать каналы, отправлять заметки и многое другое. [10]

Форк IRCnet

В июле 1996 года, после месяцев флеймовых войн и дискуссий в списке рассылки, произошел еще один раскол из-за разногласий по поводу того, как должна развиваться разработка ircd. В частности, «европейская» сторона (большинство из этих серверов находились в Европе), которая позже назвала себя IRCnet , выступала за задержку ника и канала, тогда как сторона EFnet приводила доводы в пользу временных меток. [10] Были также разногласия по поводу политики: европейская сторона начала устанавливать набор правил, определяющих, что могут и чего не могут делать IRCops, точка зрения, против которой выступает американская сторона. [17]

Большинство (но не все) серверов IRCnet находились в Европе, тогда как большинство серверов EFnet находились в США. Это событие также известно как «Великий раскол» во многих сообществах IRC. С тех пор (по состоянию на август 1998 г.) EFnet выросла и превысила количество пользователей, которые у нее были тогда. Осенью (северной) 2000 года у EFnet было около 50 000 пользователей, а у IRCnet 70 000. [10]

Современный IRC

IRC сильно изменился за время своего существования в Интернете. Новое серверное программное обеспечение добавило множество новых функций.

  • Услуги : сетевые боты для облегчения регистрации псевдонимов и каналов, отправки сообщений для пользователей в автономном режиме и функций оператора сети.
  • Дополнительные режимы: в то время как исходная система IRC использовала набор стандартных режимов пользователя и канала, новые серверы добавляют много новых режимов для таких функций, как удаление цветовых кодов из текста [18] или сокрытие маски хоста пользователя («маскировка») для защиты от атаки типа «отказ в обслуживании» . [19]
  • Обнаружение прокси: большинство современных серверов поддерживают обнаружение пользователей, пытающихся подключиться через небезопасный (неправильно настроенный или эксплуатируемый) прокси-сервер , которому затем может быть отказано в соединении. Это программное обеспечение для обнаружения прокси используется несколькими сетями, хотя этот список прокси в реальном времени не существует с начала 2006 года. [20]
  • Дополнительные команды: Новыми командами могут быть такие вещи, как сокращенные команды для выдачи команд Службам, команды только сетевого оператора для управления маской хоста пользователя. [ нужна ссылка ]
  • Шифрование : для участка соединения клиент-сервер может использоваться TLS (сообщения перестают быть безопасными после того, как они ретранслируются другим пользователям по стандартным соединениям, но это затрудняет подслушивание или прослушивание индивидуальных IRC-сессий). Для связи между клиентами можно использовать SDCC (Secure DCC). [ нужна ссылка ]
  • Протокол подключения: к IRC можно подключиться через IPv4 , старую версию интернет-протокола , или через IPv6 , текущий стандарт протокола.

По состоянию на 2016 год в рамках рабочей группы IRCv3 проводится новая работа по стандартизации, которая фокусируется на более продвинутых клиентских функциях, таких как мгновенные уведомления, улучшенная поддержка истории и повышенная безопасность. [21] По состоянию на 2019 год ни одна из крупных сетей IRC полностью не приняла предложенный стандарт. [22]

После своей золотой эры в 1990-х и начале 2000-х годов (240 000 пользователей QuakeNet в 2004 году) IRC пережил значительный спад, потеряв около 60% пользователей в период с 2003 по 2012 год, когда пользователи перешли на более новые платформы социальных сетей , такие как Facebook или Twitter . [6] , но и к открытым платформам, таким как XMPP , который был разработан в 1999 году. Некоторые сети, такие как Freenode , не последовали общей тенденции и за тот же период увеличились более чем в четыре раза. [6] Однако Freenode, у которого в 2016 году было около 90 000 пользователей, с тех пор сократилось до 65 000 пользователей. [23]

Крупнейшие сети IRC традиционно группируются как «Большая четверка» [24] [25] [26] [27] — это обозначение для сетей, которые возглавляют статистику. Сети «Большой четверки» периодически меняются, но из-за того, что IRC является сообществом, у пользователей есть выбор из большого количества других сетей.

Исторически «большой четверкой» были: [24] [25] [26]

  • EFnet
  • IRCnet
  • Андернет
  • ДАЛнет

IRC достиг 6 миллионов одновременных пользователей в 2001 году и 10 миллионов пользователей в 2003 году, упав до 371 тысячи в 2018 году .

По состоянию на сентябрь 2021 года крупнейшими сетями IRC являются:

  • Libera Chat  – около 47 тысяч пользователей в часы пик
  • IRCnet  – около 20 тысяч пользователей в часы пик
  • Undernet  — около 15 тысяч пользователей в часы пик
  • OFTC  — около 14 тыс. пользователей в часы пик
  • EFnet  — около 12 тысяч пользователей в часы пик
  • Rizon  — около 11 тысяч пользователей в часы пик
  • QuakeNet  — около 10 тысяч пользователей в часы пик
  • DALnet  — около 8 тысяч пользователей в часы пик

К 100 ведущим IRC-сетям в часы пик подключается около 220 000 пользователей. [28]

Лента новостей

Хронология основных серверов:

  • EFnet , с 1990 г. по настоящее время
  • Андернет , 1992 г. по настоящее время
  • DALnet , с 1994 г. по настоящее время
  • свободный узел , с 1995 по 2021 год [29]
  • IRCnet , с 1996 г. по настоящее время
  • QuakeNet , с 1997 г. по настоящее время
  • Сообщество открытых и свободных технологий , с 2001 г. по настоящее время
  • Ризон с 2002 г. по настоящее время
  • Libera Chat , 2021 г. по настоящее время

Техническая информация

Скриншот HexChat , IRC-клиента для сред GTK .
Xaric, текстовый IRC-клиент, используемый в Mac OS X. Показаны два IRC-канала и приватный разговор с автором программы.

IRC — открытый протокол , использующий TCP [15] и, опционально, TLS . IRC-сервер может подключаться к другим IRC-серверам для расширения сети IRC. [30] Пользователи получают доступ к сетям IRC, подключая клиента к серверу. [31] Существует множество клиентских реализаций, таких как mIRC , HexChat и irssi , и серверных реализаций, например оригинальный IRCd . Большинство серверов IRC не требуют от пользователей регистрации учетной записи, но перед подключением требуется ник . [32]

Первоначально IRC был простым текстовым протоколом [15] (хотя позже он был расширен), которому по запросу IANA был назначен порт 194/TCP . [33] Тем не менее, стандартом де - факто всегда был запуск IRC на 6667/TCP [34] и близлежащие номера портов (например, TCP-порты 6660–6669, 7000) [35] , чтобы избежать необходимости запускать программное обеспечение IRCd с root -правами. привилегии .

В протоколе указано, что символы должны быть 8-битными, но не указана кодировка символов, которую должен использовать текст. [16] Это может вызвать проблемы, когда пользователи, использующие разные клиенты и/или разные платформы, хотят общаться.

Все используемые сегодня протоколы IRC «клиент-сервер» произошли от протокола, реализованного в версии irc2.4.0 сервера IRC2, и задокументированы в RFC 1459. После публикации RFC 1459 новые функции в реализации irc2.10 привели к публикации нескольких пересмотренных протокольных документов (RFC 2810, RFC 2811, RFC 2812 и RFC 2813); однако эти изменения протокола не получили широкого распространения среди других реализаций. [ нужна ссылка ]

Хотя многие спецификации протокола IRC были опубликованы, официальной спецификации нет, поскольку протокол остается динамичным. Практически ни один клиент и очень немногие серверы строго не полагаются на вышеупомянутые RFC в качестве эталона. [ нужна ссылка ]

Microsoft сделала расширение для IRC в 1998 году через проприетарный IRCX . [36] Позже они прекратили распространение программного обеспечения, поддерживающего IRCX, вместо этого разработали проприетарный MSNP .

Стандартная структура сети IRC-серверов представляет собой дерево . [37] Сообщения маршрутизируются только по необходимым ветвям дерева, но состояние сети отправляется на каждый сервер [38] и, как правило, существует высокая степень неявного доверия между серверами. Однако эта архитектура имеет ряд проблем. Неправильно работающий или злонамеренный сервер может нанести серьезный ущерб сети [39] , и любые изменения в структуре, будь то преднамеренные или вызванные условиями в базовой сети, требуют разделения сети и объединения сетей. Это приводит к большому объему сетевого трафика и ложным сообщениям о выходе/присоединении для пользователей [40] .и временная потеря связи с пользователями на разделяющих серверах. Добавление сервера в крупную сеть означает большую фоновую нагрузку на пропускную способность сети и большую нагрузку на память сервера. Однако после установления каждое сообщение нескольким получателям доставляется способом, аналогичным многоадресной рассылке , что означает, что каждое сообщение проходит по сетевому каналу ровно один раз. [41] Это преимущество по сравнению с протоколами без многоадресной рассылки, такими как простой протокол передачи почты (SMTP) [ нужна ссылка ] или расширяемый протокол обмена сообщениями и присутствия (XMPP) [ нужна цитата ] .

Демон IRC также может использоваться в локальной сети (LAN). Таким образом, IRC можно использовать для облегчения общения между людьми в локальной сети (внутреннее общение). [42] [43]

Команды и ответы

IRC имеет линейную структуру. Клиенты отправляют серверу однострочные сообщения, [44] получают ответы на эти сообщения [45] и получают копии некоторых сообщений, отправленных другими клиентами. В большинстве клиентов пользователи могут вводить команды, добавляя к ним префикс «/». В зависимости от команды они могут либо полностью обрабатываться клиентом, либо (как правило, для команд, которые клиент не распознает) передаваться непосредственно на сервер, возможно, с некоторыми изменениями. [ нужна ссылка ]

Из-за особенностей протокола автоматизированные системы не всегда могут правильно сопоставить отправленную команду с ее ответом с полной надежностью и подвержены угадыванию. [46]

каналы

Основным средством общения с группой пользователей в установленном IRC-сеансе является канал . [47] Каналы в сети можно отобразить с помощью IRC-команды LIST , [48] которая перечисляет все доступные в настоящее время каналы, для которых не установлены режимы +s или +p, в этой конкретной сети.

Пользователи могут присоединиться к каналу с помощью команды JOIN , [49] в большинстве клиентов доступной как /join #channelname . Сообщения, отправленные на объединенные каналы, затем ретранслируются всем остальным пользователям. [47]

Каналы, доступные во всей сети IRC, имеют префикс «#», а каналы, расположенные локально на сервере, — «&». [50] Другие менее распространенные типы каналов включают каналы «+» — «немодальные» каналы без операторов [51] — и «!» каналы, форма канала с временными метками в сетях, обычно не имеющих временных меток. [52]

Режимы

Пользователи и каналы могут иметь режимы , которые представлены отдельными буквами с учетом регистра [53] и устанавливаются с помощью команды MODE . [54] Режимы пользователя и режимы канала являются отдельными и могут использовать одну и ту же букву для обозначения разных вещей (например, режим пользователя «i» — это невидимый режим, а режим канала «i» — только по приглашению. [55] ) Режимы обычно устанавливаются и сбрасываются . используя команду режима, которая принимает цель (пользователь или канал), набор режимов для установки (+) или отмены (-) и любые параметры, необходимые режимам.

Некоторые режимы канала принимают параметры, а другие режимы канала применяются к пользователю канала или добавляют или удаляют маску (например, маску запрета) из списка, связанного с каналом, а не применяются к каналу в целом. [56] Режимы, которые применяются к пользователям на канале, имеют связанный символ, который используется для представления режима в ответах на имена [57] (отправляемых клиентам при первом подключении к каналу [49] и использовании команды name) и во многих клиенты также использовали для представления его в отображаемом клиентом списке пользователей в канале или для отображения собственного индикатора для режимов пользователя.

Чтобы правильно анализировать входящие сообщения режима и отслеживать состояние канала, клиент должен знать, какой режим относится к какому типу и для режимов, которые применяются к пользователю на канале, какой символ соответствует какой букве. В ранних реализациях IRC это должно было быть жестко закодировано в клиенте, но теперь существует де-факто стандартное расширение протокола, называемое ISUPPORT, которое отправляет эту информацию клиенту во время соединения, используя числовое значение 005. [58] [59]

В IRC есть небольшая конструктивная ошибка в отношении режимов, которые применяются к пользователям на каналах: сообщение об именах, используемое для установления начального состояния канала, может отправлять только один такой режим для каждого пользователя на канале [57] , но несколько таких режимов могут быть установлены на одном канале. Один пользователь. Например, если пользователь имеет статус оператора (+o) и голосовой статус (+v) на канале, новый клиент не сможет увидеть режим с меньшим приоритетом (т. е. голосовой). Обходные пути для этого возможны как на стороне клиента, так и на стороне сервера, но ни один из них не реализован широко.

Стандартные (RFC 1459) режимы

Многие демоны и сети добавили дополнительные режимы или изменили поведение режимов в приведенном выше списке. [61] [62] [63] [64]

Операторы канала

Оператор канала — это клиент на канале IRC , который управляет каналом. Операторов канала IRC можно легко увидеть по символу или значку рядом с их именем (зависит от реализации клиента, обычно это префикс символа «@», зеленый кружок или латинская буква «+o»/«o»). В большинстве сетей оператор может:

  • Выгнать пользователя
  • Заблокировать пользователя
  • Дайте другому пользователю статус оператора IRC-канала или голосовой статус IRC-канала.
  • Измените тему IRC-канала, когда установлен режим канала +t.
  • Измените блокировки режима канала IRC.

IRC-операторы

Есть также пользователи, которые поддерживают повышенные права на своем локальном сервере или во всей сети; они называются операторами IRC, [65] иногда сокращаются до IRCops или Opers (не путать с операторами канала). Поскольку реализация IRCd различается, меняются и привилегии оператора IRC на данном IRCd. RFC 1459 [65]утверждает, что операторы IRC являются «необходимым злом» для поддержания чистого состояния сети, и поэтому им необходимо иметь возможность отключать и повторно подключать серверы. Кроме того, чтобы предотвратить вход злонамеренных пользователей или даже вредоносных автоматических программ в IRC, операторам IRC обычно разрешается отключать клиентов и полностью блокировать IP-адреса или целые подсети. Сети, предоставляющие услуги (NickServ и др.), обычно позволяют своим операторам IRC также решать основные вопросы «владения». Дополнительные привилегированные права могут включать в себя отмену запретов на каналы (возможность присоединяться к каналам, к которым им не будет разрешено присоединяться, если они не будут работать), возможность управлять собой на каналах, где они не смогут работать без управления, автоматическое управление. на каналах всегда и пр.

Хостмаски

Маска хоста — это уникальный идентификатор IRC- клиента, подключенного к IRC- серверу . [66] [67] IRC - серверы , службы и другие клиенты, включая ботов , могут использовать его для идентификации конкретного сеанса IRC.

Формат маски хоста nick!user@host. Маска хоста похожа на адрес электронной почты , но ее не следует путать с .

Часть псевдонима — это псевдоним, выбранный пользователем, который может быть изменен во время подключения. Пользовательская часть — это имя пользователя, о котором сообщает ident на клиенте. [68] Если идентификатор недоступен на клиенте, имя пользователя, указанное при подключении клиента, используется после префикса с тильдой . [69]

Часть хоста — это имя хоста , с которого подключается клиент. Если IP-адрес клиента не может быть преобразован сервером в действительное имя хоста , он используется вместо имени хоста.

Из-за последствий для конфиденциальности раскрытия IP-адреса или имени хоста клиента некоторые демоны IRC также предоставляют функции конфиденциальности, такие как InspIRCd или режим «+x» UnrealIRCd. Это хеширует IP-адрес клиента или маскирует часть имени хоста клиента, делая его нечитаемым для пользователей, кроме IRCops . У пользователей также может быть возможность запросить «виртуальный хост» (или «vhost»), который будет отображаться в маске хоста, чтобы обеспечить дополнительную анонимность. Некоторые сети IRC, такие как Libera Chat или Freenode , используют их как «плащи», чтобы указать, что пользователь связан с группой или проектом. [70]

URI-схема

Существует три общепризнанных схемы универсального идентификатора ресурса (URI) для Internet Relay Chat: irc, ircsи irc6. [71] Когда они поддерживаются, они допускают гиперссылки различных форм, в том числе

irc://<хост>[:<порт>]/[<канал>[?<ключевое_слово канала>]]
ircs://<хост>[:<порт>]/[<канал>[?<ключевое_слово канала>]]
irc6://<хост>[:<порт>]/[<канал>[?<ключевое_слово канала>]]

(где элементы, заключенные в квадратные скобки ([,]) являются необязательными), которые будут использоваться для (при необходимости) подключения к указанному хосту (или сети, если она известна IRC-клиенту) и присоединению к указанному каналу. [72] (Это можно использовать в самом клиенте или в другом приложении, например, в веб-браузере). irc — это URI по умолчанию, irc6 указывает соединение, которое должно быть выполнено с использованием IPv6, а ircs указывает безопасное соединение.

В соответствии со спецификацией к именам каналов, начинающимся с буквенно -цифрового символа, добавляется обычный символ решетки (#), что позволяет его не указывать. Некоторые реализации (например, mIRC) делают это безоговорочно , что приводит к (обычно непреднамеренному) дополнительному каналу (например, ##channel), если он включен в URL-адрес.

Некоторые реализации позволяют указать несколько каналов, разделенных запятыми. [73]

Проблемы

Проблемы в первоначальном дизайне IRC заключались в том, что количество общих данных о состоянии [74] [75] являлось ограничением его масштабируемости, [76] отсутствие уникальной идентификации пользователя, приводящее к проблеме конфликта псевдонимов, [77] отсутствие защиты от разбиение сети с помощью циклической маршрутизации, [78] [79] компромисс между масштабируемостью ради информации о присутствии пользователя в режиме реального времени, [80] слабости протокола, предоставляющие платформу для злоупотреблений, [81] отсутствие прозрачной и оптимизируемой передачи сообщений , [82] и без шифрования. [83] Некоторые из этих проблем были решены в Modern IRC .

Атаки

Поскольку IRC-соединения могут быть незашифрованными и обычно охватывают длительные периоды времени, они являются привлекательной мишенью для DoS/DDoS -атак и хакеров . Из-за этого необходима тщательная политика безопасности, чтобы гарантировать, что сеть IRC не подвержена атакам, таким как война за поглощение . Сети IRC также могут иметь пользователей или серверы K-линии или G-линии , которые могут нанести вред.

Некоторые IRC-серверы поддерживают соединения SSL/TLS в целях безопасности. Это помогает остановить использование программ сниффера пакетов для получения паролей пользователей IRC, но мало используется за пределами этой области из-за общедоступного характера каналов IRC. Соединения SSL требуют поддержки как клиента, так и сервера (что может потребовать от пользователя установки двоичных файлов SSL и специальных исправлений или модулей IRC-клиента на свои компьютеры). Некоторые сети также используют SSL для соединений сервер-сервер и предоставляют специальный флаг канала (например, +S), чтобы разрешить доступ к каналу только пользователям, подключенным через SSL, при этом запрещая идентификацию оператора в открытом тексте, чтобы лучше использовать преимущества, которые предоставляет SSL. . [84] [85]

IRC служил ранней лабораторией для многих видов интернет-атак, таких как использование поддельных сообщений ICMP о недоступности для разрыва IRC-соединений на основе TCP ( nuking ), чтобы раздражать пользователей или способствовать захвату .

Предотвращение злоупотреблений

Один из самых спорных технических вопросов, связанных с реализациями IRC, который сохраняется и по сей день, - это достоинства протоколов «Задержка Ника / Канала» по сравнению с протоколами «Временная метка». Оба метода существуют для решения проблемы атак типа «отказ в обслуживании», но используют очень разные подходы. Проблема с первоначальным реализованным протоколом IRC заключалась в том, что при разделении и воссоединении двух серверов две стороны сети просто объединяли свои каналы. Если бы пользователь мог присоединиться к «расщепленному» серверу, где канал, существовавший на другой стороне сети, был пуст, и получить статус оператора, он стал бы оператором «объединенного» канала после подключения к сети.закончился; если пользователь взял псевдоним, существовавший на другой стороне сети, сервер убьет обоих пользователей при повторном присоединении («коллизия никнеймов»). Этим часто злоупотребляли, чтобы «массово убить» всех пользователей на канале, тем самым создавая «бесполезные» каналы, на которых не присутствовали операторы, способные справиться со злоупотреблениями. Помимо возникновения проблем в IRC, это побуждало людей проводить атаки типа «отказ в обслуживании» против серверов IRC, чтобы вызвать netsplit , которыми они затем злоупотребляли.

Стратегии задержки ника (ND) и задержки канала (CD) направлены на предотвращение злоупотреблений путем задержки повторных подключений и переименований. После того, как пользователь выходит из системы и никнейм становится доступным, или канал перестает существовать из-за того, что все его пользователи расстались (как это часто бывает во время netsplit ), сервер не позволит ни одному пользователю использовать этот никнейм или присоединиться к этому каналу, пока не наступит определенное время. период времени ( задержка ) прошел. Идея заключается в том, что даже если нетсплитпроисходит, это бесполезно для злоумышленника, потому что он не может взять псевдоним или получить статус оператора на канале, и, следовательно, не может произойти коллизия псевдонимов или «слияние» канала. В некоторой степени это доставляет неудобства законным пользователям, которые могут быть вынуждены ненадолго использовать другое имя после повторного присоединения ( популярным является добавление подчеркивания ).

Протокол метки времени является альтернативой задержкам ника/канала, который разрешает коллизии с использованием приоритета с меткой времени. Каждому никнейму и каналу в сети присваивается временная метка — дата и время создания. Когда происходит сетевой раскол, два пользователя с каждой стороны могут свободно использовать один и тот же псевдоним или канал, но когда две стороны объединяются, выжить может только один. В случае с никнеймами убивается более новый пользователь по его ТС; когда канал сталкивается, участники (пользователи канала) объединяются, но операторы канала на «проигравшей» стороне разделения теряют свой статус оператора канала.

TS — гораздо более сложный протокол, чем ND/CD, как по дизайну, так и по реализации, и, несмотря на то, что он претерпел несколько изменений, некоторые реализации все еще имеют проблемы с «рассинхронизацией» (когда два сервера в одной сети расходятся во мнениях относительно текущего состояния сервера). сети) и допуская слишком большую снисходительность к тому, что допускала «проигравшая» сторона. В исходных протоколах TS, например, не было защиты от пользователей, устанавливающих запреты или другие режимы в проигрышном канале, которые затем объединялись бы при воссоединении разделения, даже если пользователи, которые установили эти режимы, теряли свой статус оператора канала. Некоторые современные IRC-серверы на основе TS также включают некоторую форму ND и / или CD в дополнение к отметке времени в попытке дальнейшего ограничения злоупотреблений.

Сегодня большинство сетей используют подход с временными метками. Разногласия по поводу метки времени и ND/CD привели к тому, что несколько серверов отделились от EFnet и сформировали новый IRCnet . После разделения EFnet перешла на протокол TS, а IRCnet использовала ND/CD.

В последних версиях IRCnet ircd, а также ircd, использующих протокол TS6 (включая Charybdis), ND был расширен/заменен механизмом SAVE. Этот механизм назначает каждому клиенту UID при подключении к IRC-серверу. Этот ID начинается с цифры, что запрещено в никах (хотя некоторые ircds, а именно IRCnet и InspIRCd, позволяют клиентам переключаться на собственный UID в качестве ника).

Если два клиента с одним и тем же ником присоединяются с разных сторон сети («коллизия ников»), первый сервер, который увидит эту коллизию, заставит обоих клиентов изменить свой ник на свой UID, тем самым спасая обоих клиентов от отключения. В IRCnet псевдоним также будет заблокирован на некоторое время (ND), чтобы оба клиента не вернулись к исходному псевдониму, что приведет к повторному столкновению.

Клиенты

Клиентское программное обеспечение

Схема сети IRC с обычными клиентами (зеленый), ботами (синий) и вышибалами (оранжевый)

Клиентское программное обеспечение существует для различных операционных систем или программных пакетов, а также для сетевых или внутренних игр. Доступно множество различных клиентов для различных операционных систем, включая Windows , Unix и Linux , macOS и мобильные операционные системы (такие как iOS и Android ). В Windows mIRC — один из самых популярных клиентов. [86]

Некоторые программы, расширяемые с помощью подключаемых модулей, также служат платформами для клиентов IRC. Например, клиент ERC , полностью написанный на Emacs Lisp , включен в версию 22.3 Emacs. Следовательно, любая платформа, на которой может работать Emacs, может работать и с ERC.

Ряд веб-браузеров имеют встроенные IRC-клиенты, такие как Opera ( версия 12.18 и более ранние ) [87] и надстройка ChatZilla для Mozilla Firefox (для Firefox 56 и более ранних версий; включена как встроенный компонент SeaMonkey ) . . Веб-клиенты, такие как Mibbit и KiwiIRC с открытым исходным кодом, могут работать в большинстве браузеров.

Такие игры, как War§ow , [88] Unreal Tournament (до Unreal Tournament 2004 ), [89] Uplink , [90] Игры на основе Spring Engine , 0 AD и ZDaemon включают IRC. [91]

Интерфейс чата Ustream — это IRC с настраиваемой аутентификацией [92] , а также Twitch (ранее Justin.tv). [93] [94]

Боты

Типичное использование ботов в IRC заключается в предоставлении услуг IRC или определенных функций в канале, например, для размещения игры на основе чата или предоставления уведомлений о внешних событиях. Однако некоторые IRC-боты используются для запуска злонамеренных атак, таких как отказ в обслуживании, рассылка спама или эксплуатация. [95]

Вышибала

Программа, работающая как демон на сервере и функционирующая как постоянный прокси -сервер , известна как BNC или Bouncer. Цель состоит в том, чтобы поддерживать соединение с IRC-сервером, выступающим в роли ретранслятора между сервером и клиентом, или просто действовать в качестве прокси. [ Править ] Если клиент потеряет подключение к сети, BNC может оставаться подключенным и архивировать весь трафик для последующей доставки, позволяя пользователю возобновить сеанс IRC, не прерывая соединение с сервером. [96]

Кроме того, чтобы получить эффект, подобный вышибале, клиент IRC (обычно текстовый , например, Irssi ) может быть запущен на постоянно включенном сервере, к которому пользователь подключается через ssh . Это также позволяет устройствам, которые имеют только функции ssh, но не имеют фактического установленного клиента IRC, подключаться к IRC, а также позволяет совместно использовать сеансы IRC. [97]

Чтобы клиент IRC не закрывался при закрытии соединения ssh, клиент может быть запущен внутри мультиплексора терминала , такого как GNU Screen или tmux , таким образом, оставаясь постоянно подключенным к сети (сетям) IRC и имея возможность регистрировать разговор в каналах, которые пользователь интересуется или поддерживает присутствие канала в сети. По образцу этой установки в 2004 году был запущен IRC-клиент, следующий за клиент-сервером , под названием Smuxi . [98] [99]

Поисковые системы

Существует множество поисковых систем, которые помогают пользователю найти то, что он ищет в IRC. [100] [101] Как правило, поисковая система состоит из двух частей: «внутренней части» (или «паука/обходчика») и внешней «поисковой системы».

Серверная часть (паук/вебкраулер) — это рабочая лошадка поисковой системы. Он отвечает за сканирование IRC-серверов для индексации отправляемой через них информации. Индексируемая информация обычно состоит исключительно из текста канала (текста, который публично отображается на общедоступных каналах). Методом хранения обычно является какая-то реляционная база данных, такая как MySQL или Oracle . [ нужна ссылка ]

Интерфейсная «поисковая система» — это пользовательский интерфейс к базе данных. Он предоставляет пользователям возможность поиска в базе данных проиндексированной информации для извлечения данных, которые они ищут. Эти внешние поисковые системы также могут быть закодированы на многих языках программирования.

У большинства поисковых систем есть собственный паук, который представляет собой отдельное приложение, отвечающее за сканирование IRC и индексацию самих данных; однако другие являются «пользовательскими» индексаторами. Последние полагаются на то, что пользователи установят свое «дополнение» к своему IRC-клиенту; надстройка - это то, что отправляет в базу данных информацию о каналах, на которых находится пользователь. [ нужна ссылка ]

Многие пользователи внедрили свои собственные специальные поисковые системы, используя функции ведения журнала, встроенные во многие клиенты IRC. Эти поисковые системы обычно реализованы в виде ботов и предназначены для определенного канала или группы связанных каналов.

Кодировка символов

В IRC по-прежнему отсутствует единое общепринятое стандартное соглашение о том, как передавать символы вне 7-битного репертуара ASCII . IRC-серверы обычно [ требуется уточнение ] передают сообщения от клиента другому клиенту в виде последовательности байтов, без какой-либо интерпретации или перекодирования символов . В протоколе IRC (в отличие, например, от MIME или HTTP ) отсутствуют механизмы объявления и согласования вариантов кодировки символов. Это возложило ответственность за выбор подходящего кодека символов на клиента. На практике каналы IRC в основном использовали те же кодировки символов, что и операционные системы (в частности, Unix ). производные) в соответствующих языковых сообществах:

  • 7-битная эра: на заре IRC, особенно среди скандинавских и финских пользователей, национальные варианты ISO 646 были доминирующими кодировками символов . Они кодируют символы, отличные от ASCII, такие как Ä Ö Å ä ö å в кодовых позициях 0x5B 0x5C 0x5D 0x7B 0x7C 0x7D ( US-ASCII : [ \ ] { | } ). Именно поэтому эти коды всегда разрешены в никнеймах. Согласно RFC 1459, { | } в псевдонимах следует рассматривать как строчные эквиваленты [ \ ] соответственно. [16] К концу 1990-х использование 7-битных кодировок прекратилось в пользу ISO 8859-1 ., и такие сопоставления эквивалентности были исключены из некоторых демонов IRC.
  • 8-битная эра: с начала 1990-х годов 8-битные кодировки, такие как ISO 8859-1 , стали широко использоваться для европейских языков. У российских пользователей был выбор из KOI8-R , ISO 8859-5 [ править ] и CP1251 , и примерно с 2000 года современные российские IRC-сети конвертируют между этими разными часто используемыми кодировками кириллицы .
  • Многобайтовая эра: долгое время восточноазиатские IRC-каналы с логографическими сценариями в Китае, Японии и Корее использовали многобайтовые кодировки, такие как EUC или ISO-2022-JP . С общим переходом с ISO 8859 на UTF-8 на платформах Linux и Unix примерно с 2002 года UTF-8 становится все более популярной заменой многих ранее использовавшихся 8-битных кодировок на европейских каналах. Некоторые IRC-клиенты теперь могут читать сообщения как в ISO 8859-1, так и в UTF-8 по одному и тому же каналу, эвристически автоматически определяя, какая кодировка используется. Переход на UTF-8 начался, в частности, на финноязычном IRC ( Merkistö (финский) ).

Сегодня кодировка UTF-8 Unicode / ISO 10646 была бы наиболее вероятным претендентом на единую будущую стандартную кодировку символов для всех коммуникаций IRC, если бы такой стандарт когда-либо ослабил ограничение на размер сообщения в 510 байт. UTF-8 совместим с ASCII и охватывает расширенный набор всех других широко используемых стандартов наборов кодированных символов .

Обмен файлами

Подобно обычному обмену файлами P2P , пользователи могут создавать файловые серверы, которые позволяют им обмениваться файлами друг с другом с помощью настраиваемых ботов IRC или сценариев для своего клиента IRC . Часто пользователи объединяются для распространения вареза через сеть IRC-ботов. [102]

Технически IRC не предоставляет никаких механизмов передачи файлов ; совместное использование файлов осуществляется клиентами IRC , обычно с использованием протокола Direct Client-to-Client (DCC), в котором передача файлов согласовывается посредством обмена личными сообщениями между клиентами. Подавляющее большинство клиентов IRC поддерживают передачу файлов DCC, поэтому считается, что совместное использование файлов является неотъемлемой функцией IRC. [103] Однако обычное использование этого протокола иногда также приводит к спаму DCC. Команды DCC также использовались для использования уязвимых клиентов для выполнения таких действий, как отключение от сервера или выход из клиента.

Смотрите также

  • Чат
  • Протокол клиент-клиент
  • Сравнение протоколов обмена мгновенными сообщениями
  • Сравнение клиентов IRC
  • Сравнение мобильных IRC-клиентов
  • Хэмнет Игроки
  • Интернет-сленг
  • Список IRC-команд
  • Канал обслуживания
  • Matrix (протокол) и XMPP , аналогичные протоколы чата

Цитаты

  1. ^ В. Ричард Стивенс, TCP/IP Illustrated, Volume 1: The Protocols , Addison Wesley, 1994, ISBN 0-201-63346-9.
  2. ^ "Один ко многим" . Протокол интернет-ретрансляции чата . п. 11. сек. 3.2. дои : 10.17487/RFC1459 . RFC 1459 .
  3. ^ "Общение один на один" . Internet Relay Chat: Архитектура . п. 5. сек. 5.1. дои : 10.17487/RFC2810 . RFC 2810 .
  4. ^ Ролло, Трой. «Описание протокола DCC» . irchelp.org . Проверено 8 апреля 2011 г.
  5. Ван, Уоллес (25 октября 2004 г.). «Обмен мгновенными сообщениями и онлайн-чаты: интернет-релейный чат (IRC)» . Украсть эту книгу по обмену файлами (1-е изд.). Сан-Франциско, Калифорния : No Starch Press . стр.  61–67 . ISBN 978-1-59327-050-6.
  6. ^ a b c «IRC мертв, да здравствует IRC» . Пингдом . 24 апреля 2012 г. . Проверено 25 апреля 2016 г.
  7. ^ «Сети IRC - 100 лучших» . irc.netsplit.de . Проверено 8 апреля 2011 г.
  8. ^ «Сети IRC - в алфавитном порядке» . netsplit.de . Проверено 12 января 2022 г. .
  9. ^ «Сети IRC - 100 лучших» . netsplit.de . Проверено 12 января 2022 г. .
  10. ^ a b c d e f g h i j k Стенберг, Дэниел (29 марта 2011 г.). «История IRC (Internet Relay Chat)» . Проверено 25 апреля 2016 г. Я не испытывал всего этого. Я нашел информацию в разных местах и ​​получил информацию от разных людей, чтобы написать это. В этом мне помогли следующие люди: Грег "wumpus" Линдал, Веса "vesa" Руоконен, Джеймс Нг, Туомас Хейно, Ричард (орел в андернете), Ари Леммке.
  11. ^ Оикаринен, Яркко . «Основание IRC» . Проверено 8 апреля 2011 г.
  12. ^ «Стенограммы IRC времен попытки советского государственного переворота 1991 года» . Чапел-Хилл, Северная Каролина : ibiblio . Архивировано из оригинала 28 июня 2009 года . Проверено 8 апреля 2011 г.
  13. ^ «Журналы IRC о событиях войны в Персидском заливе» . Чапел-Хилл, Северная Каролина : ibiblio . Проверено 8 апреля 2011 г.
  14. ^ «Журналы основных событий в онлайн-сообществе» . Чапел-Хилл, Северная Каролина : ibiblio . Проверено 8 апреля 2011 г.
  15. ^ а б в "Введение" . Протокол интернет-ретрансляции чата . п. 4. сек. 1. doi : 10.17487/RFC1459 . RFC 1459 .
  16. ^ a b c «Коды символов» . Протокол интернет-ретрансляции чата . п. 7. сек. 2.2. дои : 10.17487/RFC1459 . RFC 1459 .
  17. ^ Энген, Вегард (май 2000 г.). «Великий раскол» . IRC.org . Проверено 25 апреля 2016 г.
  18. ^ "Режимы канала" . Вики-документация UnrealIRCd . Проверено 6 января 2018 г.
  19. ^ "Маскировка" . Вики-документация UnrealIRCd . Проверено 6 января 2018 г.
  20. ^ «Отключение монитора открытого прокси-сервера Blitzed» . Open Proxy Monitor, предоставленный сетью Blitzed IRC, был отключен… База данных была настолько велика, что команда практически не могла сделать резервную копию или найти новое место для продолжения службы. Вдобавок к этому, у большинства членов команды больше нет времени, чтобы поддерживать работу службы.
  21. Викискладе есть медиафайлы по теме IRCv3 . Рабочая группа IRCv3. 2016 . Проверено 25 апреля 2016 г. Рабочая группа IRCv3 — это собрание авторов клиентского и серверного программного обеспечения IRC, работающих над улучшением, поддержкой и стандартизацией протокола IRC с использованием обратно совместимых расширений.
  22. ^ "Сети - IRCv3" . 2019 . Проверено 9 августа 2019 г. .
  23. ^ "netsplit.de топ-10" . Проверено 12 июня 2021 г.
  24. ^ a b Харалабидис, Алекс (15 декабря 1999 г.). «IRCing на Macintosh: Ircle». Книга IRC: полное руководство по ретрансляционному интернет-чату (1-е изд.). Сан-Франциско, Калифорния : No Starch Press. п. 61 . ISBN 978-1-886411-29-6. В больших сетях, таких как «Большая четверка» — EFnet, IRCnet, Undernet и DALnet — попытка перечислить тысячи каналов с помощью Ircle всегда приводит к отключению из-за потока информации, в то время как другие клиенты обычно справляются с этой задачей, если вы находятся на прямом соединении Ethernet.
  25. ^ б Джонс , Стив, изд. (10 декабря 2002 г.). «Интернет-релейный чат». Энциклопедия новых медиа: основной справочник по коммуникациям и технологиям (1-е изд.). Таузенд-Оукс, Калифорния : публикации SAGE . п. 257 . ISBN 978-0-7619-2382-4. Сегодня существуют сотни независимых IRC-сетей, но «большую четверку» составляют EFNet, UnderNet, Dalnet и IRCnet.
  26. ^ a b Риттнер, Дон (3 марта 1999 г.). Книга iMac (1-е изд.). Скоттсдейл, Аризона : Coriolis Group. п. 215. ISBN 978-1-57610-429-3. Есть несколько крупных сетей: EFnet, UnderNET, DALnet и IRCnet составляют «Большую четверку».
  27. ^ Тюрбан, Эфраим; Лейднер, Дороти; Маклин, Эфраим; Уэтербе, Джеймс (7 февраля 2005 г.). "Коммуникация". Информационные технологии для управления: трансформация организаций в условиях цифровой экономики (5-е изд.). Хобокен, Нью-Джерси : John Wiley & Sons . стр. 106–107. ISBN 978-0-471-70522-2. Крупнейшие сети традиционно объединяются в «большую четверку»: EFNet, IrcNet, QuakeNet и UnderNet.
  28. ^ «Сети IRC - 100 лучших» . irc.netsplit.de . netsplit.de . Проверено 29 сентября 2021 г.
  29. ^ «Freenode совершает самоубийство, больше не является серьезной сетью IRC» . www.devever.net . Проверено 19 декабря 2021 г. .
  30. ^ "Серверы" . Протокол интернет-ретрансляции чата . п. 4. сек. 1.1. дои : 10.17487/RFC1459 . RFC 1459 .
  31. ^ «Клиенты» . Internet Relay Chat: Архитектура . п. 3. сек. 2.2. дои : 10.17487/RFC2810 . RFC 2810 .
  32. ^ «Клиенты» . Протокол интернет-ретрансляции чата . п. 5. сек. 1.2. дои : 10.17487/RFC1459 . RFC 1459 .
  33. ^ «Номера портов» . Марина-дель-Рей, Калифорния : Управление по присвоению номеров в Интернете . 6 апреля 2011 г. . Проверено 5 апреля 2021 г. .
  34. ^ «Подключить сообщение» . Протокол интернет-ретрансляции чата . п. 29. сек. 4.3.5. дои : 10.17487/RFC1459 . RFC 1459 .
  35. ^ Лукас, Марк; Сингх, Абхишек; Кантрелл, Крис (5 октября 2006 г.). «Определение брандмауэра». В Хенми, Энн (ред.). Политики брандмауэра и конфигурации VPN . Рокленд, Массачусетс : Syngress Publishing. п. 93. ИСБН 978-1-59749-088-7.
  36. Авраам, Дален (июнь 1998 г.). Расширения для протокола Internet Relay Chat (IRCX) . IETF . ID draft-pfenning-irc-extensions-04 . Проверено 8 апреля 2011 г.
  37. Викискладе есть медиафайлы по теме архитектуры . Internet Relay Chat: Архитектура . стр. 3 – 4. с. 3. doi : 10.17487/RFC2810 . RFC 2810 .
  38. ^ «Введение» . Internet Relay Chat: Архитектура . п. 2. сек. 1. doi : 10.17487/RFC2810 . RFC 2810 .
  39. ^ «Алгоритмы» . Протокол интернет-ретрансляции чата . п. 64. сек. 9.3. дои : 10.17487/RFC1459 . RFC 1459 .
  40. ^ «Перегрузка сети» . Internet Relay Chat: Архитектура . стр. 7 – 8. сек. 6.3. дои : 10.17487/RFC2810 . RFC 2810 .
  41. ^ "На канал" . Internet Relay Chat: Архитектура . стр. 5 – 6. сек. 5.2.1. дои : 10.17487/RFC2810 . RFC 2810 .
  42. ^ «Демоны IRC для локальной сети» . Проверено 2 октября 2014 г.
  43. ^ «Запуск собственного IRC-сервера» . Проверено 2 октября 2014 г.
  44. ^ «Формат сообщения в« псевдо »BNF» . Протокол интернет-ретрансляции чата . п. 8. сек. 2.3.1. дои : 10.17487/RFC1459 . RFC 1459 .
  45. ^ «Числовые ответы» . Протокол интернет-ретрансляции чата . п. 10. сек. 2.4. дои : 10.17487/RFC1459 . RFC 1459 .
  46. ^ «Режимы списка IRC - расширение режима списка, показывающее путаницу пар для списков» . 25 ноября 2009 г. . Проверено 8 апреля 2011 г.
  47. ^ a b "В группу (канал)" . Протокол интернет-ретрансляции чата . п. 11. сек. 3.2.2. дои : 10.17487/RFC1459 . RFC 1459 .
  48. ^ "Список сообщений" . Протокол интернет-ретрансляции чата . п. 24. сек. 4.2.6. дои : 10.17487/RFC1459 . RFC 1459 .
  49. ^ a b "Присоединиться к сообщению" . Протокол интернет-ретрансляции чата . п. 19. сек. 4.2.1. дои : 10.17487/RFC1459 . RFC 1459 .
  50. Викискладе есть медиафайлы по теме канала . Internet Relay Chat: управление каналами . стр. 3 – 4. сек. 2.2. дои : 10.17487/RFC2811 . RFC 2811 .
  51. ^ «Свойства канала» . Internet Relay Chat: управление каналами . п. 4. сек. 2.3. дои : 10.17487/RFC2811 . RFC 2811 .
  52. ^ "Срок жизни канала" . Internet Relay Chat: управление каналами . п. 5. сек. 3. doi : 10.17487/RFC2811 . RFC 2811 .
  53. ^ "Режимы канала" . Internet Relay Chat: управление каналами . п. 7. сек. 4. doi : 10.17487/RFC2811 . RFC 2811 .
  54. ^ «Сообщение о режиме» . Протокол интернет-ретрансляции чата . п. 21. сек. 4.2.3. дои : 10.17487/RFC1459 . RFC 1459 .
  55. ^ "Режимы канала" . Протокол интернет-ретрансляции чата . С. 21 – 22. сек. 4.2.3.1. дои : 10.17487/RFC1459 . RFC 1459 .
  56. ^ «Контроль доступа к каналу» . Internet Relay Chat: управление каналами . С. 10 – 11. сек. 4.3. дои : 10.17487/RFC2811 . RFC 2811 .
  57. ^ a b "Ответы команд: 353 RPL_NAMREPLY" . Протокол интернет-ретрансляции чата . п. 51. Дои : 10.17487 /RFC1459 . RFC 1459 .
  58. ↑ Рёккс , Курт (14 октября 2004 г.). "Число 005: ISUPPORT" . irc.org . Проверено 10 апреля 2011 г.
  59. Броклсби, Эдвард (сентябрь 2002 г.). IRC RPL_ISUPPORT Числовое определение . IETF . ID draft-brocklesby-irc-isupport-03 . Проверено 10 апреля 2011 г.
  60. ^ «Сообщение Operawall» . Протокол интернет-ретрансляции чата . п. 41. сек. 5.6. дои : 10.17487/RFC1459 . RFC 1459 .
  61. Мясник, Саймон (12 января 2005 г.). «Список пользовательских режимов IRC» . иностранец.net.au . Проверено 10 апреля 2011 г.
  62. Мясник, Саймон (12 января 2005 г.). «Список режимов каналов IRC» . иностранец.net.au . Проверено 10 апреля 2011 г.
  63. Мясник, Саймон (12 января 2005 г.). «Список режимов IRC-сервера» . иностранец.net.au . Проверено 10 апреля 2011 г.
  64. ^ Олсен, Томми. «Режимы IRCd» . webtoman.com. Архивировано из оригинала 15 октября 2011 года . Проверено 10 апреля 2011 г.
  65. ^ а б "Операторы" . Протокол интернет-ретрансляции чата . п. 5. сек. 1.2.1. дои : 10.17487/RFC1459 . RFC 1459 .
  66. ^ Тидеке, Удо (23 сентября 2003 г.). «Никола Деринг, Александр Шестаг» . Virtuelle Gruppen: Charakteristika und Problemdimensionen (на немецком языке) (2-е изд.). Спрингер В.С.  [ де ] . стр. 314, 337. ISBN . 978-3-531-33372-4. Проверено 30 марта 2010 г.
  67. Роджерс, Расс (1 декабря 2004 г.). «Разум ужаса» . В Девост, Мэтью Г. (ред.). Взлом террористической сети: тихая угроза тайных каналов (1-е изд.). Рокленд, Массачусетс : Syngress Publishing. п. 10. ISBN 978-1-928994-98-5. Проверено 30 марта 2010 г.
  68. ^ Петерсен, Джули К., изд. (29 мая 2002 г.). «Интернет-релейный чат» . Иллюстрированный словарь по телекоммуникациям (2-е изд.). CRC Пресс . п. 500. ISBN 978-0-8493-1173-4. Проверено 30 марта 2010 г.
  69. ^ «Часто задаваемые вопросы» . свободный узел . Архивировано из оригинала 26 марта 2010 года . Проверено 30 марта 2010 г.
  70. Викискладе есть медиафайлы по теме IRC / Плащи . Мета-вики . Проверено 27 ноября 2011 г.
  71. ^ «Схемы унифицированного идентификатора ресурса (URI)» . Администрация по присвоению номеров в Интернете . Проверено 14 октября 2012 г.
  72. Мясник, Саймон (январь 2003 г.). Унифицированные схемы поиска ресурсов для объектов ретрансляционного чата в Интернете . IETF . ID draft-butcher-irc-url-04 . Проверено 10 апреля 2011 г.
  73. ^ "узел-irc" . нпм . Проверено 30 июля 2021 г.
  74. ^ "Размер" . Обсуждение компьютерных сетевых конференций . стр. 5 – 6. сек. 2.5.1. дои : 10.17487/RFC1324 . RFC 1324 .
  75. ^ «Масштабируемость» . Internet Relay Chat: Архитектура . п. 7. сек. 6.1. дои : 10.17487/RFC2810 . RFC 2810 .
  76. ^ Леш 2003 1.2.1 Рост
  77. ^ «Идентификация пользователя» . Обсуждение компьютерных сетевых конференций . п. 10. сек. 5.4.1. дои : 10.17487/RFC1324 . RFC 1324 .
  78. Викискладе есть медиафайлы по теме деревьев и циклов . Обсуждение компьютерных сетевых конференций . п. 10. сек. 5.4.2. дои : 10.17487/RFC1324 . RFC 1324 .
  79. ^ Loesch 2003 1.2.2 Сбои в сети
  80. ^ "Проблемы государственной информации" . Обсуждение компьютерных сетевых конференций . п. 4. сек. 2.1. дои : 10.17487/RFC1324 . RFC 1324 .
  81. ^ Loesch 2003 1.2.3 Социологические аспекты и аспекты безопасности
  82. ^ "Передача сообщений" . Обсуждение компьютерных сетевых конференций . п. 7. сек. 5.2.1. дои : 10.17487/RFC1324 . RFC 1324 .
  83. ^ «Безопасность конференции» . Обсуждение компьютерных сетевых конференций . п. 8. сек. 5.2.4. дои : 10.17487/RFC1324 . RFC 1324 .
  84. ^ «Получение справки по EsperNet» . IRC-сеть EsperNet . Проверено 31 июля 2012 г.
  85. Брэндон (18 мая 2010 г.). «Новая функция: SSL для пользователей» . ДАЛнет . Проверено 31 июля 2012 г.
  86. ^ Смит, Родерик В. (8 апреля 2000 г.). «Интернет: использование IRC для получения помощи» . Руководство по многозагрузочной конфигурации . Серия справочников. Река Аппер-Сэдл, Нью-Джерси : Que Publishing . п. 289 . ISBN 978-0-7897-2283-6. Проверено 25 июля 2010 г. mIRC — один из самых популярных IRC-клиентов Windows.
  87. ^ «Вики-браузер Opera: IRC-клиент» . Архивировано из оригинала 17 марта 2011 года . Проверено 10 апреля 2011 г.
  88. ^ "Warsow Wiki: модуль IRC" . Архивировано из оригинала 25 апреля 2011 года . Проверено 10 апреля 2011 г.
  89. Гюнтер, Дэниел (21 июня 2004 г.). «Обзор UT2004» . BCCHаппаратное обеспечение . Проверено 10 апреля 2011 г.
  90. ^ «Полное руководство по восходящей линии связи» . Проверено 10 апреля 2011 г.
  91. ^ "ZDaemon - The Doom Wiki: Другие утилиты" . Проверено 10 апреля 2011 г.
  92. ^ «Как настроить [sic] IRC-клиент для подключения и входа [sic] в Ustream» . Ustream-Помощники. 29 января 2012 г. . Проверено 27 апреля 2013 г.
  93. ↑ Молдор (20 июня 2010 г.). «Ustream против Justin.tv» . Жидкое серебро . Проверено 13 июля 2011 г.
  94. Викискладе есть медиафайлы по теме IRC . Справочный центр Twitch . 7 апреля 2017 г. . Проверено 30 октября 2017 г.
  95. ^ Канаван, Джон. «Эволюция вредоносных IRC-ботов» (PDF) . www.symantec.com . Ответ службы безопасности Symantec.
  96. Викискладе есть медиафайлы по теме psyBNC . psybnc.at . Проверено 10 апреля 2011 г.
  97. Кэри, Крис (18 июля 2009 г.). "IRC с irssi-прокси + экран" . chriscarey.com . Проверено 10 апреля 2011 г.
  98. ^ «Отсоединяемый интерфейс (перезапись ядра) / UML / порт Windows (отключение Glade)» . smuxi.org. 25 декабря 2004 г. . Проверено 25 июля 2010 г.
  99. Викискладе есть медиафайлы по теме Смукси . smuxi.org . Проверено 10 апреля 2011 г.
  100. Баранина, Пол (27 июля 2004 г.). «Пользователи и каналы». Взломы IRC (1-е изд.). Севастополь, Калифорния : O'Reilly Media . стр. 44–46. ISBN 978-0-596-00687-7.
  101. Ван, Уоллес (25 октября 2004 г.). «Обмен мгновенными сообщениями и онлайн-чаты: интернет-релейный чат (IRC)» . Украсть эту книгу по обмену файлами (1-е изд.). Сан-Франциско, Калифорния : No Starch Press . стр.  65–67 . ISBN 978-1-59327-050-6.
  102. ^ Вамози, Роберт (8 мая 2002 г.). «Пиратские фильмы: сейчас играет на ближайшем к вам сервере» . ЗДНет . Проверено 10 апреля 2011 г.
  103. Сасаки, Дарла (4 апреля 2002 г.). «IRC 101: что это такое и как его использовать?» . Macobserver.com . Проверено 10 апреля 2011 г.

Общая библиография

  • Рид, Даррен (май 1992 г.). Обсуждение компьютерных сетевых конференций . IETF . дои : 10.17487/RFC1324 . RFC 1324 . Проверено 30 октября 2009 г.
  • Ойкаринен, Яркко ; Рид, Даррен (май 1993 г.). Протокол интернет-ретрансляции чата . IETF . дои : 10.17487/RFC1459 . RFC 1459 . Проверено 30 октября 2009 г.
  • Кальт, Кристоф (апрель 2000 г.). Internet Relay Chat: Архитектура . IETF . дои : 10.17487/RFC2810 . RFC 2810 . Проверено 30 октября 2009 г.
  • Кальт, Кристоф (апрель 2000 г.). Internet Relay Chat: управление каналами . IETF . дои : 10.17487/RFC2811 . RFC 2811 . Проверено 30 октября 2009 г.
  • Леш, Карл (17 июля 2003 г.). «Функциональность, обеспечиваемая системами для синхронных конференций» . psyc.eu . Проверено 10 апреля 2011 г. Цитировать журнал требует |journal=( помощь )

дальнейшее чтение

  • Кальт, Кристоф (апрель 2000 г.). Интернет-релейный чат: клиентский протокол . IETF . дои : 10.17487/RFC2812 . RFC 2812 . Проверено 30 октября 2009 г.
  • Кальт, Кристоф (апрель 2000 г.). Интернет-релейный чат: серверный протокол . IETF . дои : 10.17487/RFC2813 . RFC 2813 . Проверено 30 октября 2009 г.
  • «Журналы основных событий в интернет-сообществе» . Чапел-Хилл, Северная Каролина : ibiblio . Проверено 8 апреля 2011 г.
  • Мясник, Саймон. "Техническая информация IRC" . иностранец.net.au . Проверено 10 апреля 2011 г.

внешняя ссылка

  • IRC в Керли
  • Список номеров IRC
  • История ИРЦ
  • IRC.org — техническая и историческая информация IRC6; Статьи по истории IRC
  • IRChelp.org - архив справки Internet Relay Chat (IRC); Большой архив документов, связанных с IRC
  • IRCv3 — рабочая группа разработчиков, которые добавляют в протокол новые функции и пишут для них спецификации.
  • IRC-Source - сеть Internet Relay Chat (IRC) и поисковая система каналов с историческими данными.
  • irc.netsplit.de - список сетей Internet Relay Chat (IRC) с историческими данными
Получено с https://en.wikipedia.org/w/index.php?title=Internet_Relay_Chat&oldid=1065189678 "