Dienste unter TC/IP

Telnet

Nachdem wir uns in den letzten Abschnitten von der Bitübertragung über verschiedene Modulationsverfahren, das IP-Protokoll und die darauf aufsetzenden Dienste TCP und UDP bis zur Namensauflösung durchgekämpft haben, wollen wir nun einige darauf aufsetzenden Anwendungsprotokolle betrachten.

Das Telnet-Programm dient dazu einen Login von einer entfernten Maschine zu ermöglichen. Es stellt dabei ein virtuelles Textterminal zur Verfügung und wird über den TCP-Port 23 zur Verfügung gestellt. Das Programm das diesen Dienst zur Verfügung stellt nennt man den Telnetserver. Das Programm das den Dienst in Anspruch nimmt den Telnet-Client.

Telnet-Verbindungen

Das Telnet-Protokoll verwendet das Konzept eines network virtual terminal (NVT) um beide Enden einer Telnet-Verbindung zu definieren. Jedes NVT hat eine logische Tastatur und einen logischen Drucker. Der logische Drucker ist dabei meistens der Terminalbildschirm, die Tastatur ist üblicherweise die Tastatur des Benutzers, kann aber auch durchaus eine Datei oder eine beliebige andere Zeichenquelle sein.

Die beiden Programme an den jeweiligen Enden, also der Telnetserver und das Terminalprogramm steuern die Übersetzung von virtuellen zu tatsächlichen Geräten. Auf diese Art können Verbindungen zu beliebigen zeichenorientierten Geräten aufgebaut werden, solange die virtuellen Zeichencodes in  tatsächliche Zeichen umgesetzt werden können.

Wenn eine Telnetverbindung aufgebaut wird, so startet der Telnetserver eine Sitzung. Jeder Tastendruck in einer Telnetsitzung muss durch eine Reihe von Umsetzungsprozessen wie den Terminaltreiber, den Telnet-Protokolltreiber, den TCP/IP-Protokollstack auf der Clientseite, den Protokollstack auf der Serverseite, dem dortigen Telnet-Protokoll bis es auf der anderen Seite verarbeitet wird. Da die meisten Anwendungen darauf ausgelegt sind von einer Anwendungskonsole Anweisungen zu empfangen und auf eine Konsole zu schreiben, erzeugt die Serverseite eine Pseudoterminal, von dem die Anwendung liest und auf das die Anwendung schreibt.

Nach diesem Prinzip arbeiten auch moderne Terminalserver-Protokolle. Neben Zeichen werden hier einfach Anweisungen zum Zeichnen von Fenstern, Informationen über den darzustellenden Zeichensatz und Bitmaps übertragen.

Eine Telnetsitzung starten

Eine Telnetsitzung starten Sie am einfachsten durch den Aufruf

telnet <IP-Adresse>

Wenn Sie einen DNS-Server haben oder der Zielrechner in ihrer Hosttabelle ist, dann geht auch

telnet <Servername>

Es öffnet sich ein Terminalfenster, in dem Sie sich anmelden können. Telnet ist ein nützliches Debugging-Werkzeug, da Sie zusätzlich zum Zielrechner noch einen Port angeben können. So können Sie, wenn ein TCP/IP-Dienst nicht funktioniert eine Telnet-Sizung auf den Zielport öffnen und den Protokolldialog von Hand führen.