Du befindest dich hier: FSI Informatik » Kontakt » IRCnet   (Übersicht)

IRCnet

Server:

  • FAU ER-NBG: irc.fau.de
  • TU Berlin: irc.fu-berlin.de
  • Siehe auch Serverliste

Channels:

  • Jahrgänge: #faui2k22 (#faui2kXX-Schema)
  • LAN-Party: #fauilan
  • Essen: #sigfood
  • und viele mehr…

IRC-Guide

IRC ist ein relativ altes Chat-System, welches durch seine transparenten und minimalistischen Beschaffenheit immernoch sehr gerne von vielen vorallem in der IT- und Technik-Szene verwendet wird. Durch diesen kurzen Guide soll der Einstieg erleichtert werden, indem zwei fundamentale Methoden zum Verbinden mit einem IRC-Server kurz beschrieben, jene Schritt für Schritt durchgeführt und einige häufig gestellte Fragen beantwortet werden.

Die Friedrich-Alexander-Universität Erlangen-Nürnberg hat sogar einen eigenen Server-Node, welcher zu dem IRCnet Netzwerk gehört.

Fachwörter und andere unbekannte Begriffe werden unten im Glossar aufgeführt.

Was ist IRC?

„Internet Relay Chat, kurz IRC, bezeichnet ein rein textbasiertes Chat-System. Es ermöglicht Gesprächsrunden mit einer beliebigen Anzahl von Teilnehmern in so genannten Channels (Gesprächskanälen), aber auch Gespräche zwischen zwei Teilnehmern (Query). Neue Channels können üblicherweise jederzeit von jedem Teilnehmer frei eröffnet werden, ebenso kann man gleichzeitig an mehreren Channels teilnehmen.“ -Internet Relay Chat – Wikipedia

Gute Gründe für IRC

  • schlicht und transparent vom Aufbau, dem Funktionsumfang und der Verwendung
  • klares, verständliches System von Channels/Queries
  • verschiedene Plugins/Bots (auch selbstgeschriebenes)

Alternative Kommunikationsmöglichkeiten wie etwa bei Facebook und WhatsApp werden sicherheits- und datensicherheitstechnisch von vielen als kritisch angesehen.

Zusätzliche Gründe für Neueinsteiger:

  • erste Erfahrung mit klassischen Client-Server-Modellen
  • bei Verwendung von CLI-Programmen dieses Guides (tmux & weechat oder screen & irssi):

Erfahrungen mit CLI-Linux-Programmen

  • viele erfahrene Studenten sind neben dem FSI-Informatik-Forum hauptsächlich im IRC aufzufinden und können dort um Hilfe gebeten werden

Los geht's

Hier stelle ich zwei Möglichkeiten vor, IRC zu nutzen.

Es lohnt sich beide Möglichkeiten zu kennen.

Methode 1:

Direktes Aufbauen einer Verbindung zu einem IRC-Server.

Der IRC-Client soll lokal auf dem verwendeten Gerät laufen.

Methode 2:

Einrichten einer permanenten Sitzung auf einem Linux-Server, welcher dauerhaft eingeschaltet ist.

Großer Vorteil: Man kann den Verlauf von Channels und privaten Nachrichten in Abwesenheit nachlesen! Deshalb möchte man eigentlich Methode 2 bevorzugen.

Methode 1: Von einem Gerät direkt mit einem IRC-Server verbinden

Hierfür kann man z.B. X-Chat (für Windows u. Linux http://xchat.org/) oder Hexchat (für Windows und Linux http://hexchat.github.io/) verwenden. Die Verwendung ist relativ simpel, deshalb schreibe ich hierzu nichts mehr. Die einfachen IRC-Befehle, die Server Adresse und der aktuelle Erstsemester-Channel stehen unten.

Problem: Um Nachrichten zu bekommen muss man eingeloggt sein, d.h. PC/Handy/Raspberry Pi muss dauerhaft an sein und den Clienten (Chat Programm, in dem der User angemeldet ist) laufen haben, um nichts zu verpassen.

Die Lösung dafür ist ein sogenannter Bouncer (dt. Türsteher). Dieser Bouncer ist dauerhaft auf dem IRC-Server (und IRC-Channels) angemeldet sein und soll einem alles seit dem letzten Besuch geschriebene wiedergeben.

Wir schauen uns jetzt Methode 2 an. Methode 2 wird von den meisten IRClern an der FAU Informatik benutzt und kann als Bouncer (oder auch: dauerhaft aktive Sitzung) angesehen werden.

Methode 2: Ferngesteuerte, dauerhafte IRC-Sitzung auf einem Linux-Server (z.B. CIP)

Wir benutzen hierfür einen der IRC-Clients weechat oder irssi.

Führt man weechat-curses (für weechat) oder irssi (für irssi) in der shell an einem PC in einem CIP-Pool aus, so wird normalerweise beim Ausloggen aus dem CIP-PC oder beim Schließen des shell-Fensters der IRC-Client beendet.

Verhindern lässt sich das mit sogenannten Terminal-Multiplexer wie tmux oder screen. Führt man eins davon aus, so wird ein Prozess geschaffen, welcher beim Ausloggen aus nicht getötet wird. Hier könnte man nun weechat oder irssi ausführen jedoch gibt es da ein…

Probleme:

- Manche Server sind nur zwischen 7 und 22 Uhr online.

- Die „24h online“-Server beenden einen Prozess nachdem er sieben Tage am Stück gelaufen ist.

Dewegen gibt es einen speziellen CIP-Rechner/-Server, welcher speziell für die Verwendung des IRC-Chat gedacht ist und rund um die Uhr erreichbar ist: ircbox.cs.fau.de

Um sich mit der ircbox zu verbinden, kann man SSH - ein Programm zur Fernsteuerung entfernter Computer - verwenden. SSH ist eine Abkürzung für „secure shell“.

Vorgehensweise

Hierzu schreibt man in die shell:

ssh BENUTZERNAME@ircbox.cs.fau.de

Enter drücken um zu Bestätigen, danach sollte ircbox [~]> vorne stehen

Nun kann man zum Beispiel eine weechat Sitzung in tmux starten:

tmux new-session weechat-curses

Enter drücken um zu Bestätigen

Es kann sein, dass man tmux durch den Befehl tmux erstmal alleine starten muss und erst danach dann innerhalb der tmux-Sitzung weechat-curses zum Starten von weechat. Beides einzeln also!

Startet man so erfolgreich den IRC-Clienten, kann man wie bei Methode 1 fortfahren.

Server joinen, Nickname ändern und Channel joinen. Befehle dafür unten!

Möchte man jetzt den Chat zeitweise minimieren / zuklappen, so kann man entweder Ctrl+b, dann d (bei tmux), Ctrl+a, d (bei screen) oder die SSH-Verbindung schließen. Beim nächsten mal ist die Sitzung noch erhalten und muss nur noch attacht werden:

tmux attach (bei tmux) oder screen -r (bei screen)

Die ircbox kann man über SSH-Protokoll auch von anderswo am Computer oder vom Handy aus erreichen.

Das ebenfalls über SSH: ssh BENUTZERNAME@ircbox.cs.fau.de

SSH-Clients

Unter Linux: Terminal/Bash

Unter Windows:

  • Git Bash (enthalten in Git für Windows: https://gitforwindows.org/): reiner Kommandozeilenclient, aber ihr werdet Git wahrscheinlich so oder so irgendwann einmal installieren
  • MobaXTerm (https://mobaxterm.mobatek.net/): bietet als GUI Client viel mehr Einstellungsmöglichkeiten, Keyboard Shortcuts uvm.
  • Windows 10's nativer SSH-Client („OpenSSH“) + PowerShell: OpenSSH installieren und in PowerShell Folgendes eingeben „ssh <username>@ircbox.cs.fau.de“. Aktuell ist das noch ein bisschen frickelig mit dem manuellen Vergrößern des Fensters, aber auf jeden Fall nutzbar.

Chrome-Browser: Add-on secure shell

Android: JuiceSSH oder ConnectBot

Wo erreiche ich den IRC-Server der FAU und den aktuellen Ersti-Channel?

server: irc.fau.de (oder irc.fu-berlin.de)

channel: #faui2k19 (je nach Jahrgang)

TL;DR (too long; didn't read)

In einer Linux-Shell:

  • ssh BENUTZERNAME@ircbox.cs.fau.de (ersetze BENUTZERNAME durch dein Kürzel)

Enter

  • tmux

Enter

  • weechat-curses

Enter

  • /server add fau irc.fau.de

Enter

  • /connect fau

Enter

  • /nick NICK (ersetze NICK mit deinem gewünschten Nickname)

Enter

  • /join #faui2k19

Enter

  • /save

Enter

  • Hallo, ich bin neu hier. Danke für IRC-Guide!

Enter

Fertig. Willkommen. :-)

Detachen (Zuklappen/Minimieren): CTRL+b, dann d oder SSH-Verbindung mittels Schließen des Fensters beenden.

Attachen (Aufklappen): tmux a -d

Die wichtigsten IRC Befehle/Kommandos

/server add SERVERNAME SERVERADRESSE IRC-Server Eintrag anlegen

/connect SERVERNAME mit einem angelegten IRC-Server verbinden

/nick NICK setzt einen neuen Nickname

/join CHANNEL einem Channel beitreten.

/part schließt den derzeitig angezeigten Buffer/das Gespräch

/op NICK vergibt operator-Rechte

Mit operator-Rechten kann man für gewöhnlich /kick, /ban und /topic aufrufen.

/kick NICK jemanden aus dem Channel kicken

/ban NICK einem User anhand seines Namens (unsicher) oder anhand seiner IP-Adresse verbieten, dem Channel beizutreten

/query NICK schreibt jemanden eine private Nachricht

/msg NICK schreibt jemanden eine private Nachricht, aber öffnet dafür keinen Buffer

/exit beendet den Client

/save speichert die Konfiguration!

/buffer NUMMER ALT + NUMMER oder ALT + ⇧oder⇩ zum Durchwechseln der Buffer/Gespräche

Sitzung wieder aufrufen: tmux: tmux attach screen: screen -r

Es gibt zudem Befehle und Eingaben, welche spezifisch auf die Shell und den IRC-Client sind.

Allgemeines tmux/screen cheatsheet

Pro-Tipps

Autovervollständigung bei Nicknamen:

Erste paar Buchstaben eintippen und <TAB> drücken.

Smart-Filter (weechat):

/set irc.look.smart_filter on

nur joins, quits, parts von Usern anzeigen, die innerhalb der letzten Minuten gesprochen haben (Zeitintervall: irc.look.smart_filter_delay)

joins, quits und parts ausblenden (weechat):

/filter add joinquit * irc_join,irc_quit,irc_part *

custom highlights:

/set weechat.look.highlight WORT

(case-insensitive: WORT, wort Wort usw. werden gehighlightet)

weechat android app: relay mit SSL: Using-SSL-with-WeeChat

Cron-Job für automatisches Starten beim Start der ircbox (falls reboot) (siehe auch Nachricht beim ssh auf die ircbox) Für tmux and weechat: (Kommando zum Bearbeiten: crontab -e):

@reboot /usr/bin/tmux new-session -d /usr/bin/weechat

Automatisches Verbinden bei weechat-neustart

(ersetze irc.fau.de jeweils durch den richtigen Server, so wie die Verbindung beim Erstellen benannt wurde)

Automatisches Connect zum Server:

  • /set irc.server.irc.fau.de.autoconnect on

Automatisches Wiederherstellen eurer Buffer und deren Reihenfolge vor dem letzten Neustart:

Glossar

ircbox: Ein spezieller Server, der für dauerhaft laufende IRC-Clients gedacht ist. Innerhalb des Uninetzes kann man sich über ssh ircbox, außerhalb über ssh BENUTZERNAME@ircbox.cs.fau.de verbinden

CIP oder CIP-Pool: Die Bezeichnung für Computerräume an der technischen Fakultät

CLI: Command Line Interface (deutsch: Kommandozeilen-Interface)

shell: Das geläufigste Kommandozeilen-Interface unter Linux/Unix-Betriebssystemen

SSH: Meint entweder das Secure Shell-Protokoll für den Fernzugang oder das Unix/Linux-Programm SSH, welches eine Verbindung über jenes Protokoll aufbauen kann

Terminal-Multiplexer: Ein Programm, das eine shell dauerhaft offen hält.

FAQ

Q: Beim Verbinden mit irc.fau.de bekomme ich die Fehlermeldung, dass zu viele User von meinem Server darauf zugreifen, was kann ich tun?

A: Probiere es mit irc.fu-berlin.de. Der fau-IRC-Server ist teil vom IRCnet Netzwerk, zu welchem mehrere Server gehören. Gibt es Probleme so kann man einfach einen anderen jener ausprobieren.

Q: Bei mir werden Zeilen/Spalten nicht ausgefüllt. Ist was kaputt gegangen?

A: Das passiert wenn man mehrere ssh-Verbindung zu derselben screen/tmux Sitzung offen hat. Eine der Sitzungen legt wohl die Größe der übertragenen Zeilen/Spalten auf eine kleinere Größe fest, sodass nicht wie gewohnt versucht wird, diese Größe dynamisch anzupassen. Will man diese Sitzung nicht einzeln aufrufen und schließen, so kann man alle anderen Sitzungen beim attachen (maximieren) dabei automatisch detachen (minimieren). Hierfür fügt man ein d an:

  • bei tmux: tmux attach -d oder tmux a -d
  • bei screen: screen -ad
Q: Ich verbinde mich mit einem lokalen Clienten und kann aber meinen Nickname nicht ändern und auch kein Topic setzen. Spinne ich?

A: Muss nicht sein. Vor ein paar Jahren gab es einen Konflikt zwischen einigen Internet-Providern und IRCnet, da u.a. die deutsche Telekom (t-online) keine ausreichende Identität standardmäßig beim Verbinden übertragen hat. Dies resultierte darin, dass jene User dann eventuell ihren Nickname nicht ändern oder Gebrauch von operator-Rechten (kick, ban, topic) machen konnten. Viel dagegen machen kann man anscheinend nicht. Jedoch kann man sich von einem andren Server aus verbinden siehe Methode 2.

Q: An wen kann ich mich wenden, wenn ich spezifische Probleme oder andere Fragen habe?

A: An die FSI Informatik oder Informatik-Studenten der FAU. Falls du in unserem IRC-Netzwerk bist, kannst du u.a. auch in die Jahrgangschannel (z.B. #faui2k13) kommen um einige zu erreichen. Ebenso kannst du im FSI-Zimmer der Informatik kommen (siehe FSI-Zimmer).