Internet Relay Chat

protokół czatu internetowego w czasie rzeczywistym

IRC (ang. Internet Relay Chat) – 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 edytuj

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[1], 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 edytuj

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 edytuj

Z tym tematem związana jest kategoria: Klienty IRC.
Data pierwszej edycji Cena (w USD) Licencja
BitchX 1996 bezpłatne BSD
Bersirc 1999 bezpłatne LGPL
ChatZilla 2001 bezpłatne MPL/GPL/LGPL
EPIC 1994 bezpłatne BSD
HydraIRC 2002 bezpłatne własnościowe
IceChat 2002 bezpłatne własnościowe
ircII 1990 bezpłatne BSD/GPL
Ircle 1993 Shareware, 23 USD własnościowe
Irssi 1999 bezpłatne GPL
jIRCii 2003 bezpłatne GPL
Kiwi IRC 2016 bezpłatne AGPL
Konversation 2002 bezpłatne GPL
Kopete 2002 bezpłatne GPL
KVIrc 2011 bezpłatne GPL
mIRC 1995 Shareware, 20 USD własnościowe
Opera 2004 (Opera 7.50) bezpłatne własnościowe
savIRC 2001 bezpłatne GPL
Visual IRC 1995 bezpłatne GPL
WeeChat 2003 bezpłatne GPL
XChat 1999 bezpłatne GPL

Sieci IRC edytuj

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 edytuj

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 edytuj

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.

Osobny artykuł: IRCnet.

Undernet edytuj

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 edytuj

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.

Osobny artykuł: QuakeNet.

DALnet, USANet i inne edytuj

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 edytuj

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.

Osobny artykuł: Freenode.

MindForge edytuj

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 edytuj

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[2]. 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[3].

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[4]. 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[5]. 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ą[5] tego rodzaju siecią przez długi czas był PolNet, do ok. 900 użytkowników[6]. Inne znaczące sieci to PIRC[7], powstała w roku 2010 z połączenia kilku mniejszych sieci[8], i posiadająca średnio około 450 użytkowników[9], oraz 6IRCNet[10] oscylująca średnio na granicy 175 użytkowników[11][12].

Programy edytuj

 
Wygląd okna przykładowego klienta IRC – XChat
  • 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.
  • Operapakiet 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 edytuj

  1. PIRC.PL – Polska Sieć IRC :: komendy.
  2. Rozdzial 5.
  3. www.irc.pl, www.irc.pl [dostęp 2017-11-24] (pol.).
  4. EFnet – The Original IRC Network, www.efnet.org [dostęp 2017-11-24] (ang.).
  5. a b http://irc.netsplit.de/servers/pl/
  6. PolNet – IRC Network – irc.netsplit.de.
  7. PIRC.pl.
  8. Krótka historia sieci PIRC. [dostęp 2015-12-15]. (pol.).
  9. PIRC.pl – Statystyki, statystyki.pirc.pl [dostęp 2017-11-24] (pol.).
  10. 6irc.net – Registered at Namecheap.com, 6irc.net [dostęp 2019-03-25] [zarchiwizowane z adresu 2013-05-02].
  11. http://irc.netsplit.de/networks/details.php?net=6IRCNet&submenu=years
  12. IRC Networks, searchirc.com [dostęp 2017-12-03].

Linki zewnętrzne edytuj