Internet Relay Chat

IRC () – jedna ze starszych usług sieciowych umożliwiająca rozmowę na tematycznych lub towarzyskich kanałach komunikacyjnych, jak również prywatną z inną podłączoną aktualnie osobą.

Usługa ta funkcjonuje w architekturze klient-serwer, tj. fizycznie składa się z grupy połączonych ze sobą na stałe serwerów oraz programów-klientów. Programy klienckie uruchamiane są przez końcowych użytkowników lokalnie – na ich własnych komputerach, lub zdalnie, za pośrednictwem usługi SSH lub telnet. Rozmowy w sieci IRC odbywają się na tzw. kanałach, z których część funkcjonuje stale. Inne mogą być uruchamiane przez jednego użytkownika w celu porozmawiania choćby z jedną inną osobą.

Na ekranie użytkownika przewijają się od dołu do góry ekranu komunikaty wysyłane przez osoby piszące na danym kanale. Komunikaty te pojawiają się zaraz po ich wysłaniu, a ich kolejność jest identyczna z kolejnością napływania do serwera. Uzyskuje się dzięki temu wrażenie rozmowy osób przebywających w jednym pomieszczeniu.

Uczestnicy nie używają zwykle w IRC swoich prawdziwych imion i nazwisk, lecz posługują się krótkimi pseudonimami. Pseudonimy te w gwarze IRC popularnie określa się jako nickname lub krócej nick.

Korzystanie z IRC 
Aby skorzystać z IRC, należy uruchomić klienta IRC, podać adres najbliższego serwera IRC z sieci, z której zamierza się korzystać, oraz pseudonim, pod jakim się chce być widocznym. Po połączeniu się z serwerem należy wybrać kanał. Nazwy kanałów zazwyczaj zaczynają się od znaku „#” (np. #polska), choć na niektórych serwerach istnieją też kanały o innych właściwościach niż „#” z nazwami zaczynającymi się od znaków „!”, „&” czy „+”. Wejście na kanał odbywa się zwykle poprzez komendę /join #nazwa_kanału. Lista kanałów jest dostępna przez komendę „/list”. Należy się nią jednak ostrożnie posługiwać, gdyż w większych sieciach występują tysiące kanałów. Próby ściągnięcia ich pełnej listy kończą się zazwyczaj odcięciem od serwera. Istnieją też liczne bramki IRC umożliwiające korzystanie z tej usługi przez strony WWW bez konieczności instalowania dodatkowego oprogramowania. Mają one jednak zwykle dużo mniejszą funkcjonalność od dedykowanych programów do IRC.

Interakcja użytkownika z serwerem IRC odbywa się w oparciu o komendy, za których pomocą możemy wykonać każdą akcję obsługiwaną przez dany serwer IRC. Komendy mogą się różnić zależnie od oprogramowania z którego korzysta dana sieć IRC, jednak różnice te są zwykle niewielkie i sprowadzają się do drobnych różnic w niektórych poleceniach, lub obecnością nietypowych komend charakterystycznych dla konkretnego oprogramowania serwera. Istnieją także polecenia, które są interpretowane przez klienta IRC, a nie wysyłane do serwera.

Opy, boty, splity i lagi 
Oprócz tworzenia kanałów i rozmawiania w czasie rzeczywistym, protokół IRC umożliwia także przesyłanie plików do wybranych osób i daje szereg narzędzi pozwalających administrować kanałami. Osoba, która założy dany kanał uzyskuje na nim automatycznie prawa operatora (w skrócie op). Daje jej to możliwość zamykania ust (blokowania możliwości wysyłania komunikatów na kanał), a nawet wyrzucania (kick) i blokowania możliwości wejścia (ban) wybranym osobom. Operator może też nadawać prawa operatora innym użytkownikom, zrównując ich tym samym w prawach z sobą.

Na kanałach działających stale porządku czasem pilnują wyspecjalizowane programy, działające jak zwykłe klienty IRC (udające zwykłych użytkowników). Wykonują one automatycznie rozmaite funkcje porządkowe (np. wyrzucanie za wulgaryzmy). Programy te zwane są botami. Na wielu popularnych kanałach dochodzi często do rodzaju przepychanek między skłóconymi operatorami i właścicielami grup botów (tzw. botnetów), zwanych wojnami opowymi. Niektóre sieci pozwalają na rejestrację nicków oraz kanałów w celu przeciwdziałania podobnym zjawiskom.

IRC cierpi też na dwie inne przypadłości – splity i lagi. Split to czasowe zerwanie łączności między serwerami. Lag zaś to spowolnienie pracy całej sieci, które powoduje, że komunikaty wysyłane przez użytkowników pojawią się u innych użytkowników dopiero po długim czasie i w niewłaściwej kolejności.

Wszystkie te niedoskonałości tworzą rodzaj folkloru, a stali użytkownicy IRC-a tolerują je albo nawet lubią.

Lista klientów

Sieci IRC 
Protokół i architekturę IRC wymyślił w 1988 roku Jarkko Oikarinen z Finlandii, w ramach swojej pracy doktorskiej o możliwości prowadzenia teledyskusji za pomocą Internetu. Oikarinen uważał to tylko za rodzaj niezbyt dopracowanego przykładu jednego z możliwych sposobów prowadzenia takiej dyskusji.

Zabawa spodobała się jednak studentom na Uniwersytecie Oulu, którzy uruchomili pierwszy serwer IRC (tolsun.oulu.fi, dziś już nieczynny). Następnie rozesłali do zaprzyjaźnionych administratorów na całym świecie kod źródłowy serwera i klienta IRC.

Powstała w ten sposób pierwsza sieć IRC.

EFNet 
Pierwsza sieć IRC pozwalała dołączać się dowolnym serwerom, co po pewnym czasie zaczęło sprawiać kłopoty. W 1990 roku większość administratorów zgodziła się na zmianę zasady otwartości. Pozostała garstka, której przewodził administrator serwera eris.berkeley.edu, została odłączona, a reformatorzy nadali sobie nazwę EFNet (Eris Free Network). Odłączeni nazwali się ANet (Anarchy Net), jednak niedługo potem przestali istnieć. Sieć EFNet jest jedną z czterech największych sieci IRC na świecie.

Pierwszy polski serwer IRC został przyłączony w 1993 właśnie do sieci EFNet.

IRCnet 
W 1996 roku operatorzy IRC nie mogli dojść do porozumienia w sprawie kierunku dalszego rozwoju sieci. Na to nałożyły się problemy z łączem Europa-Ameryka oraz prywatne animozje między administratorami. Skończyło się to tzw. „Wielkim Splitem” – większość serwerów europejskich i azjatyckich odłączyła się od EFNetu i argumentując, że kolebka IRC jest właśnie w Europie, przybrali nazwę „sieć IRC”, czyli IRCnet. Sieć pozwala na nicki od 1 do 15 znaków.

Z IRCnetu obecnie korzysta jednocześnie ok. 100 000 użytkowników – jest jedną z czterech największych sieci IRC na świecie, a także najpopularniejszą siecią IRC w Polsce.

Undernet 
To historycznie druga z sieci ogólnoświatowych, powstała w 1993 roku, na początku jako sieć testowa dla botów i deweloperów serwera IRC, potem szybko rozrosła się i jest teraz jedną z czterech największych.

Sieć ta na początku była obsługiwana przez te same serwery IRC co serwery EFnetu, ale wymogi dodatkowych możliwości (m.in. umożliwiających rejestrowanie pseudonimów, kanałów i wzywanie specjalnego bota pilnującego stale porządku na kanale, dzięki czemu nie ma w tej sieci potrzeby stawiania własnych botów) wymusiły zmianę protokołu IRC, opartego w Undernecie na tzw. znacznikach czasu (timestamp).

QuakeNet 
QuakeNet to czwarta i najmłodsza z wielkich sieci IRC. Powstała w 1997 roku jako niewielka sieć dla graczy Quake i Quakeworld. Charakterystyczne dla QuakeNetu są boty sieciowe „Q” i „S” oraz nastawienie na graczy online. Posiada też stałe kanały służące kojarzeniu graczy i meczów w grach sieciowych.

DALnet, USANet i inne 
Na bazie pomysłu Undernetu zaczęły od 1995 roku powstawać kolejne nie połączone ze sobą sieci, z których największą jest chyba DALnet. Mają one zwykle możliwość rejestrowania pseudonimów i kanałów oraz są odporniejsze na splity i lagi, nie cieszą się jednak takim powodzeniem jak IRCnet czy Undernet. Wiele z nich, jak USANet, ma charakter czysto lokalny.

Freenode 
Freenode powstała w 2002 roku na bazie serwera irc.openprojects.net, istniejącego od 1998 r. freenode jest siecią skupiającą użytkowników i programistów wolnego oprogramowania, działającą na protokole zbliżonym do DALnetu.

MindForge 
MindForge powstała 15 marca 2005 roku i stała się siecią do pomocy w programie eMule i innych projektów Open Source.

Pozostałe 
Pierwsze serwery IRC w Polsce połączone były do sieci EFnet. Po podziale sieci EFnet na EFnet i IRCnet polska część pozostała przy sieci IRCnet. Pierwszy serwer został założony przez Grzegorza Aksamita na Akademii Górniczo-Hutniczej w Krakowie w 1993 roku. W ramach tej sieci obecnie pracuje w Polsce jeden serwer, poznański poznan.irc.pl. Aktualnym koordynatorem polskiej części sieci IRCnet jest Piotr „Beeth” Kucharski.

Drugą pod względem średniej liczby użytkowników siecią IRC w Polsce jest EFnet, posiadający od grudnia 2000 roku uruchomiony przez ATM S.A. polski serwer – irc.efnet.pl. Wciąż trudno tam natrafić na kanały polskich społeczności, niemniej sieć ciągle się rozwija. EFnet jest szczególnie popularny w środowiskach uniwersyteckich oraz Polonii z USA i Australii, których serwery po „Wielkim Splicie” pozostały w sieci EFnet. irc.efnet.pl jest obecnie największym serwerem w kraju pod względem liczby użytkowników. Koordynatorem sieci Efnet w Polsce jest Andrzej Karpiński, były operator sieci IRCnet.

Oprócz tego istnieją rdzennie polskie publiczne sieci IRC nie powiązane z sieciami międzynarodowymi. Największą tego rodzaju siecią przez długi czas był PolNet, do ok. 900 użytkowników. Inne znaczące sieci to PIRC, powstała w roku 2010 z połączenia kilku mniejszych sieci, i posiadająca średnio około 450 użytkowników, oraz 6IRCNet oscylująca średnio na granicy 175 użytkowników.

Programy 

 AmIRC – klient IRC–a pod systemy AmigaOS
 AndChat – klient IRC-a pod platformę Android
 BitchX – klient IRC pod systemy Uniksowe
 Chatzilla – wieloplatformowy klient Fundacji Mozilla
 Epic – zaawansowany klient sieci IRC
 Erc – klient IRC napisany jako dodatek do Emacsa
 irssi – klient IRC–a pod systemy Uniksowe
 Sieć Jabber umożliwia korzystanie z IRC-a przy pomocy odpowiednich transportów
 jIRCii – wieloplatformowy kilient IRC.
 Konversation – klient IRC dla środowiska KDE
 KVIrc – wieloplatformowy klient IRC
 Miranda IM (z odpowiednią wtyczką)
 mIRC – klient IRC–a pod Microsoft Windows
 mIRGGI – klient IRC pod platformę Symbian.
 Opera – pakiet internetowy dostępny na wielu systemach operacyjnych, w skład którego wchodzi również klient IRC
 Pidgin – komunikator wieloprotokołowy obsługujący także IRC
 Quassel IRC – wieloplatformowy klient IRC oparty na frameworku QT4
 Smuxi – wieloplatformowy klient IRC zainspirowany irssi.
 SwiftKit – Program umożliwiający grę przeglądarkową RuneScape, używany jako klient IRC-a. Często używany przez graczy RuneScape.
 Thunderbird – klient pocztowy wyposażony również w obsługę IRC
 WeeChat – klient IRC podobny do irssi, pozbawiony części wad irssi
 XChat – klient dostępny na wielu systemach operacyjnych.
 HydraIRC – klient IRC podobny do mIRC, ale open source
 jmIrc – klient IRC dla telefonów komórkowych

Przypisy

Linki zewnętrzne 

  – opis protokołu IRC
 pl.irc – grupa dyskusyjna poświęcona sieci IRC

 
Protokoły warstwy aplikacji
Fora internetowe