Im Netzwerkdschungel verliert so mancher Benutzer die Übersicht über die einzelnen Bäume. Dieser Artikel will etwas Licht ins Dickicht bringen und erklärt dazu die wichtigsten Grundbegriffe.
Laut einer Studie von ARD und ZDF aus dem Jahr 2006 sind bereits knapp 60 Prozent aller deutschen Haushalte regelmäßig online [1]. Die meisten von ihnen nutzen das Internet, um per E-Mail zu kommunizieren und um im Internet herumzustöbern oder nach bestimmten Themen zu suchen. Rund die Hälfte aller Internetnutzer besitzt einen schnellen DSL-Anschluss. Von besseren Internetzugängen profitiert auch Linux, da der Zugang zum Betriebssystem selbst und zu den zahlreichen freien Programmen mit einer schnellen und stabilen Internetverbindung deutlich mehr Spaß macht.
Parallel zur dieser Entwicklung setzt sich auch der Computer in immer mehr Haushalten durch. Wo früher ältere Kinder einen eigenen Fernseher bekamen, hält jetzt der Zweit- oder Drittcomputer Einzug. Was liegt da näher, als die heimischen Rechner zu vernetzen und das kleine Heimnetz mit dem großen Internet zu verbinden? Dieser Artikel erklärt Ihnen einige Grundlagen zum Netzwerk-Setup unter Linux. Er zeigt hingegen nicht, wie Sie eine Internetverbindung aufbauen. Details dazu finden Sie in den folgenden Artikeln.
Internetzugang
In einem Firmennetz ist alles ganz einfach: Man verbindet den eigenen Rechner per Ethernet-Kabel mit einer passenden Ethernet-Dose, und schon ist man online. Zu Hause muss man sich hingegen per Modem umständlich ins Internet einwählen. Dabei nimmt der eigene Computer mit einer Gegenstelle (dem Provider) Kontakt auf und erhält von dieser nach erfolgreicher Authentifizierung eine weltweit einmalige Adresse – die so genannte IP-Adresse. Beim Modem kann es sich um eines von folgenden Geräten handeln:
- traditionelles Modem für analoge Telefonverbindungen
- ISDN-Modem für digitale Telefonverbindungen
- DSL-Modem für DSL-Verbindungen
- Kabelmodem für den Internetzugang über den TV-Anschluss
Generell unterstützt Linux sämtliche Modemtypen, bei USB-Geräten benötigen Sie aber in der Regel spezielle Treiber. Wenn möglich sollten Sie deshalb für DSL- und Kabelmodems Geräte wählen, die über den Ethernet-Port mit dem Computer verbunden werden. Bei traditionellen Analog- und bei ISDN-Modems empfehlen sich Geräte, die Sie an die serielle Schnittstelle des Rechners anschließen. Da ISDN- und serielle Modems vom Aussterben bedroht sind, nimmt die Zahl der von Linux unterstützten Neugeräte von Jahr zu Jahr ab. Hier sollten Sie sich zeitig nach Alternativen umschauen.
Verlief der Verbindungsaufbau per Modem erfolgreich, erhalten Sie vom Provider eine IP-Adresse, die Sie identifiziert und den Datenaustausch mit anderen Rechnern möglich macht. Details zu den IP-Adressen entnehmen Sie dem Kasten “Von 32 auf 128”.
Von 32 auf 128
Aktuelle IP-Adressen sind 32-Bit lang und werden in vier Blöcken zu acht Bit geschrieben, zum Beispiel 192.168.1.100. Auf diese Art lassen sich maximal 4.294.967.296 (2^32) Adressen erstellen. Da in Zukunft deutlich mehr Adressen benötigt werden (zum Beispiel für Mobiltelefone, Autos, Küchengeräte), begann man 1995 mit den Arbeiten am Internet-Protokoll IPv6. Es benutzt 128-Bit lange Adressen, womit maximal 2^128 Adressen möglich sind. Zu einer Knappheit an IPv6-Adressen wird es somit kaum jemals kommen.
Anders beim aktuellen IPv4-Protokoll: Die Vergabe von IP-Adressen kontrolliert die Internet Assigned Numbers Authority (IANA) [2]. Sie teilt zum Beispiel Europa, Asien, Afrika und Amerika Bereiche zu, die dann lokale Institutionen weiter verteilen. Da anfänglich vorwiegend Firmen aus Nordamerika und Europa Internetadressen benötigten, teile die IANA diesen überdurchschnittlich viele zu. In Europa und Nordamerika herrscht deshalb generell kein Mangel an freien Adressen. In Asien und Südamerika sieht die Situation anders aus, hier setzt sich IPv6 deshalb auch schneller durch.
Linux gehört zu den Betriebssystemen, die den IPv6-Support relativ früh übernahmen. In einigen Bereichen vielleicht zu früh: So gibt es noch viele Heimrouter, die das neue Protokoll nicht unterstützen. Als Benutzer merkt man dies, wenn die Internetverbindung unter Linux wesentlich langsamer arbeitet als unter Windows. Abhilfe schaffen Sie, indem Sie die IPv6-Unterstützung ausschalten. Dazu ändern Sie in der Datei /etc/modprobe.conf den Eintrag
alias net-pf-10 ipv6 # alias net-pf-10 off
zu
# alias net-pf-10 ipv6 alias net-pf-10 off
Danach müssen Sie den Rechner neu starten. Open Suse 10.2 bietet auch die Möglichkeit IPv6 bereits während der Installation auszuschalten.
Adressen und Router
Nach einem erfolgreichen Verbindungsaufbau hat der Internetprovider Ihrem Netzwerkgerät eine der gut vier Milliarden IP-Adressen zugeordnet. Welche das ist, erkennen Sie an der Ausgabe des Befehls
/sbin/ifconfig
in einem Terminalfenster. Ein Beispiel für eine Ethernet-Verbindung zeigt der Kasten “Ausgabe von ifconfig”. Achten Sie bei einer DSL- oder analogen Modemverbindung auf den Eintrag inet address hinter ppp0. Für eine ISDN-Verbindung ist der inet address-Eintrag hinter ippp0 relevant. Bei einer Verbindung per Kabelmodem/Ethernet suchen Sie nach einer Zeile, die mit eth0 beginnt. Für WLAN-Geräte lautet die zugehörige Schnittstelle je nach Gerät eth0, wlan0, rausb0 oder ra0. Der Eintrag lo ganz unten bezeichnet ein spezielles Gerät für den eigenen Rechner: Es besitzt immer die IP-Adresse 127.0.0.1 und existiert unabhängig davon, ob sich im Rechner Netzwerkhardware befindet.
Ausgabe von ifconfig
kim:/home/marcel # ifconfig
eth0 Protokoll:Ethernet Hardware Adresse 00:0D:56:AF:0E:28
inet Adresse:192.168.1.147 Bcast:192.168.1.255 Maske:255.255.255.0
inet6 Adresse: fe80::20d:56ff:feaf:e28/64 Gültigkeitsbereich:Verbindung
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:175464 errors:0 dropped:0 overruns:0 frame:0
TX packets:45094 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 Sendewarteschlangenlänge:1000
RX bytes:79111361 (75.4 Mb) TX bytes:6672695 (6.3 Mb)
Interrupt:11
lo Protokoll:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:3046 errors:0 dropped:0 overruns:0 frame:0
TX packets:3046 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 Sendewarteschlangenlänge:0
RX bytes:559481 (546.3 Kb) TX bytes:559481 (546.3 Kb)
kim:/home/marcel #
Damit es im Internet nicht zu einem Adressenchaos kommt, sind bestimmte Adressen für den Heimgebrauch reserviert. Dies sind unter anderem die IP-Bereiche 192.168.0.0 bis 192.168.255.255 und 10.0.0.0 bis 10.255.255.255. Besitzt ein Rechner eine solche – private – Adresse, kann er nicht direkt auf das Internet zugreifen, sondern nur über einen Router. Diese Spezialgeräte leiten Daten aus einem Netzwerk in ein anderes weiter (Abbildung 1). Theoretisch könnte jeder Rechner eine öffentliche IP-Adresse bekommen, die Lösung mit dem Router bringt jedoch zwei Vorteile:
- Rechner, die eine private IP-Adresse besitzen, sind nicht direkt aus dem Internet angreifbar. Spezielle Sicherheitssysteme (Firewalls) müssen so nur den Router schützen, nicht jeden einzelnen Rechner.
- Die Lösung mit privaten und öffentlichen IP-Adressen spart sehr viele Adressen, da in Heim- und Firmennetzen immer die gleichen zum Einsatz kommen.
Zwei wichtige Begriffe in diesem Zusammenhang sind LAN (Local Area Network) und WAN (Wide Area Network). Mit LAN bezeichnet man ein Heim- oder Firmennetz. Rechner in einem LAN benutzen private Adressen, in der Regel aus dem Netz 192.168.0.0. Ein WAN ist ein Netzwerk, das sich über mehrere LANs erstreckt. Die Rechner des WAN, die miteinander kommunizieren, erhalten in der Regel öffentliche IP-Adressen. Das Internet ist eigentlich nur ein sehr großes WAN.

Abbildung 1: Der Provider (oben rechts) verteilt externe IP-Adressen. Über diese können internetfähige Geräte mit den übrigen Rechnern des Internets kommunizieren. Die PC in den Firmennetzen besitzen interne Adressen. Sie können nur über einen Router mit der Außenwelt Daten austauschen. Ein Rechner mit einer externen IP-Adresse (unten rechts) wird automatisch Teil des Internets.
DHCP und DNS
In den ersten Jahren des Internet arbeiteten die meisten Rechner mit festen IP-Adressen. Schaffte eine Großfirma wie IBM oder Siemens zehn neue internetfähige Rechner an, wurden zugleich zehn neue IP-Adressen bestellt. Da jede IP-Adresse jedoch Geld kostet, merkten die Firmen, dass sie mit einer dynamischen Vergabe der IP-Adressen Kosten sparen können: Greifen von zehn Rechnern höchstens acht gleichzeitig auf das Internet zu, benötigt man nur acht IP-Adressen.
Heute setzen nur noch Rechner, die ständig online sind, eine feste IP-Adresse ein. Den übrigen Netzteilnehmern teilt der Provider beim Verbindungsaufbau dynamisch eine Adresse zu. Dazu verwenden Server und Client das Dynamic Host Configuration Protocol (DHCP). Auch in einem Heim- oder Firmennetz geschieht die Adressvergabe in der Regel per DHCP. Die meisten DSL-Provider vergeben die Adresse täglich neu. Sie erhalten also am gleichen Tag immer die selbe Adresse. Wenn Sie allerdings die Verbindung für 24 Stunden nicht unterbrechen, teilt Ihnen der Provider trotzdem eine neue Adresse zu. Aktuelle Betriebssysteme versuchen beim Systemstart automatisch, das Netzwerk über DHCP einzurichten. In entsprechend eingerichteten Umgebungen beschränkt sich so die Netzwerkkonfiguration auf ein Minimum.
Per DHCP lässt sich zusätzlich zur IP-Adresse auch ein Rechnername einrichten. Der Provider teilt dem PC dazu einen weltweit einmaligen Namen zu. Der Domain Name Service (DNS) ordnet IP-Adressen Rechnernamen zu. Er dient in erster Linie dazu, den Menschen die Orientierung im Internet zu erleichtern, da sich Namen besser merken lassen als Nummern. Geben Sie im Browser die Adresse http://www.easylinux.de ein, fragt der Rechner beim zuständigen DNS-Server (Nameserver) nach, welche IP-Adresse zu diesem Namen gehört und findet so die EasyLinux-Homepage. Als Benutzer merken Sie davon nur etwas, wenn der Nameserver nicht richtig funktioniert. Der Browser findet dann Internetadressen nur über die IP-Adresse. Für die KDE-Homepage müssen Sie dann folgende URL im Browser angeben:
http://62.70.27.118
Parallell zu den DNS-Namen besitzt jeder Linux-Rechner auch zwei so genannte Hostnames. Der Name localhost bezeichnet den eigenen Rechner und verweist auf die IP-Adresse 127.0.0.1. Ubuntu und Suse Linux richten während der Installation auch einen zweiten Rechnernamen ein. Unter Ubuntu lautet dieser in der Regel Benutzername-desktop, bei Suse Linux linux-abcd oder einfach linux. Wie Ihr Rechner heißt, erfahren Sie, wenn Sie über [Alt]+ [F2] und den Befehl konsole ein KDE-Terminalfenster öffnen. Es zeigt den Eintrag Benutzer@Rechnername an. Linux speichert den Rechnernamen zusammen mit der IP-Adresse in der Datei /etc/hosts.
Das Heimnetz
Um zwei Rechner zu verknüpfen, müssen Sie gar nicht so tief in die Tasche greifen. Alles was Sie dazu brauchen sind zwei Netzwerkkarten und ein so genanntes Crosslink-Kabel. Netzwerkkarten gibt es bereits für zehn Euro, das Kabel kostet je nach Länge rund fünf Euro. Stehen Ihre PCs verstreut im Haus oder der Wohnung, lohnt sich der Einsatz von Wireless LAN (WLAN). Ein USB-WLAN-Adapter kostet kaum mehr als eine Netzwerkkarte.
Allerdings müssen Sie bei dieser Lösung auf beiden Rechnern die IP-Adresse von Hand einrichten.
- Unter Suse Linux starten Sie dazu das YaST-Modul Netzwerkgeräte / Netzwerkkarte (Abbildung 2).
- Bei Kubuntu richten Sie die Netzwerkkarte über den Menüpunkt Systemeinstellungen / Netzwerkeinstellungen ein. Hier klicken Sie ganz unten auf den Button Systemverwaltungsmodus, um Änderungen vornehmen zu können (Abbildung 3).
- Benutzer von Mandriva Linux starten das Mandriva-Kontrollzentrum und wählen Netzwerk & Internet / Eine Netzwerkschnittstelle erstellen. Im zweiten Dialog klicken Sie auf Ethernet.
Richten Sie für den ersten Rechner die Adresse 192.168.0.1 und für den zweiten die Adresse 192.168.0.2 ein. Bei beiden Rechnern geben Sie als Netzwerkmaske 255.255.255.0 an. Hat alles geklappt, testen Sie die Verbindung in einem Terminalfenster über ping. Auf dem ersten Rechner mit der IP-Adresse 192.168.0.1 geben Sie dazu folgenden Befehl ein:
ping 192.168.0.2

Abbildung 2: Suse Linux richtet Netzwerkkarten in der Grundeinstellung automatisch über DHCP ein. In YaST können Sie diese Einstellung ändern.

Abbildung 3: Einem Netzwerkgerät teilen Sie entweder eine feste Adresse zu oder eine dynamische über DHCP. Die Abbildung zeigt den Setup-Dialog von Ubuntu.
Theoretisch ist das Verknüpfen von zwei Rechnern auch über ein serielles oder ein USB-Kabel möglich. Wir raten Ihnen jedoch davon ab, da der Einrichtungsaufwand wesentlich höher als bei einem Ethernet-Netzwerk ist.
Deutlich bequemer gestaltet sich das Setup, wenn Sie sich ein Kombigerät mit eingebautem Switch, DHCP-Server und Router kaufen. Zusätzlich brauchen Sie dann pro Rechner eine Netzwerkkarte (meist schon on-board) und ein Netzwerkkabel (Abbildung 4). Alleskönner inklusive DSL-Modem und WLAN kosten rund 100 Euro, Geräte ohne Modem etwa die Hälfte.
Dank des DHCP-Servers müssen Sie bei dieser Lösung die IP-Adresse nicht von Hand eingeben. Beim Hochfahren des Systems holt sich Linux vom DHCP-Server automatisch eine Adresse. Auch Windows-Rechner sind inzwischen so eingerichtet, dass sie beim Booten einen DHCP-Server suchen. Neben der Adressvergabe sorgt der Router für den Datenaustausch über das Internet oder unter den Rechnern selbst.

Abbildung 4: Bei DSL-Verbindungen eignet sich ein kombinierter Switch mit Router und DHCP-Server am besten. So können alle Rechner unabhängig voneinander ins Internet.
Ports und Firewalls
Damit zwei oder mehr Rechner miteinander Kommunizieren können, müssen Sie denselben Dienst nutzen. In der Regel stellt einer der teilnehmenden Rechner den Dienst bereit. Diesen Rechner bezeichnet man als Server, die Teilnehmer als Clients. Um zum Beispiel im Internet zu stöbern, nutzen Sie den Dienst eines HTTP-Servers, um E-Mails zu lesen einen POP3-Server, um E-Mails zu versenden einen SMTP-Server und so weiter. Wenn Sie Ihre E-Mails abrufen, arbeitet Ihr Rechner als POP3-Client und ein Rechner Ihres E-Mail-Anbieters als POP3-Server.
Jeder Dienst benötigt mindestens einen Port, über den er die Verbindungsdaten austauscht. Der HTTP-Server bietet seinen Dienst standardmäßig über den Port 80 an, ein POP3-Server über den Port 110 und ein SMTP-Server über den Port 25. Eine Übersicht über die wichtigsten Dienste und Portnummern finden Sie in der Datei /etc/services.
Jeder Rechner, der Dienste anbietet, ist immer auch gewissen Gefahren ausgesetzt. Um den PC davor zu schützen, gibt es Firewalls. Sie schotten das ganze System ab und öffnen nur Ports für bestimmte Dienste. Unter Suse Linux können Sie zum Beispiel während der Installation entscheiden, ob das System die Firewall für den Dienst SSH öffnen soll.
Firewalls bringen jedoch auch Nachteile mit. So kommt es oft vor, dass die Firewall eine Verbindung blockiert, obwohl Sie das eigentlich nicht möchten. In diesem Fall müssen Sie entweder die Firewall komplett ausschalten oder einzelne Ports öffnen. Suse und Mandriva Linux starten in der Grundeinstellung automatisch eine Firewall, sobald Sie eine Netzwerkverbindung aufbauen. Ubuntu richtet keine Firewall ein, das System bietet aber in der Grundeinstellung auch keine Angriffsfläche, da es keinerlei Server-Dienste startet.
Wie bereits erwähnt, benötigen Sie die Firewall nur, wenn Ihr Rechner Dienste anbieten soll, zum Beispiel als Druckerserver oder um eine Anmeldung per SSH zu erlauben. Um einzelne Ports für diese Dienste zu öffnen, starten Sie unter Suse Linux das YaST-Modul Sicherheit & Benutzer / Firewall. Hier können Sie die Firewall auch ganz ausschalten. Bei Mandriva Linux wählen Sie im Kontrollzentrum Sicherheit / Eine persönliche Firewall aufsetzen und markieren dann im folgenden Dialog die Checkbox Alles (Keine Firewall) (Abbildung 5). Ubuntu bringt kein grafisches Tool für das Setup einer Firewall mit, hier sollten Sie deshalb besonders vorsichtig vorgehen, wenn Sie neue Server-Dienste installieren.

Abbildung 5: Eine Firewall schützt Ihren Rechner, wenn dieser Dienste anbietet. Die Abbildung zeigt die Einrichtung unter Mandriva Linux.
[1] ARD/ZDF Online-Studie 2006: http://www.daserste.de/service/studie.asp

