Internet Relay Chat (IRC) е реално-времева система за текстов чат в интернет, която позволява на потребители от цял свят да водят групови или частни разговори. IRC работи чрез мрежа от свързани сървъри, където хората се присъединяват към теми, наречени канали, или обменят директни съобщения помежду си.

Кратка история и стандарт

IRC е създаден през 1988 г. от Яко Ойстрам (Jarkko Oikarinen). Протоколът е описан в няколко RFC документи (напр. RFC 1459 и следващи разширения). Въпреки че основните идеи остават същите, през годините се появиха допълнителни разширения за сигурност (SSL/TLS), автентикация (SASL) и услуги за регистрация на потребители и канали.

Сървъри, мрежи и адреси

IRC мрежите се състоят от множество свързани сървъри. Обикновено адресът на един IRC сървър започва с "irc.", следван от името на сървъра и домейн като .com, .org или .net (например "irc.[Име на сървъра].org"). Някои от добре познатите мрежи през годините са EFNet, Undernet, Freenode (която претърпя реорганизации и от 2021 г. се разграничи; новата общност продължава под името Libera.Chat) и други. Сървърите могат да бъдат:

  • малки (локални или частни) — напр. OperaNet;
  • средни — исторически примери Freenode и DalNet (в различни периоди имали по десетки хиляди потребители);
  • големи — EFNet, Undernet и др., които в пикови моменти са имали стотици хиляди потребители.

Канали (чат стаи)

В IRC груповите разговори се случват в канали, които обикновено започват с хеш (#). Съществуват и други префикси в зависимост от мрежата: например # за общонационални/мрежови канали и & за локални канали, видими само на конкретния сървър. Каналите могат да бъдат публични или защитени (с парола или с регистрирана собственост).

В каналите има роли и права: оператори (ops, обикновено отбелязани с @), половин-оператори (half-ops, +h), вокс (voice, +v) и други, които управляват разговора, модерират съдържанието, задават теми и налагат наказания като kick/ban.

Потребителски имена, съобщения и DCC

Всеки потребител има никнейм (nickname). Основни операции включват смяна на ник (/nick), присъединяване към канал (/join #канал), напускане (/part), изпращане на частни съобщения (/msg или /privmsg), проверка на информация за потребител (/whois) и изброяване на канали (/list).

За прехвърляне на файлове и директен чат между двама потребителя IRC използва DCC (Direct Client-to-Client) — механизъм за директна връзка, който често изисква допълнителни настройки (напр. NAT/Firewall и разрешения) и трябва да се използва внимателно заради риска от вредоносни файлове.

IRC клиенти

За да използвате IRC, ви трябва клиент — програма или уеб приложение, което поддържа IRC протокола. Има много клиенти за различни платформи:

  • Популярни настолни клиенти: mIRC (за Microsoft Windows), XChat (за Linux и Windows) и неговите форкове като HexChat;
  • Текстови/конзолни клиенти: Irssi, WeeChat — предпочитани от опитни потребители и администратори;
  • Графични клиенти за Linux/Unix: Konversation, Quassel;
  • През браузъра: вграден IRC клиент в браузъра Opera, уеб клиенти като TheLounge, KiwiIRC, IRCCloud;
  • Приставки и мултипротоколни клиенти: ChatZilla (приставка към Mozilla Firefox), Pidgin (поддържа IRC чрез плъгин).

Някои клиенти предлагат скриптове и плъгини (напр. mIRC scripting, Python/Perl плъгини за Irssi/WeeChat), което позволява автоматизация и персонализация на поведението в канали.

Ботове

IRC ботовете са програми, които автоматизират задачи в каналите: управление и защита (chanserv, automoderation), предоставяне на информация (временни справки, търсене), опашки за музика, логване и др. Популярни ботове и бот-движки включват Eggdrop, Sopel, Limnoria и други. Ботовете често работят с регистрирани услуги (NickServ/ChanServ) или имат собствени нива на достъп.

Услуги, регистрация и сигурност

Много IRC мрежи предлагат услуги като NickServ (регистрация на никнейм), ChanServ (регистрация и управление на канали), MemoServ и други. Регистрирането на ник и канал помага да се запази собствеността и да се прилагат постоянни настройки/защитни политики.

Съображения за сигурност:

  • Използвайте SSL/TLS (портове обикновено 6697 или специфични за мрежата) за криптиране на връзката;
  • Силни пароли за регистрирани никове и канали, двуфакторна автентикация ако съществува;
  • Внимавайте при приемане на DCC файлове — проверявайте източника и използвайте антивирусен софтуер;
  • Използвайте BNC (bouncer) ако искате постоянна връзка и логване, когато клиентът ви е офлайн;
  • Спазвайте политиките на мрежата по отношение на спам, накърняване на други потребители и автоматизирани скриптове.

Основни команди и етикет

Някои често използвани IRC команди (общи примери):

  • /nick новНик — смяна на никнейм;
  • /join #канал [парола] — присъединяване към канал;
  • /part #канал [съобщение] — напускане на канал;
  • /msg ник/канал съобщение — изпращане на лично съобщение или пращане на команда към бот/услуга;
  • /whois ник — информация за потребител;
  • /topic #канал тема — задаване на тема на канала (ако имате право);
  • /kick #канал ник [причина] — изгонване на потребител (за оператори);
  • /ban #канал маска — блокиране на достъпа за определени адреси/никнейми (в зависимост от мрежата и клиента).

Етикетът в IRC включва уважение към участниците, избягване на спам и flood, спазване на правилата на каналите и мрежата, и използване на подходящи канали за теми (не оффтопик в канал с другое предназначение).

Кога да използвате IRC

IRC остава популярен за общуване в реално време, техническа поддръжка, разработчи общности, гейминг общности и за създаване на постоянни канали с ботове и услуги. Предимствата му са лекотата, ниската латентност и широката поддръжка; недостатъците могат да бъдат нуждата от конфигуриране, липсата на вградено мултимедийно споделяне (освен DCC) и потенциални проблеми със сигурността, ако не се използват защитни мерки.

IRC каналите обикновено започват с # и работят върху сървъри, към които се свързвате чрез IRC клиент. Ако започвате, изберете надежден клиент, запознайте се с основните команди и правилата на мрежата и използвайте SSL и регистрация на ник, когато е възможно.