Internet Relay Chat

Internet Relay Chat
IRC
Internationaler Standard RFC 1459
Entwickelt von Jarkko Oikarinen
Eingeführt Ende August 1988
Industrie Instant Messaging
Ersetzt durch Noch nicht ersetzt
IRCV3 (in frühen Stadien,
kaum implementiert)
Der erste IRC -Server, Tolsun.oulu.fi, a Sun-3 Server zeigt in der Nähe der Anzeige Universität von Oulu Computerzentrum

Internet Relay Chat (IRC) ist ein textbasiertes Chat-System für Instant Messaging. IRC ist für die Auseinandersetzung für Gruppenkommunikation In Diskussionsforen genannt Kanäle,[1] ermöglicht aber auch eine Einzelvermittlung über die Kommunikation über Private Nachrichten[2] ebenso gut wie Chat- und Datenübertragung,[3] einschließlich Datenaustausch.[4]

Internet -Staffel -Chat wird als implementiert Anwendungsschicht Protokoll, um die Kommunikation in Form von Text zu erleichtern. Der Chat -Prozess funktioniert auf einem Client -Server -Netzwerkmodell. Benutzer verbinden sich mit einem Client; Dies kann eine Web -App sein, ein eigenständiges Desktop -Programm oder in einen Teil eines größeren Programms eingebettet; an einen IRC -Server, der Teil eines größeren IRC -Netzwerks sein kann. Beispiele für Programme, die zur Verbindung verwendet werden Mibbit, Irccloud, Kiwiirc, und Mirc.

Die IRC -Nutzung ist seit 2003 stetig zurückgegangen und verloren 60 Prozent der Benutzer.[5] Im April 2011 bedienten die Top 100 IRC -Netzwerke von IRC jeweils mehr als eine halbe Million Nutzer.[6]

Geschichte

IRC wurde von erstellt von Jarkko Oikarinen im August 1988 ersetzt ein Programm namens Mut (Multiuser Talk) auf a BBS genannt Oulubox am Universität von Oulu in Finnland, wo er am Department of Information Processing Science arbeitete. Jarkko beabsichtigte, die von ihm verwaltete BBS -Software zu erweitern, um Neuigkeiten in der Usenet Stil, Echtzeitdiskussionen und ähnliche BBS -Funktionen. Der erste Teil, den er implementierte, war der Chat -Teil, den er mit geliehenen Teilen von seinen Freunden Jyrki Kuoppala und Jukka Pihl machte. Das erste IRC -Netzwerk wurde auf einem einzelnen Server namens Tolsun.oulu.fi ausgeführt.[7] Oikarinen fand Inspiration in einem Chat -System, das als bekannt ist Bitnet Relais, die auf dem operierten Bitnet.[8]

Jyrki Kuoppala drängte Oikarinen, die Oulu University zu bitten, den IRC -Code so zu befreien, dass er auch außerhalb von Oulu ausgeführt werden konnte, und nachdem sie endlich veröffentlicht wurden, installierte Jyrki Kuoppala sofort einen weiteren Server. Dies war das erste "IRC -Netzwerk". Oikarinen hat ein paar Freunde in der Helsinki Universität und Tampere Universität Um IRC -Server zu betreiben, als seine Anzahl von Benutzern zunahm und andere Universitäten bald folgten. Zu dieser Zeit erkannte Oikarinen, dass der Rest der BBS -Funktionen wahrscheinlich nicht in sein Programm passen würde.[7]

Oikarinen machte sich mit Leuten in den Kontakt auf dem Universität Denver und Oregon State University. Sie hatten ein eigenes IRC -Netzwerk aus und wollten eine Verbindung zum finnischen Netzwerk herstellen. Sie hatten das Programm von einem der Freunde von Oikarinen, Vijay Subramaniam, erhalten-der ersten nicht-finnischen Person, die IRC benutzt. IRC wurde dann größer und wurde im gesamten finnischen nationalen Netzwerk verwendet -Funet- und dann angeschlossen mit Nordunet, die skandinavische Niederlassung des Internets. Im November 1988 hatte sich IRC über das Internet verteilt und Mitte 1989 gab es weltweit rund 40 Server.[7]

EFNET

Im August 1990 fand die erste große Meinungsverschiedenheit in der IRC -Welt statt. Das "A-Netz" (Anarchy Net) enthielt einen Server namens Eris.berkeley.edu. Es war alles geöffnet, erforderte keine Passwörter und hatte keine Begrenzung für die Anzahl der Verbindungen. Wie Greg "Wumpus" Lindahl erklärt: "Es hatte eine Wildcard -Serverlinie, also haben die Leute Server und Server angeschlossen und Nickklingeln jeder ". Das" eris freie Netzwerk ", EFNET, machte die ERIS-Maschine zum ersten, um q aus Quarantäne (q für Quarantäne) aus IRC zu machen. In Wumpus 'Worten erneut: "Eris weigerte sich, diese Linie zu entfernen, also habe ich EFNET gegründet. Es war kein großer Kampf; ich hatte alle Hubs zu dem Schließen, und fast alle anderen wurden mitgeführt." A-Netz wurde mit den ERIS-Servern gebildet, während EFNET mit den Nicht-Eris-Servern gebildet wurde. Die Geschichte zeigte, dass die meisten Server und Benutzer mit EFNET gingen. Sobald A-Netz aufgelöst wurde, wurde der Name EFNET bedeutungslos und war erneut das einzige IRC-Netzwerk.[7]

In dieser Zeit wurde IRC verwendet, um über die zu berichten 1991 Sowjet Putsch d'état Versuch während eines in a Media Blackout.[9] Es wurde zuvor in ähnlicher Weise während der Golfkrieg.[10] Chat -Protokolle von diesen und anderen Ereignissen werden in der gehalten Ibiblio Archiv.[11]

Unternetzgabel

Eine weitere Gabelanstrengung, die erste, die einen dauerhaften Unterschied machte, wurde im Oktober 1992 von "Wildthang" in den Vereinigten Staaten initiiert. Es sollte nur ein Testnetzwerk sein, um Bots zu entwickeln, aber es wurde schnell zu einem Netzwerk "für Freunde und ihre Freunde". In Europa und Kanada wurde ein separates neues Netzwerk gearbeitet, und im Dezember wurden die französischen Server mit den kanadischen verbunden, und bis Ende des Monats war das französische und kanadische Netzwerk mit den USA verbunden und bildete das Netzwerk, das später kam, das später kam, das später kam, das später kam, das später kam, das später kamen, das später kamen genannt "der genannt werden Unternetz".[7]

Die "Unternetze" wollten IRCD weiter bringen, um es weniger Bandbreite zu verwenden und zu versuchen, das Channel -Chaos zu sortieren (Chaos (Channel "(Chaos" (Chaos "(Chaos" ((Netsplits und Übernahmen) Das EFNET begann zu leiden. Für den letzteren Zweck implementierte das Undernetzzeitstempel, neue Routing und bot dem CService an - ein Programm, mit dem Benutzer Kanäle registrieren konnten, und versuchte dann, sie vor Unruhestiftern zu schützen. Die erste Serverliste enthielt ab dem 15. Februar 1993 Server aus den USA, Kanada, Frankreich, Kroatien und Japan. Am 15. August wurde der neue User Count -Datensatz auf 57 Benutzer festgelegt.[7]

Im Mai 1993 RFC 1459[12] wurde veröffentlicht und beschreibt ein einfaches Protokoll für Client/Server-Betrieb, Kanäle, Eins-zu-Eins- und Eins-zu-Viele-Gespräche.[7] Es ist bemerkenswert, dass eine signifikante Anzahl von Erweiterungen wie CTCP, Farben und Formate weder in den Protokollspezifikationen enthalten sind, noch die Charaktercodierung.[13] Dies führte dazu, dass verschiedene Implementierungen von Servern und Clients abweichen. Die Software -Implementierung variierte erheblich von einem Netzwerk zum anderen, wobei jedes Netzwerk seine eigenen Richtlinien und Standards in seinen eigenen Codebasis implementiert.

Dalnet Fork

Im Sommer 1994 wurde das Unternetz selbst gegabelt. Das neue Netzwerk wurde genannt Dalnet (benannt nach seinem Gründer: Dalvenjah), geformt für einen besseren Benutzerservice und mehr Benutzer- und Kanalschutz. Eine der bedeutendsten Änderungen in Dalnet war die Verwendung längerer Spitznamen (die ursprüngliche IRCD -Grenze beträgt 9 Buchstaben). Dalnet IRCD -Modifikationen wurden von Alexei "Lefler" Kosut vorgenommen. Dalnet basierte somit auf dem Undernetz -IRCD -Server, obwohl die Dalnet -Pioniere EFNET -Aufgaben waren. Laut James NG waren die anfänglichen Dalnet -Leute "OPS in #startrek krank aus den ständigen Spaltungen/Verzögerungen/Übernahmen/etc".[7]

Dalnet bot schnell globales Wallops (IRCOP -Nachrichten, die von Benutzern gesehen werden können, die +w (/Modus -Spitzname +W)), längere Spitznamen, q: ausgekleidete Spitznamen (Spitznamen, die nicht verwendet werden können, d. H. Chanserv, IRCOP, Nickserv usw.) , Global K: Zeilen (Verbot einer Person oder einer gesamten Domäne von einem Server oder des gesamten Netzwerks), IRCOP -Nur -Kommunikation: Globops, +H -Modus, aus denen hervorgeht, dass ein IRCOP ein "Helpop" ist. Viele von Dalnets neuen Funktionen wurden geschrieben Anfang 1995 von Brian "Morpher" Smith und ermöglicht den Benutzern, Spitznamen zu besitzen, Kanäle zu steuern, Memos zu senden und vieles mehr.[7]

IRCNET -Gabel

Im Juli 1996, nach Monaten von Flammenkriege und Diskussionen auf der Mailingliste gab es eine weitere Trennung, da sich die Entwicklung des IRCD entwickeln sollte. Vor allem die "europäische" Seite (die meisten dieser Server waren auf Europa), die sich später benannten IRCNET Streitig für Nick- und Channel -Verzögerungen, während die EFNET -Seite sich für Zeitstempel aussprach.[7] Es gab auch Meinungsverschiedenheiten über Richtlinien: Die europäische Seite hatte begonnen, eine Reihe von Regeln festzulegen, die anwiesen, was IRCOPs tun konnten und was nicht, eine Sichtweise der USA.[14]

Die meisten (nicht alle) der IRCNET -Server waren in Europa, während die meisten EFNET -Server in den USA waren. Diese Veranstaltung ist in vielen IRC -Gesellschaften auch als "The Great Split" bekannt. EFNET ist seitdem (ab August 1998) gewachsen und hat die Anzahl der Benutzer bestanden, die es damals hatte. Im (nördlichen) Herbst des Jahres 2000 hatte EFNET rund 50.000 Benutzer und IRCNET 70.000.[7]

Moderne IRC

IRC hat sich über sein Leben im Internet viel verändert. Neue Server -Software hat eine Vielzahl neuer Funktionen hinzugefügt.

  • Dienstleistungen: Netzwerk betriebene Bots, um die Registrierung von Spitznamen und Kanälen zu erleichtern, und Senden von Nachrichten für Offline-Benutzer und Netzwerkbetreiberfunktionen.
  • Zusätzliche Modi: Während das ursprüngliche IRC -System einen Satz von Standardbenutzer- und Kanalmodi verwendete, fügen neue Server viele neue Modi für Funktionen hinzu, z. B. das Entfernen von Farbcodes aus Text,[15] oder verdecken die Hostmask eines Benutzers ("Cloaking") zum Schutz vor Denial-of-Service-Angriffe.[16]
  • Proxy -Erkennung: Die meisten modernen Server unterstützen die Erkennung von Benutzern, die versuchen, sich durch eine unsichere Verbindung zu verbinden (falsch konfiguriert oder ausgenutzt). Proxy Server, was dann eine Verbindung verweigert werden kann. Diese Proxy -Erkennungssoftware wird von mehreren Netzwerken verwendet, obwohl diese Echtzeitliste von Proxys seit Anfang 2006 nicht mehr mehr weiter ist.[17]
  • Zusätzliche Befehle: Neue Befehle können wie Shorthand-Befehle, um Befehle an Dienste auszugeben, für nur Netzwerk-Operator-Befehle, um die Hostmask eines Benutzers zu manipulieren.
  • Verschlüsselung: Für das Client-zu-Server-Bein der Verbindung Tls Könnte verwendet werden (Nachrichten stellen nicht mehr sicher zu sein lauschen auf oder drahtgebundene IRC -Sitzungen eines Individuums schwierig). Für Kunden-zu-Klient-Kommunikation, SDCC (Sicheres DCC) kann verwendet werden.
  • Verbindungsprotokoll: IRC kann mit über Via verbunden werden IPv4die alte Version der Internetprotokoll, oder von IPv6, der aktuelle Standard des Protokolls.

Ab 2016Eine neue Standardisierungsanstrengung ist unter einer Arbeitsgruppe namens IRCV3 im Gange, die sich auf fortschrittlichere Kundenfunktionen wie sofortige Benachrichtigungen, bessere Unterstützung und Verbesserung der Sicherheit konzentriert.[18] Ab 2019, keine großen IRC -Netzwerke haben den vorgeschlagenen Standard vollständig übernommen.[19]

Ab Juni 2021, Es gibt 481 verschiedene IRC -Netzwerke, von denen bekannt ist, dass sie operiert werden,[20] von denen die Open Source Libera Chat, im Mai 2021 gegründet, hat die meisten Benutzer mit 20.374 Kanälen auf 26 Servern. Zwischen ihnen teilen sich die Top 100 IRC -Netzwerke über 100.000 Kanäle, die auf etwa eintausend Servern arbeiten.[21]

Nach seiner goldenen Ära in den 1990er und frühen 2000er Jahren (240.000 Benutzer von Quakenet im Jahr 2004) verzeichneten IRC einen signifikanten Rückgang und verlor zwischen 2003 und 2012 rund 60% der Benutzer, wobei Benutzer zu neuerem Umzug zogen sozialen Medien Plattformen wie Facebook oder Twitter,[5] aber auch um Plattformen wie zu öffnen wie XMPP die 1999 entwickelt wurde. Bestimmte Netzwerke wie Freenode haben den Gesamttrend nicht befolgt und haben im gleichen Zeitraum mehr als vervierfacht.[5] Freenode, der 2016 rund 90.000 Benutzer hatte, hat sich seitdem auf rund 9.300 Benutzer abgelehnt.[22]

Die größten IRC -Netzwerke wurden traditionell als "Big Four" gruppiert[23][24][25][26]- Eine Bezeichnung für Netzwerke, die über die Statistiken hinausgehen. Die Big Four -Netzwerke ändern sich regelmäßig, aber aufgrund der Community -Natur von IRC gibt es eine große Anzahl anderer Netzwerke, aus denen Benutzer auswählen können.

Historisch gesehen waren die "Big Four":[23][24][25]

IRC erreichte 2001 und 10 Millionen Nutzer im Jahr 2003 6 Millionen gleichzeitige Benutzer und fiel 2018 auf 371.000.

Ab Januar 2022, Die größten IRC -Netzwerke sind:

  • Libera Chat- Rund 48,7.000 Benutzer zu Spitzenzeiten
  • OFTC- ungefähr 19,4.000 Benutzer zu Spitzenzeiten
  • IRCNET- ungefähr 17,9.000 Benutzer zu Spitzenzeiten
  • Unternetz- ungefähr 13,4.000 Benutzer zu Spitzenzeiten
  • Rizon- Rund 10,5.000 Benutzer zu Spitzenzeiten
  • EFNET- Rund 10,4.000 Benutzer zu Spitzenzeiten
  • Freenode- Rund 9,3.000 Benutzer zu Spitzenzeiten
  • Quakenet- Rund 8,4.000 Benutzer zu Spitzenzeiten
  • Dalnet- Rund 7,9.000 Benutzer zu Spitzenzeiten

Die Top 100 IRC -Netzwerke haben rund 228.000 Benutzer zu Spitzenzeiten verbunden.[27]

Zeitleiste

Zeitleiste der wichtigsten Server:

Technische Information

Ein Screenshot von Hexchat, ein IRC -Kunde für Gtk Umgebungen
IRSSI, ein textbasierter IRC-Client

IRC ist offen Protokoll das verwendet TCP[12] und optional, optional, Tls. Ein IRC -Server Kann eine Verbindung zu anderen IRC -Servern herstellen, um das IRC -Netzwerk zu erweitern.[28] Benutzer greifen auf IRC -Netzwerke zu, indem sie einen Client mit einem Server verbinden.[29] Es gibt viele Client -Implementierungen, wie z. Mirc, Hexchat und IRSSIund Server -Implementierungen, z. das Original IRCD. In den meisten IRC -Servern müssen Benutzer kein Konto registrieren, sondern a Spitzname ist vor der Verbindung erforderlich.[30]

IRC war ursprünglich ein Einfaches Textprotokoll[12] (Obwohl später erweitert), was auf Anfrage einen Port zugewiesen wurde 194/TCP durch Iana.[31] Allerdings die de facto Standard war schon immer in der IRC auf 6667/TCP betrieben[32] und nahegelegene Hafennummern (z. B. TCP -Anschlüsse 6660–6669, 7000)[33] Um zu vermeiden, das laufen zu müssen IRCD Software mit Wurzelprivilegien.

Das Protokoll gab an, dass die Zeichen 8-Bit waren, aber die Zeichencodierung, die der Text verwenden sollte, nicht angegeben.[13] Dies kann zu Problemen führen, wenn Benutzer, die verschiedene Kunden und/oder verschiedene Plattformen verwenden, sich unterhalten möchten.

Alle heute verwendeten IRC-Protokolle von Client-zu-server sind aus dem in der IRC2.4.0-Version des IRC2-Server implementierten Protokolls abgestuft und in RFC 1459 dokumentiert zur Veröffentlichung mehrerer überarbeiteter Protokolldokumente (RFC 2810, RFC 2811, RFC 2812 und RFC 2813); Diese Protokolländerungen wurden jedoch unter anderem nicht weit verbreitet.

Obwohl viele Spezifikationen zum IRC -Protokoll veröffentlicht wurden, gibt es keine offizielle Spezifikation, da das Protokoll dynamisch bleibt. Praktisch keine Clients und nur sehr wenige Server stützen sich streng auf die obigen RFCs als Referenz.

Microsoft hat 1998 eine Verlängerung für IRC über die Eigentumsbereitschaft erstellt IRCX.[34] Später haben sie eingestellt, Software zu verteilen, die IRCX unterstützt, sondern die proprietäre Entwicklung entwickelte MSNP.

Die Standardstruktur eines Netzwerks von IRC -Servern ist a Baum.[35] Nachrichten werden nur entlang der erforderlichen Zweige des Baumes weitergeleitet, aber der Netzwerkstatus wird an jeden Server gesendet[36] und es gibt im Allgemeinen ein hohes Maß an implizitem Vertrauen zwischen Servern. Diese Architektur hat jedoch eine Reihe von Problemen. Ein schlechtes oder böswilliges Server kann das Netzwerk erheblich beschädigen[37] und alle Veränderungen in der Struktur, ob beabsichtigt oder ein Ergebnis von Bedingungen im zugrunde liegenden Netzwerk, erfordern eine Net-Split und ein Net-Join. Dies führt zu viel Netzwerkverkehr und falschen Beendigung/Verbinden von Nachrichten an Benutzer[38] und vorübergehender Kommunikationsverlust an Benutzer auf den Spaltservern. Das Hinzufügen eines Servers zu einem großen Netzwerk bedeutet eine große Hintergrundbandbreitenlast im Netzwerk und eine große Speicherlast auf dem Server. Einmal festgelegt, wird jede Nachricht an mehrere Empfänger auf ähnliche Weise geliefert wie MulticastDies bedeutet, dass jede Nachricht genau einmal einen Netzwerkverbindungslink bewegt.[39] Dies ist eine Stärke im Vergleich zu nicht-multikastischen Protokollen wie z. Simple Mail Transfer Protocol (SMTP) oder Extensible Messaging und Präsenzprotokoll (XMPP).

Ein IRC -Daemon kann auch in einem lokalen Netzwerk (LAN) verwendet werden. IRC kann daher verwendet werden, um die Kommunikation zwischen Menschen innerhalb des lokalen Netzwerks (interne Kommunikation) zu erleichtern.[40][41]

Befehle und Antworten

IRC hat eine Linienbasis. Clients senden Einzelliniennachrichten an den Server.[42] Empfangen Sie Antworten auf diese Nachrichten[43] und erhalten Sie Kopien einiger Nachrichten, die von anderen Clients gesendet werden. In den meisten Clients können Benutzer Befehle eingeben, indem sie sie mit einem '/' vorangestellt. Abhängig vom Befehl können diese entweder vollständig vom Client behandelt werden oder (im Allgemeinen für Befehle, die der Client nicht erkennt) direkt an den Server übergeben, möglicherweise mit einer gewissen Änderung.

Aufgrund der Art des Protokolls können automatisierte Systeme nicht immer einen gesendeten Befehl mit seiner Antwort mit voller Zuverlässigkeit korrekt kombinieren und unterliegen dem Raten.[44]

Kanäle

Die grundlegenden Mittel zur Kommunikation mit einer Gruppe von Benutzern in einer etablierten IRC -Sitzung sind durch a Kanal.[45] Kanäle in einem Netzwerk können mit dem IRC -Befehl angezeigt werden AUFFÜHREN,[46] Dies listet alle aktuell verfügbaren Kanäle auf, die nicht über die Modi +S oder +P -Set in diesem bestimmten Netzwerk verfügen.

Benutzer können beitreten ein Kanal mit dem BEITRETEN Befehl,[47] bei den meisten Kunden erhältlich als /schließen Sie #Channelname bei. Nachrichten, die an die angeschlossenen Kanäle gesendet werden, werden dann an alle anderen Benutzer weitergeleitet.[45]

Kanäle, die in einem gesamten IRC -Netzwerk verfügbar sind, werden mit einem '#' vorangestellt, während diejenigen lokal zu einem Server '&' verwendet werden.[48] Andere weniger häufige Kanaltypen umfassen '+' Kanäle - 'modlose' Kanäle ohne Operatoren[49]-und '!' Kanäle, eine Form von Zeitstempel Kanal auf normalerweise nicht timestgestützten Netzwerken.[50]

Modi

Benutzer und Kanäle können haben Modi die durch einzelne Fallempfindlichkeitsbriefe dargestellt werden[51] und werden mit dem eingestellt MODUS Befehl.[52] Benutzermodi und Kanalmodi sind getrennt und können denselben Buchstaben verwenden, um unterschiedliche Dinge zu bedeuten (z. B. Benutzermodus "I" ist unsichtbar, während der Kanalmodus "I" nur eingeladen ist.[53]) Modi werden normalerweise mit dem Befehl modus festgelegt und nicht festgelegt, der ein Ziel (Benutzer oder Kanal), eine Reihe von Modi zum festgelegten (+) oder nicht festgelegten (-) und alle Parameter, die die Modi benötigen, einstellen.

Einige Kanalmodi nehmen Parameter und andere Kanalmodi für einen Benutzer auf einem Kanal an oder fügen oder entfernen eine Maske (z. B. eine Banmaske) aus einer Liste, die dem Kanal zugeordnet ist, anstatt sich auf den Kanal als Ganzes zu bewerben.[54] Modi, die für Benutzer auf einem Kanal gelten[55] (An Kunden gesendet, als er zum ersten Mal an einem Kanal teilnimmt[47] und Verwendung des Befehls der Namen) und in vielen Clients auch verwendet, um ihn in der angezeigten Liste der Benutzer des Kunden in einem Kanal zu repräsentieren oder einen eigenen Indikator für die Modi eines Benutzers anzuzeigen.

Um einkeimtierende Modus -Nachrichten korrekt zu analysieren und den Kanalstatus zu verfolgen, muss der Client wissen, welcher Modus für welchen Typ und für die Modi, die für einen Benutzer auf einem Kanal gelten, welches Symbol mit welchem ​​Buchstaben eingeht. In frühen Implementierungen von IRC musste dies im Client hart codiert sein, aber jetzt gibt es eine De-facto-Standardverlängerung des Protokolls namens ISUPPORT, die diese Informationen zum Zeitpunkt der Verbindungszeit mit numerischer 005 sendet.[56][57]

In IRC gibt es einen kleinen Entwurfsfehler in Bezug auf Modi, die für Benutzer auf Kanälen gelten: Die Namensmeldung zum Festlegen des anfänglichen Kanalstatus kann nur einen solchen Modus pro Benutzer auf dem Kanal senden.[55] Auf einem einzelnen Benutzer können jedoch mehrere solche Modi festgelegt werden. Wenn ein Benutzer beispielsweise sowohl den Bedienerstatus (+O) als auch der Sprachstatus (+V) auf einem Kanal hält, kann ein neuer Client den Modus nicht mit geringerer Priorität (d. H. Sprache) sehen. Problemumgehungen hierfür sind sowohl auf der Client- als auch auf der Serverseite möglich, aber keine sind weit verbreitet.

Standardmodi (RFC 1459)

Benutzermodi
Brief Symbol Beschreibung
i Unsichtbar - kann ohne einen gemeinsamen Kanal gesehen werden oder den genauen Namen kennt
s Empfängt Server -Mitteilungen
w Empfängt Wallops[58]
o Benutzer ist IRC -Operator (IRCOP)
Kanalmodi
Brief Symbol Parameter (en) Beschreibung
o @ Name des betroffenen Benutzer Channel -Operator - können Channel -Modi ändern und Benutzer unter anderem aus dem Kanal werfen
s Geheimkanal - nicht in der Kanalliste oder in Benutzer -WHOIs abgebildet, außer bei Benutzern, die bereits auf dem Kanal sind
p Privatkanal - Laut RFC 1459 in der Kanalliste als "PRV" aufgeführt
n Benutzer können keine Nachrichten extern an den Kanal senden
m Der Kanal wird moderiert (nur diejenigen, die Kanalbetreiber oder Sprachstatus auf dem Kanal halten, können Nachrichten an sie senden)
i Nur Benutzer mit Einladungen können den Kanal eingeben.
t Nur Kanalbetreiber können das Kanalthema ändern.
l Grenzzahl Grenzen der Anzahl der Benutzer, die in der Lage sind, auf Kanal zu sein (wenn voll, können keine neuen Benutzer beitreten)
b Ban Maske (Nick! User@Host mit Wildcards erlaubt) Verbote Hostmasks vom Kanal
v + Name des betroffenen Benutzer Gibt einen Benutzer Sprachstatus auf dem Kanal (siehe +m oben)
k Neuer Kanalschlüssel Legt einen Kanalschlüssel so fest, dass nur Benutzer, die wissen, dass der Schlüssel eingeben kann

Viele Daemons und Netzwerke haben zusätzliche Modi hinzugefügt oder das Verhalten von Modi in der obigen Liste geändert.[59][60][61][62]

Kanalbetreiber

A Kanalbetreiber ist ein Klient auf an IRC -Kanal Das verwaltet den Kanal. IRC -Channel -Operatoren können leicht von einem Symbol oder Symbol neben ihrem Namen gesehen werden (variiert je nach Client -Implementierung, üblicherweise ein "@" -Symbol -Präfix, einen grünen Kreis oder ein lateinischer Buchstabe "o"/"O"). In den meisten Netzwerken kann ein Bediener:

  • Kick einen Benutzer.
  • Einen Benutzer verbieten.
  • Geben Sie einem anderen Benutzer IRC Channel Operator Status oder IRC -Kanal -Sprachstatus an.
  • Ändern Sie das IRC -Kanalthema, während der Kanalmodus +T festgelegt ist.
  • Ändern Sie die IRC -Kanalmodus -Sperren.

IRC -Betreiber

Es gibt auch Benutzer, die erhöhte Rechte auf ihrem lokalen Server oder im gesamten Netzwerk unterhalten. Diese werden als IRC -Betreiber bezeichnet,[63] Manchmal verkürzt auf IRCOPS oder OPER (nicht um mit Kanalbetreibern verwechselt zu werden). Mit der Implementierung des IRCD variiert auch die Privilegien des IRC -Betreibers auf dem gegebenen IRCD. RFC 1459[63] behauptet, dass IRC -Betreiber "ein notwendiges Übel" sind, um einen sauberen Zustand des Netzwerks zu halten, und als solche müssen sie in der Lage sein, Server zu trennen und wieder zu verbinden. Um böswillige Benutzer oder sogar schädliche automatisierte Programme zu verhindern, IRC einzugeben, dürfen IRC -Betreiber in der Regel Kunden trennen und IP -Adressen vollständig verbieten oder Subnetze vollständig vervollständigen. Netzwerke, die Dienste tragen (Nickserv et al.), Ermöglichen ihren IRC -Betreibern normalerweise auch, dass es sich um grundlegende "Eigentümer" handelt. Weitere privilegierte Rechte können übergeordnete Kanalverbote (in der Lage sein, sich den Kanälen anzuschließen, die sie nicht beitreten dürfen, wenn sie nicht operiert würden) und sich auf Kanäle auszurüsten, in denen sie nicht in der Lage wären, ohne operiert zu werden, automatisch aufgelegt werden. auf Kanälen immer und so weiter.

Hostmasks

Ein Hostmask ist ein einzigartiger Kennung eines IRC Klient mit einem IRC verbunden Server.[64][65] IRC Server, Dienstleistungenund andere Kunden, einschließlich Bots, kann es verwenden, um eine bestimmte IRC -Sitzung zu identifizieren.

Das Format einer Hostmaske ist Nick! User@Host. Die Hostmaskin sieht ähnlich aus wie, sollte aber nicht mit einem verwechselt werden E-Mail-Addresse.

Der Nick -Teil ist der vom Benutzer ausgewählte Spitzname und kann während der Verbindung geändert werden. Der Benutzerteil ist der von Benutzernamen gemeldete von gemeldet von Identität auf den Kunden.[66] Wenn die Identifizierung im Client nicht verfügbar ist, wird der Benutzername angegeben, wenn der angeschlossene Client verwendet wird, nachdem er mit a vorangestellt wurde Tilde.[67]

Der Host -Teil ist der Hostname Der Client verbindet sich von. Wenn die IP Adresse des Clients kann nicht auf einen gültigen gelöst werden Hostname Auf dem Server wird es anstelle des Hostnamens verwendet.

Wegen dem Privatsphäre Implikationen der Aufdeckung der IP -Adresse oder des Hostnamens eines Clients, einige IRC -Daemons Bieten Sie auch Datenschutzmerkmale wie den "+X" -Modus von Inspircd oder Unrealircd. Dies Hashes eine Client -IP -Adresse oder maskiert Teil des Hostnamens eines Clients Ircops. Benutzer haben möglicherweise auch die Möglichkeit, einen "virtuellen Host" (oder "Vhost") anzufordern, der in der Hostmaskin angezeigt wird, um eine weitere Anonymität zu ermöglichen. Einige IRC -Netzwerke wie z. Libera Chat oder FreenodeVerwenden Sie diese als "Umhang", um anzuzeigen, dass ein Benutzer einer Gruppe oder einem Projekt angeschlossen ist.[68]

URI -Schema

Es gibt drei vorläufige anerkannte Einheitliche Ressourcenkennung (URI) Programme für den Internet -Staffel -Chat: IRC, IRCS, und IRC6.[69] Bei der Unterstützung erlauben sie Hyperlinks von verschiedenen Formen, einschließlich

IRC: // <Host> [: <Port>]/[Channel> [? <Alhall_keyword>]] IRCS: // <Host> [: <Port>]/[Kanal> [? IRC6: // <Host> [: <Port>]/[Channel> [? <Alhall_keyword>]]

(Wenn Elemente, die in Klammern ([,]) eingeschlossen sind, optional sind), um (falls erforderlich) eine Verbindung zum angegebenen Host (oder zum Netzwerk, falls er dem IRC -Client bekannt) herzustellen und dem angegebenen Kanal zu verbinden.[70] (Dies kann im Client selbst oder aus einer anderen Anwendung wie einem Webbrowser verwendet werden). IRC ist der Standard -URI, IRC6 Gibt eine Verbindung an, die mit IPv6 hergestellt werden soll, und IRCS gibt eine sichere Verbindung an.

Gemäß der Spezifikation die üblichen Hash -Symbol (#) wird darauf vorbereitet, Namen zu kanalisieren, die mit einem beginnen alphanumerisch Charakter - um es wegzulassen. Einige Implementierungen (z. B. MIRC) werden dies tun bedingungslos Dies führt zu einem (normalerweise unbeabsichtigten) Extra (z. B. ## Kanal), wenn in der URL enthalten ist.

In einigen Implementierungen können mehrere Kanäle angegeben werden, die durch Kommas getrennt sind.[71]

Herausforderungen

Probleme im ursprünglichen Design von IRC waren die Anzahl der gemeinsam genutzten staatlichen Daten[72][73] eine Einschränkung seiner Skalierbarkeit sein,[74] Das Fehlen einzigartiger Benutzeridentifikationen, die zum Spitznamen -Kollisionsproblem führen,[75] Mangel an Schutz vor Netsplits mittels zyklischer Routing,[76][77] Der Kompromiss in der Skalierbarkeit für die Echtzeit-Benutzerpräsenzinformationen.[78] Protokollschwächen, die eine Plattform für Missbrauch bieten,[79] Keine transparente und optimierbare Nachrichtenübergabe,[80] und keine Verschlüsselung.[81] Einige dieser Probleme wurden in angesprochen Moderne IRC.

Anschläge

Da IRC -Verbindungen möglicherweise unverschlüsselt sein und in der Regel lange Zeiträume umfassen, sind sie ein attraktives Ziel für DOS/DDOS -Angreifer und Hacker. Aus diesem Grund ist eine sorgfältige Sicherheitsrichtlinie erforderlich, um sicherzustellen, dass ein IRC -Netzwerk nicht anfällig für einen Angriff wie a ist übernehmen Krieg. IRC -Netzwerke können auch K-line oder G-line Benutzer oder Server, die einen Schadenseffekt haben.

Einige IRC -Server unterstützen SSL/TLS Verbindungen für Sicherheitszwecke. Dies hilft, die Verwendung von zu stoppen Paketschnusel Programme, um die Kennwörter von IRC -Benutzern zu erhalten, haben jedoch aufgrund der öffentlichen Natur der IRC -Kanäle nur wenig Nutzen. SSL -Verbindungen erfordern sowohl Client- als auch Serverunterstützung (bei der der Benutzer SSL -Binärdateien und IRC -clientspezifische Patches oder Module auf seinen Computern installieren muss). Einige Netzwerke verwenden auch SSL für Server-zu-Server-Verbindungen und bieten ein spezielles Kanalflag (z. +S) SSL-vernetzte Benutzer auf dem Kanal nur zuzulassen, während die Identifizierung der Bediener in klarem Text nicht zugesagt, um die Vorteile, die SSL bietet, besser zu nutzen.[82][83]

IRC diente als frühes Labor für viele Arten von Internetangriffen, z. B. die Verwendung von Fälschungen ICMP unerreichbare Nachrichten zum Brechen TCP-basierte IRC -Verbindungen (Nuking) Benutzer zu ärgern oder zu erleichtern Übernahmen.

Missbrauchsprävention

Eines der umstrittensten technischen Probleme im Zusammenhang mit IRC -Implementierungen, die bis heute überlebt, ist das Verdienst von "Nick/Channel Delay" gegen "Timestamp" -Protokolle. Beide Methoden existieren, um das Problem der Denial-of-Service-Angriffe zu lösen, verfolgen jedoch sehr unterschiedliche Ansätze. Das Problem mit dem ursprünglichen IRC -Protokoll wie implementiert war, dass die beiden Seiten des Netzwerks ihre Kanäle einfach zusammenführen würden, wenn sich zwei Server trennten und wieder angeschlossen waren. Wenn ein Benutzer auf einem "Split" -Server beitreten könnte, auf dem ein Kanal, der auf der anderen Seite des Netzwerks vorhanden war netsplit beendet; Wenn ein Benutzer einen Spitznamen annahm, der auf der anderen Seite des Netzwerks existierte, tötete der Server beide Benutzer, wenn sie sich wieder anschließt (eine "Nick -Kollision"). Dies wurde oft missbraucht, um alle Benutzer auf einem Kanal "Massenkill" zu "opless" -Kanäle zu erstellen, in denen keine Betreiber anwesend waren, um sich mit Missbrauch zu befassen. Dies ermutigte die Menschen, nicht nur Probleme innerhalb der IRC zu verursachen Netsplits, was sie dann missbrauchen würden.

Das Nick -Verzögerung (Nd) und Kanalverzögerung (CD) Strategien zielen darauf ab, Missbrauch durch Verzögerung von Wiederverbindungen und Umbenennen zu verhindern. Nachdem sich ein Benutzer unterschreibt und die Spitzname wird verfügbar oder ein Kanal hört auf, zu existieren, weil alle Benutzer teilgenommen haben (wie so oft während a netsplit), der Server erlaubt einem Benutzer, diesen Spitznamen nicht zu verwenden oder diesen Kanal zu verbinden, bis zu einem bestimmten Zeitraum (der Verzögerung) ging vorbei. Die Idee dahinter ist, dass selbst wenn a netsplit Es ist für einen Missbraucher nutzlos, weil sie den Status des Spitznamens oder des Operators auf einem Kanal nicht aufnehmen können, und daher kann keine Kollision eines Spitznamens oder "Zusammenführen" eines Kanals auftreten. In gewissem Maße legitime Nutzer, die möglicherweise gezwungen sind, nach dem Wiederauftreten kurz einen anderen Namen zu verwenden (Anhang einer unterstreichen Ist Populär).

Das Zeitstempelprotokoll ist eine Alternative zu Nick/Channel -Verzögerungen, die Kollisionen mithilfe von Zeitstempelpriorität auflöst. Jedem Spitznamen und Kanal im Netzwerk wird ein Zeitstempel zugewiesen - das Datum und die Uhrzeit, als er erstellt wurde. Wenn ein Netsplit auftritt, können zwei Benutzer auf jeder Seite denselben Spitznamen oder Kanal verwenden. Wenn jedoch die beiden Seiten verbunden sind, kann nur einer überleben. Im Fall von Spitznamen wird der neuere Benutzer laut TS getötet; Wenn ein Kanal kollidiert, werden die Mitglieder (Benutzer auf dem Kanal) verschmolzen, aber die Kanalbetreiber auf der "Verlust" der Seite des Splits verlieren ihren Channel -Operator -Status.

TS ist ein viel komplizierteres Protokoll als ND/CD, sowohl in Bezug Netzwerk) und zu viel Nachsicht in dem zulässt, was von der "Verlust" von "verloren" erlaubt war. Unter den ursprünglichen TS -Protokollen gab es beispielsweise keinen Schutz gegen Benutzer, die Verbote oder andere Modi im Verlustkanal festlegen, der dann zusammengeführt wurde, wenn sich der geteilte Auftrieb wieder anschloss, obwohl die Benutzer, die diese Modi festgelegt hatten, ihren Channel -Operator -Status verloren. Einige moderne TS-basierte IRC-Server haben auch eine Form von ND und/oder CD zusätzlich zum Zeitstempel integriert, um den Missbrauch weiter einzudämmen.

Die meisten Netzwerke verwenden heute den Zeitstempelansatz. Der Zeitstempel gegen ND/CD -Meinungsverschiedenheiten führte dazu, dass sich mehrere Server abgeteilt haben EFNET und bilden die neueren IRCNET. Nach dem Split wechselte EFNET in ein TS -Protokoll, während IRCNET ND/CD verwendete.

In jüngsten Versionen des IRCNET IRCD sowie IRCDs unter Verwendung des TS6 -Protokolls (einschließlich Charybdis) wurde ND durch einen Mechanismus namens Save erweitert/ersetzt. Dieser Mechanismus weist jedem Kunden a zu Uid Nach einer Verbindung zu einem IRC -Server. Diese ID beginnt mit einer Zahl, die in Nicks verboten ist (obwohl einige IRCDs, nämlich IRCNET und Inspircd, Clients ermöglichen, als Spitzname auf ihre eigene UID zu wechseln).

Wenn zwei Clients mit demselben Spitznamen von verschiedenen Seiten eines Netsplit ("Nick Collision") zusammenarbeiten, wird der erste Server, der diese Kollision sieht, erzwingen beide Kunden, um ihren Nick in ihre UID zu wechseln und beide Kunden daran zu hindern, getrennt zu werden. Auf IRCNET wird der Spitzname auch für einige Zeit (ND) gesperrt, um zu verhindern, dass beide Kunden wieder zum ursprünglichen Spitznamen wechseln und so wieder kollidieren.

Kunden

Client -Software

Schema eines IRC -Netzwerks mit Normale Kunden (grün), Bots (blau) und Türsteher (Orange)

Client -Software gibt es für verschiedene Betriebssysteme oder Softwarepakete sowie webbasiert oder in Spielen. Viele verschiedene Kunden stehen für die verschiedenen Betriebssysteme zur Verfügung, einschließlich Fenster, Unix und Linux, Mac OS und mobile Betriebssysteme (wie z. iOS und Android). Unter Windows, Mirc ist einer der beliebtesten Kunden.[84]

Einige Programme, die durchaus erweiterbar sind durch Plugins dienen auch als Plattformen für IRC -Kunden. Zum Beispiel rief ein Kunde an ERC, vollständig geschrieben in EMACS Lisp, ist in v.22.3 von emacs enthalten. Daher kann jede Plattform, die EMACs ausführen können, ERC ausführen.

Eine Anzahl von Internetbrowser haben integrierte IRC-Kunden wie z. Oper (Version 12.18 und früher)[85] und die Chachilla Add-On für Mozilla Feuerfuchs (Für Firefox 56 und früher; als eingebaute Komponente von eingeschlossen Seeaffe). Webbasierte Clients wie z. Mibbit Und Open Source Kiwiirc kann in den meisten Browsern ausgeführt werden.

Spiele wie War§ow,[86] Unwirkliches Turnier (bis zu Unreales Turnier 2004),[87] Uplink,[88] Federmotor-basierte Spiele, 0 a.d. und Zdaemon Habe IRC aufgenommen.[89]

USTREAMDie Chat -Schnittstelle ist IRC mit benutzerdefinierter Authentifizierung[90] ebenso gut wie Zucken's (ehemals Justin.tv).[91][92]

Bots

Eine typische Verwendung von Bots in IRC ist die Bereitstellung IRC -Dienste oder spezifische Funktionen in einem Kanal wie ein Chat-basierte Spiel oder Benachrichtigungen über externe Ereignisse. Einige IRC -Bots werden jedoch verwendet, um böswillige Angriffe wie Denial -of -Service, Spam oder Ausbeutung zu starten.[93]

Türsteher

Ein Programm, das als Dämon auf einen Server und fungiert als persistent Proxy ist als BNC oder Türsteher bekannt. Ziel ist es, eine Verbindung zu einem IRC -Server zu verwalten, als Relais zwischen Server und Client zu fungieren oder einfach als Proxy zu fungieren. Sollte der Client die Netzwerkkonnektivität verlieren, kann die BNC in Verbindung bleiben und den gesamten Datenverkehr für eine spätere Lieferung archivieren, sodass der Benutzer seine IRC -Sitzung wieder aufnehmen kann, ohne seine Verbindung zum Server zu stören.[94]

Darüber hinaus, um einen buncerischen Effekt zu erhalten, einen IRC-Kunde (typischerweise textbasiert, zum Beispiel IRSSI) kann auf einem immer on-Server ausgeführt werden ssh. Dies ermöglicht auch Geräte, die nur SSH -Funktionen haben, aber sich keiner tatsächlicher IRC -Client selbst installiert, um eine Verbindung zum IRC herzustellen, und er ermöglicht die Freigabe von IRC -Sitzungen.[95]

Um zu verhindern, dass der IRC -Client beim Abschluss der SSH -Verbindung aufhört, kann der Client in a ausgeführt werden Terminal Multiplexer wie zum Beispiel GNU -Bildschirm oder tmuxsomit ständig und in der Lage, Konversation in Kanälen zu protokollieren, an denen der Benutzer interessiert sind, oder die Präsenz eines Kanals im Netzwerk zu führen. Nach diesem Setup modelliert, 2004 folgt ein IRC -Client dem dem der Kundenserver, genannt SMUXI, wurde gestartet.[96][97]

Suchmaschinen

Es stehen zahlreiche Suchmaschinen zur Verfügung, um dem Benutzer bei der Suche nach dem IRC zu helfen.[98][99] Im Allgemeinen besteht die Suchmaschine aus zwei Teilen, einem "Back-End" (oder "Spider/Crawler") und einer Front-End-Suchmaschine.

Das Back-End (Spider/Webcrawler) ist das Arbeitspferd der Suchmaschine. Es ist dafür verantwortlich, IRC -Server zu kriechen, um die über sie gesendeten Informationen zu indizieren. Die Informationen, die indiziert werden, bestehen normalerweise ausschließlich aus Kanaltext (Text, der in öffentlichen Kanälen öffentlich angezeigt wird). Die Speichermethode ist normalerweise eine Art relationale Datenbank, wie Mysql oder Orakel.

Die Front-End-Suchmaschine ist die Benutzeroberfläche zur Datenbank. Es bietet Benutzern die Möglichkeit, die Datenbank mit indizierten Informationen zu durchsuchen, um die gesuchten Daten abzurufen. Diese Front-End-Suchmaschinen können auch in zahlreichen Programmiersprachen codiert werden.

Die meisten Suchmaschinen haben eine eigene Spinne, die eine einzige Anwendung ist, die für das Kriechen von IRC und für die Indizierung von Daten selbst verantwortlich ist. Andere sind jedoch "benutzerbasierte" Indexer. Letztere verlassen sich darauf, dass Benutzer ihr "Add-On" an ihren IRC-Client installieren. Das Add-On sendet der Datenbank die Kanalinformationen der Kanäle, auf denen der Benutzer befindet.

Viele Benutzer haben ihre eigenen implementiert ad hoc Suchmaschinen mit den in vielen IRC -Kunden eingebauten Protokollierungsfunktionen. Diese Suchmaschinen werden normalerweise als Bots implementiert und an einen bestimmten Kanal oder eine Gruppe von zugehörigen Kanälen gewidmet.

Zeichenkodierung

IRC fehlt immer noch eine einzelne weltweit akzeptierte Standardkonvention für die Übertragung von Zeichen außerhalb des 7-Bit ASCII Repertoire. IRC -Server normalerweise[Klarstellung erforderlich] Übertragen Sie Nachrichten von einem Client auf einen anderen Client wie Byte -Sequenzen, ohne dass eine Interpretation oder Neukodierung von Figuren. Das IRC -Protokoll (im Gegensatz zu z. MIME oder Http) Fehlen Mechanismen zur Ankündigung und Verhandlung von Charakter -Codierungsoptionen. Dies hat die Verantwortung für die Auswahl des geeigneten Zeichen -Codec für den Client unterzogen. In der Praxis haben IRC -Kanäle weitgehend dieselben Zeichenkodierungen verwendet, die auch von Betriebssystemen (insbesondere von Betriebssystemen) verwendet wurden Unix Derivate) in den jeweiligen Sprachgemeinschaften:

  • 7-Bit-Ära: In den frühen Tagen von IRC, besonders unter skandinavisch und finnische Sprache Benutzer, nationale Varianten von ISO 646 waren die Dominanten Charaktercodierungen. Diese codieren Nicht-ASCII-Zeichen wie ä ös Å ä ö Å an Codepositionen 0x5b 0x5c 0x5d 0x7b 0x7c 0x7d ((US-Ascii: [ \ ] { | }). Deshalb sind diese Codes immer in Spitznamen erlaubt. Nach RFC 1459 {| } In Spitznamen sollten als Kleinbuchstaben von [\] als Kleinbuchstaben behandelt werden.[13] In den späten neunziger Jahren war die Verwendung von 7-Bit ISO 8859-1und solche Äquivalenzzuordnungen wurden aus einigen IRC -Dämonen fallen gelassen.
  • 8-Bit-Ära: Seit den frühen neunziger Jahren 8-Bit-Codierungen wie z. ISO 8859-1 werden häufig für europäische Sprachen verwendet. Russische Nutzer hatten die Wahl von KOI8-R, ISO 8859-5 und CP1251und seit etwa 2000 konvertieren moderne russische IRC -Netzwerke zwischen diesen verschiedenen häufig verwendeten Codierungen der Cyrillic Drehbuch.
  • Multi-Byte-Ära: Ostasiatische IRC-Kanäle mit logografischen Skripten in China, Japan und Korea verwenden seit langem Multi-Byte EUC oder ISO-2022-JP. Mit der gemeinsamen Migration von ISO 8859 bis UTF-8 Auf Linux- und UNIX-Plattformen seit ungefähr 2002 ist UTF-8 für viele der bisher verwendeten 8-Bit-Kodierungen in europäischen Kanälen immer beliebter. Einige IRC-Clients sind jetzt in der Lage, Nachrichten sowohl in ISO 8859-1 als auch in UTF-8 im selben Kanal zu lesen, wobei heuristisch autodiert wird, welche Codierung verwendet wird. Die Verlagerung zu UTF-8 begann insbesondere auf finnischsprachigem IRC (Merkistö (Finnisch)).

Heute die UTF-8-Codierung von Unicode/ISO 10646 Wäre der wahrscheinlichste Anwärter auf eine einzige zukünftige Standardcharakter-Codierung für alle IRC-Kommunikation, wenn ein solcher Standard die Beschränkung der 510-Byte-Nachrichtengröße jemals entspannt würde. UTF-8 ist ASCII-kompatibel und deckt das Superet aller anderen häufig verwendeten ab codierter Zeichensatz Standards.

Datenaustausch

Ähnlich wie konventionell P2P Dateifreigabe können Benutzer Dateiserver erstellen, mit denen sie Dateien miteinander teilen können, indem sie angepasst werden IRC Bots oder Skripte für ihre IRC -Kunde. Oft gruppieren sich Benutzer zusammen, um sie zu verteilen Warez über ein Netzwerk von IRC -Bots.[100]

Technisch gesehen bietet IRC nein Datei Übertragung Mechanismen selbst; Die Dateifreigabe wird von IRC implementiert Kundentypischerweise mit dem Direkter Client-zu-Client (DCC) Protokoll, in dem Dateitransfers durch den Austausch privater Nachrichten zwischen Clients ausgehandelt werden. Die überwiegende Mehrheit der IRC -Clients bietet Unterstützung für DCC -Dateiübertragungen. Daher ist die Ansicht, dass die Dateifreigabe eine integrale Funktion von IRC ist.[101] Die alltägliche Verwendung dieses Protokolls verursacht jedoch manchmal auch DCC -Spam. DCC -Befehle wurden auch verwendet, um gefährdete Clients in die Durchführung einer Aktion wie das Trennen vom Server oder das Verlassen des Clients zu nutzen.

Siehe auch

Zitate

  1. ^ "Eins-zu-Many". Internet -Staffel -Chat -Protokoll. p. 11. Sek. 3.2. doi:10.17487/rfc1459. RFC 1459.
  2. ^ "Eins-zu-Eins-Kommunikation". Internet -Staffel -Chat: Architektur. p. 5. Sek. 5.1. doi:10.17487/rfc2810. RFC 2810.
  3. ^ Rollo, Troy. "Eine Beschreibung des DCC -Protokolls". Irchelp.org. Abgerufen 8. April 2011.
  4. ^ Wang, Wallace (25. Oktober 2004). "Instant Messaging und Online -Chat -Räume: Internet Relay Chat (IRC)". Stehlen Sie dieses Dateifreigabebuch (1. Aufl.). San Francisco, Kalifornien: Keine Stärkepresse. pp.61–67. ISBN 978-1-59327-050-6.
  5. ^ a b c "IRC ist tot, lang lebe IRC". Pingdie. 24. April 2012. Abgerufen 25. April 2016.
  6. ^ "IRC -Netzwerke - Top 100". irc.netsplit.de. Abgerufen 8. April 2011.
  7. ^ a b c d e f g h i j k Stenberg, Daniel (29. März 2011). "Geschichte von IRC (Internet -Staffel -Chat)". Abgerufen 25. April 2016. Ich habe das alles nicht erlebt. Ich fand Informationen zu verschiedenen Orten und erhielt Informationen von verschiedenen Personen, um dies zu schreiben. Menschen, die mir dabei geholfen haben, umfassen: Greg "Wumpus" Lindahl, Vesa "Vesa" Ruokonen, James NG, Tuomas Heino, Richard (Eagle's on Under Netzes), Ari Lemmke
  8. ^ Oikarinen, Jarkko. "Gründung IRC". Abgerufen 8. April 2011.
  9. ^ "IRC -Transkripte aus dem Zeitpunkt des Sowjetputsches 1991 d'état Versuch". Chapel Hill, North Carolina: Ibiblio. Archiviert von das Original am 28. Juni 2009. Abgerufen 8. April 2011.
  10. ^ "IRC -Protokolle der Ereignisse des Golfkrieges". Chapel Hill, North Carolina: Ibiblio. Abgerufen 8. April 2011.
  11. ^ "Protokolle von wichtigen Veranstaltungen in der Online -Community". Chapel Hill, North Carolina: Ibiblio. Abgerufen 8. April 2011.
  12. ^ a b c "Einführung". Internet -Staffel -Chat -Protokoll. p. 4. Sek. 1. doi:10.17487/rfc1459. RFC 1459.
  13. ^ a b c "Zeichencodes". Internet -Staffel -Chat -Protokoll. p. 7. Sek. 2.2. doi:10.17487/rfc1459. RFC 1459.
  14. ^ Engen, Vegard (Mai 2000). "Die große Trennung". Irc.org. Abgerufen 25. April 2016.
  15. ^ "Kanalmodi". Unrealircd Dokumentation Wiki. Abgerufen 6. Januar 2018.
  16. ^ "Cloaking". Unrealircd Dokumentation Wiki. Abgerufen 6. Januar 2018.
  17. ^ "Blitzed Open Proxy Monitor wird geschlossen". Der offene Proxy -Monitor, der vom blitzenden IRC -Netzwerk bereitgestellt wurde, wurde geschlossen. Die Datenbank war so groß, dass das Team nahezu unmöglich ist, sich zu sichern oder einen neuen Standort zu finden, um den Service fortzusetzen. Hinzu kommen die meisten Teammitglieder nicht mehr die Zeit, um den Service am Laufen zu halten.
  18. ^ "IRCV3". IRCV3 Arbeitsgruppe. 2016. Abgerufen 25. April 2016. Die IRCV3-Arbeitsgruppe ist eine Sammlung von IRC-Client- und Server-Softwareautoren, die daran arbeiten, das IRC-Protokoll mithilfe rückwärtskompatibler Erweiterungen zu verbessern, zu warten und zu standardisieren.
  19. ^ "Netzwerke - IRCV3". 2019. Abgerufen 9. August 2019.
  20. ^ "IRC -Netzwerke - in alphabetischer Reihenfolge". netsplit.de. Abgerufen 2022-01-12.
  21. ^ "IRC -Netzwerke - Top 100". netsplit.de. Abgerufen 2022-01-12.
  22. ^ "netsplit.de top 10". Abgerufen 15. Januar 2021.
  23. ^ a b Charalabidis, Alex (15. Dezember 1999). "Iren auf dem Macintosh: Ircle". Das Buch IRC: Der ultimative Leitfaden zum Internet -Staffel -Chat (1. Aufl.). San Francisco, Kalifornien: Keine Stärkepresse. p.61. ISBN 978-1-886411-29-6. In großen Netzwerken wie den Big Four - EFNET, IRCNET, UNZNET und DALNET - versuchen Sie, die Tausenden von Kanälen mit Ircle aufzulisten befinden sich in einer direkten Ethernet -Verbindung.
  24. ^ a b Jones, Steve, ed. (10. Dezember 2002). "Internet Relay Chat". Enzyklopädie der neuen Medien: Ein wesentlicher Hinweis auf Kommunikation und Technologie (1. Aufl.). Tausend Oaks, Kalifornien: Sage Publications. p.257. ISBN 978-0-7619-2382-4. Heute gibt es Hunderte unabhängiger IRC -Netzwerke, aber die "Big Four" sind EFNET, UNZNNET, DALNET und IRCNET.
  25. ^ a b Rittner, Don (3. März 1999). Das iMac -Buch (1. Aufl.). Scottsdale, Arizona: Coriolis -Gruppe. p. 215. ISBN 978-1-57610-429-3. Es gibt mehrere große Netzwerke: EFNET, Undernetz, Dalnet und IRCNET bilden die Big Four.
  26. ^ Turban, Efraim; Leidner, Dorothy; McLean, Ephraim; Wetherbe, James (7. Februar 2005). "Kommunikation". Informationstechnologie für das Management: Transformation von Organisationen in der digitalen Wirtschaft (5. Aufl.). Hoboken, New Jersey: John Wiley & Sons. S. 106–107. ISBN 978-0-471-70522-2. Die größten Netzwerke wurden traditionell als "Big Four" gruppiert: EFNET, IRCNET, Quakenet und Undernetzes.
  27. ^ "IRC -Netzwerke - Top 100". irc.netsplit.de. netsplit.de. Abgerufen 15. Januar 2021.
  28. ^ "Server". Internet -Staffel -Chat -Protokoll. p. 4. Sek. 1.1. doi:10.17487/rfc1459. RFC 1459.
  29. ^ "Kunden". Internet -Staffel -Chat: Architektur. p. 3. Sek. 2.2. doi:10.17487/rfc2810. RFC 2810.
  30. ^ "Kunden". Internet -Staffel -Chat -Protokoll. p. 5. Sek. 1.2. doi:10.17487/rfc1459. RFC 1459.
  31. ^ "Portnummern". Marina del Rey, Kalifornien: Internet zugewiesene Zahlen Autorität. 6. April 2011. Abgerufen 5. April 2021.{{}}: CS1 Wartung: URL-Status (Link)
  32. ^ "Nachricht verbinden". Internet -Staffel -Chat -Protokoll. p. 29. Sek. 4.3.5. doi:10.17487/rfc1459. RFC 1459.
  33. ^ Lucas, Mark; Singh, Abhishek; Cantrell, Chris (5. Oktober 2006). "Eine Firewall definieren". In Henmi, Anne (Hrsg.). Firewall -Richtlinien und VPN -Konfigurationen. Rockland, Massachusetts: Syngress Publishing. p. 93. ISBN 978-1-59749-088-7.
  34. ^ Abraham, Dalen (Juni 1998). Erweiterungen zum Internet -Relais -Chat -Protokoll (IRCX). Ietf. I-D Draft-PfeNning-Circ-Extensions-04. Abgerufen 8. April 2011.
  35. ^ "Die Architektur". Internet -Staffel -Chat: Architektur. S. 3 - 4. Sek. 3. doi:10.17487/rfc2810. RFC 2810.
  36. ^ "Einführung". Internet -Staffel -Chat: Architektur. p. 2 Sek. 1. doi:10.17487/rfc2810. RFC 2810.
  37. ^ "Algorithmen". Internet -Staffel -Chat -Protokoll. p. 64. Sek. 9.3. doi:10.17487/rfc1459. RFC 1459.
  38. ^ "Netzüberlastung". Internet -Staffel -Chat: Architektur. S. 7 - 8. Sek. 6.3. doi:10.17487/rfc2810. RFC 2810.
  39. ^ "Zu einem Kanal". Internet -Staffel -Chat: Architektur. S. 5 - 6. Sek. 5.2.1. doi:10.17487/rfc2810. RFC 2810.
  40. ^ "IRC -Daemons für LAN". Abgerufen 2. Oktober 2014.
  41. ^ "Ausführen eines eigenen IRC -Servers". Abgerufen 2. Oktober 2014.
  42. ^ "Nachrichtenformat in 'Pseudo' BNF". Internet -Staffel -Chat -Protokoll. p. 8. Sek. 2.3.1. doi:10.17487/rfc1459. RFC 1459.
  43. ^ "Numerische Antworten". Internet -Staffel -Chat -Protokoll. p. 10. Sek. 2.4. doi:10.17487/rfc1459. RFC 1459.
  44. ^ "IRC -Listenmodi - Listenmoduserweiterung mit Paarverwirrung für Listen". 25. November 2009. Abgerufen 8. April 2011.
  45. ^ a b "Zu einer Gruppe (Kanal)" ". Internet -Staffel -Chat -Protokoll. p. 11. Sek. 3.2.2. doi:10.17487/rfc1459. RFC 1459.
  46. ^ "Listennachricht". Internet -Staffel -Chat -Protokoll. p. 24. Sek. 4.2.6. doi:10.17487/rfc1459. RFC 1459.
  47. ^ a b "Nachricht beitreten" ". Internet -Staffel -Chat -Protokoll. p. 19. Sec. 4.2.1. doi:10.17487/rfc1459. RFC 1459.
  48. ^ "Channel Scope". Internet -Staffel -Chat: Channel Management. S. 3 - 4. Sek. 2.2. doi:10.17487/rfc2811. RFC 2811.
  49. ^ "Kanaleigenschaften". Internet -Staffel -Chat: Channel Management. p. 4. Sek. 2.3. doi:10.17487/rfc2811. RFC 2811.
  50. ^ "Kanallebensdauer". Internet -Staffel -Chat: Channel Management. p. 5. Sek. 3. doi:10.17487/rfc2811. RFC 2811.
  51. ^ "Kanalmodi". Internet -Staffel -Chat: Channel Management. p. 7. Sek. 4. doi:10.17487/rfc2811. RFC 2811.
  52. ^ "Modusnachricht". Internet -Staffel -Chat -Protokoll. p. 21. Sek. 4.2.3. doi:10.17487/rfc1459. RFC 1459.
  53. ^ "Kanalmodi". Internet -Staffel -Chat -Protokoll. S. 21 - 22. Sek. 4.2.3.1. doi:10.17487/rfc1459. RFC 1459.
  54. ^ "Kanalzugriffskontrolle". Internet -Staffel -Chat: Channel Management. S. 10 - 11. Sek. 4.3. doi:10.17487/rfc2811. RFC 2811.
  55. ^ a b "Befehlsantworten: 353 RPL_NAMREPLY". Internet -Staffel -Chat -Protokoll. p. 51. doi:10.17487/rfc1459. RFC 1459.
  56. ^ Roeckx, Kurt (14. Oktober 2004). "The 005 Numeric: Isupport". irc.org. Abgerufen 10. April 2011.
  57. ^ Brocklesby, Edward (September 2002). IRC RPL_ISUPPORT Numerische Definition. Ietf. I-D Draft-Brocklesby-circ-isupport-03. Abgerufen 10. April 2011.
  58. ^ "Operwall Nachricht". Internet -Staffel -Chat -Protokoll. p. 41. Sec. 5.6. doi:10.17487/rfc1459. RFC 1459.
  59. ^ Butcher, Simon (12. Januar 2005). "IRC -Benutzermodusliste". Alien.net.au. Abgerufen 10. April 2011.
  60. ^ Butcher, Simon (12. Januar 2005). "IRC -Kanalmodi -Liste". Alien.net.au. Abgerufen 10. April 2011.
  61. ^ Butcher, Simon (12. Januar 2005). "IRC Server -Modi -Liste". Alien.net.au. Abgerufen 10. April 2011.
  62. ^ Olsen, Tommy. "IRCD -Modi". webtoman.com. Archiviert von das Original am 15. Oktober 2011. Abgerufen 10. April 2011.
  63. ^ a b "Operatoren". Internet -Staffel -Chat -Protokoll. p. 5. Sek. 1.2.1. doi:10.17487/rfc1459. RFC 1459.
  64. ^ Thiedeke, Udo (23. September 2003). "Nicola Döring, Alexander Schestag". Virtule Grumen: Charakteristika und ProblemDimensionen (auf Deutsch) (2. Aufl.). Springer vs[DE]. S. 314, 337. ISBN 978-3-531-33372-4. Abgerufen 30. März 2010.
  65. ^ Rogers, Russ (1. Dezember 2004). "Der Geist des Terrors". In Devost, Matthew G. (Hrsg.). Hacken eines Terroretzwerks: Die stille Bedrohung durch verdeckte Kanäle (1. Aufl.). Rockland, Massachusetts: Syngress Publishing. p. 10. ISBN 978-1-928994-98-5. Abgerufen 30. März 2010.
  66. ^ Petersen, Julie K., ed. (29. Mai 2002). "Internet Relay Chat". Die Telekommunikation veranschaulicht das Wörterbuch (2. Aufl.). CRC Press. p. 500. ISBN 978-0-8493-1173-4. Abgerufen 30. März 2010.
  67. ^ "Häufig gestellte Fragen". Freenode. Archiviert von das Original am 26. März 2010. Abgerufen 30. März 2010.
  68. ^ "IRC/Shaks". Meta-Wiki. Abgerufen 27. November 2011.
  69. ^ "URI -Schemata für einheitliche Ressourcenkennung" ". Internet zugewiesene Zahlen Autorität. Abgerufen 14. Oktober 2012.
  70. ^ Butcher, Simon (Januar 2003). Einheitliche Ressourcen -Locator -Programme für Internet -Staffel -Chat -Unternehmen. Ietf. I-D Draft-Butcher-CRIC-URL-04. Abgerufen 10. April 2011.
  71. ^ "Node-circ". NPM. Abgerufen 30. Juli 2021.{{}}: CS1 Wartung: URL-Status (Link)
  72. ^ "Größe". Eine Diskussion über Computer -Netzwerkkonferenzen. S. 5 - 6. Sek. 2.5.1. doi:10.17487/rfc1324. RFC 1324.
  73. ^ "Skalierbarkeit". Internet -Staffel -Chat: Architektur. p. 7. Sek. 6.1. doi:10.17487/rfc2810. RFC 2810.
  74. ^ Loesch 2003 1.2.1 Wachstum
  75. ^ "Benutzeridentifikation". Eine Diskussion über Computer -Netzwerkkonferenzen. p. 10. Sek. 5.4.1. doi:10.17487/rfc1324. RFC 1324.
  76. ^ "Bäume und Zyklen". Eine Diskussion über Computer -Netzwerkkonferenzen. p. 10. Sek. 5.4.2. doi:10.17487/rfc1324. RFC 1324.
  77. ^ Loesch 2003 1.2.2 Netzwerkfehler
  78. ^ "Statusinformationsprobleme". Eine Diskussion über Computer -Netzwerkkonferenzen. p. 4. Sek. 2.1. doi:10.17487/rfc1324. RFC 1324.
  79. ^ Loesch 2003 1.2.3 Soziologische und Sicherheitsaspekte
  80. ^ "Nachrichtenübergang". Eine Diskussion über Computer -Netzwerkkonferenzen. p. 7. Sek. 5.2.1. doi:10.17487/rfc1324. RFC 1324.
  81. ^ "Konferenzsicherheit". Eine Diskussion über Computer -Netzwerkkonferenzen. p. 8. Sek. 5.2.4. doi:10.17487/rfc1324. RFC 1324.
  82. ^ "Hilfe bei Espernet bekommen". Das Esperget IRC -Netzwerk. Abgerufen 31. Juli 2012.
  83. ^ Brandon (18. Mai 2010). "Neue Funktion: SSL für Benutzer". Dalnet. Abgerufen 31. Juli 2012.
  84. ^ Smith, Roderick W. (8. April 2000). "Das Internet: Verwenden Sie IRC, um Hilfe zu erhalten". Das Multiboot-Konfigurationshandbuch. Handbuchserie. Upper Saddle River, New Jersey: Que Publishing. p.289. ISBN 978-0-7897-2283-6. Abgerufen 25. Juli 2010. MIRC ist einer der beliebtesten Windows IRC -Kunden.
  85. ^ "Opera Browser Wiki: IRC -Kunde". Archiviert von das Original am 17. März 2011. Abgerufen 10. April 2011.
  86. ^ "Warsow Wiki: IRC -Modul". Archiviert von das Original am 25. April 2011. Abgerufen 10. April 2011.
  87. ^ Guenter, Daniel (21. Juni 2004). "UT2004 Review". Bcchardware. Abgerufen 10. April 2011.
  88. ^ "Der ultimative Uplink Guide". Abgerufen 10. April 2011.
  89. ^ "Zdaemon - Das Doom Wiki: Andere Dienstprogramme". Abgerufen 10. April 2011.
  90. ^ "So richten Sie einen IRC -Client ein, um eine Verbindung herzustellen und sich mit ustream zu melden". Ustream-Helpern. 29. Januar 2012. Abgerufen 27. April 2013.
  91. ^ Mauldor (20. Juni 2010). "Ustream vs. justin.tv". Flüssigkeit. Abgerufen 13. Juli 2011.
  92. ^ "Twitch IRC". Twitch Help Center. 7. April 2017. Abgerufen 30. Oktober 2017.
  93. ^ Canavan, John. "Die Entwicklung böswilliger IRC -Bots" (PDF). www.symantec.com. Symantec Sicherheitsreaktion.
  94. ^ "Psybnc Readme". psybnc.at. Abgerufen 10. April 2011.
  95. ^ Carey, Chris (18. Juli 2009). "IRC mit IRSSI-Proxy + Screen". chriscarey.com. Abgerufen 10. April 2011.
  96. ^ "Abnehmbares Frontend (Core Rewrite) / UML / Windows Port (Kicking Glade)". smuxi.org. 25. Dezember 2004. Abgerufen 25. Juli 2010.
  97. ^ "Über SMUXI". smuxi.org. Abgerufen 10. April 2011.
  98. ^ Mutton, Paul (27. Juli 2004). "Benutzer und Kanäle". IRC -Hacks (1. Aufl.). Sebastopol, Kalifornien: O'Reilly Media. S. 44–46. ISBN 978-0-596-00687-7.
  99. ^ Wang, Wallace (25. Oktober 2004). "Instant Messaging und Online -Chat -Räume: Internet Relay Chat (IRC)". Stehlen Sie dieses Dateifreigabebuch (1. Aufl.). San Francisco, Kalifornien: Keine Stärkepresse. pp.65–67. ISBN 978-1-59327-050-6.
  100. ^ Vamosi, Robert (8. Mai 2002). "Raubkopien: Jetzt auf einem Server in Ihrer Nähe spielen". ZDNET. Abgerufen 10. April 2011.
  101. ^ Sasaki, Darla (4. April 2002). "IRC 101: Was ist es und wie benutze ich es?". Macobserver.com. Abgerufen 10. April 2011.

Allgemeine Bibliographie

Weitere Lektüre

Externe Links