31.10.2001

Wiederholung:

Wir habe gestern hauptsächlich drei Aussagen definieren können:

- PC's können nur über die MAC-Adresse angesprochen werden
- Es sind Broadcasts nötig, um die MAC-Adressen der Zielrechner zu bestimmen
- Router leiten standardmässig keine Broadcasts weiter

DLC (Data Link Control):

Dieses Protokoll ist ein nicht routbares Protokoll, d.h. es fehlen ihm wichtige Komponenten im Protokoll-Stack, die sich in andere Schichten einlagern. Der stärkste Einsatz ist die Anbindung an Mainframes (Grossrechner, z.B. AS400), die dieses Protokoll verwenden. Mittlerweile ist Dieses etwas in Vergessenheit geraten. Ebenfalls wurde das Protokoll früher als Verbindung zu bestimmten Netzdruckern von HP (z.B. JetDirect 4si, o.ä.) benutzt. DLC arbeitet in der Vermittlungs- und der Transportschicht.

NetBEUI (NetBIOS Extended / Enhanced User Interface):

Ebenfalls ein nicht routingfähiges Protokoll. Damit ist dieses Protokoll nur für kleine Netzwerke prädestiniert. Da es in Microsoft-Produkten enthalten ist, kann man es einfach in einem kleinen Home-LAN einrichten. Als Vorteile gelten, dass es schnell und selbstkonfigurierend ist. Einige behaupten sogar, es wäre selbstoptimierend, was ich bis jetzt noch nicht bestätigen konnte.

AppleTalk:

Die Apfelgespräche unterstützt nur der W2k-Server. Ein auch von W2k-Servern routingfähiges Protokoll, welches sinnvoll ist, um Macintosh-PC's zur Zusammenarbeit zu bewegen. Auf W2k-Server gibt es dann dazu Datei- und Druckdienste für Macintosh. Bei den Dateidiensten wird eine Freigabe unter W2k eingerichtet, auf die Mac-PC's zugreifen können. Ebenfalls gilt das für die Drucker. Will man auf Mac-PC's zugreifen, muss man andere Sachen in Anspruch nehmen.

NWLink (IPX/SPX-kompatibel):

IPX - Internet Packet Exchange; SPX - Sequentiell Packet Exchange. Ein auch von W2k routingfähiges Protokoll, welches einfach zu konfigurieren ist. Der Einsatz ist hauptsächlich für den Zugriff auf Novell-Netware-Server.

Novell ist ein relativ gut ausgearbeiteter FileServer, welcher sogar sein RAM defragmentiert, um die Antwortzeiten kürzer zu halten. Nichts destro trotz hat Novell in letzter Zeit ziemlich stark Marktanteile verloren...

Auf der W2k-Seite sollte man die Client Services for Netware (CSNW) installiert haben. Das Benutzerkonto auf dem Novell-Server ist obligatorisch. Hat man aber mehrere Windows-Clients, ist es sinnvoll, zusätzlich einen W2k-Server mit den Gateway Services for Netware aufzusetzen. Dieser hat eine Verbindung über IPX/SPX zu dem Novell-Server mit dem entsprechenden Benutzerkonto. Zusätzlich muss aber auf dem NW-Server eine Gruppe eingerichtet werden, die NTGateway heisst; alle zugreifenden W2k-Server sollten tunlichst Mitglied dieser Gruppe sein. Auf dem W2k-Server richtet man eine Freigabe ein, in der die Ressourcen des NW-Servers abgebildet werden. Die Clients greifen dann auf normalem Weg auf einen W2k-Server zu und sehen nichts von irgendwelchen Novell-Geschichten. Zudem muss nicht jeder Client CSNW eingerichtet bekommen. In der Systemsteuerung des W2k-Servers gibt es jetzt ein Symbol "GSNW", in dem man den Freigabenamen definieren muss; nicht wie gewohnt in der Verwaltung unter Freigaben. Dass man entsprechende Zugriffsrechte auf dem NW-Server und Freigaberechte unter W2k braucht, ist demnach selbstverständlich. Man sollte sich aber im Klaren sein, dass man auf dem NW-Server aufgrund des W2k-Gateways dessen Zugriffslizenzen aushebelt, da es für den NW-Server so aussieht, als wenn nur ein Benutzer zugreift. Ob genau das das Ziel von Microsoft ist, sei dahingestellt.

W2k bietet ein Migrationstool an, welches sogar die Rechte von Novell übernehmen kann. Ein anderes Tool namens FPNW (File- and Print-Services for Netware) erlaubt Novell-Clients, auf Microsoft Server zuzugreifen.

Zur IPX/SPX-Konfiguration sind drei Kriterien zu beachten: eine Netzwerknummer, eine interne Netzwerknummer und den Rahmentyp. Bei der Installation wird geschaut, welche Netzwerknummer schon vergeben ist. Diese wird automatisch generiert. Die Interne unterscheidet zwischen mehreren Karten oder Rahmentypen und beträgt normalerweise 00000000. Der Rahmentyp wird normalerweise automatisch erkannt und ist sinnvoll, wenn es nur einen Rahmentyp im LAN gibt. Als Rahmentypen gibt es Spezifikationen wie die IEEE 802.3, 802.2 und SNAP. Netwareversionen unter 3.12 verwenden den Rahmentyp aus der IEEE 802.3, oberhalb von 3.12 wird die IEEE 802.2 verwendet. Wenn man mehrere Netzwerkkarten benutzt, muss man mehrere Rahmentypen deklarieren und damit auch mehrere Netzwerknummern.

TCP/IP (Transmission Control Protocol / Internet Protocol):

TCP/IP ist DAS Protokoll und damit das weit verbreitetste Protokoll überhaupt. Es ist eine aufwendigere Konfiguration notwendig und es ist langsamer als die anderen Protokolle. Es ist unter W2k wichtig, um Dinge wie ADS, Terminalservices und den IIS zum Funktionieren zu bewegen.

Die Grundvorraussetzung ist die Vergabe von IP-Adressen. Es gibt darunter die Versionen v4, welche noch weitläufig benutzt wird und wir uns deshalb näher anschauen, und v6, das neuere Protokoll. Die Adressvergabe unter v4 wird als punktierte Dezimalnotation bezeichnet. Als Beispiel nehmen wir die Adresse192.168.0.1 und die Subnet-Mask 255.255.0.0. Adressen werden von 0-255 vergeben (die Angabe von Bytes in Dezimalwerten), die Subnetmask bietet nicht so viele Möglichkeiten. Wir behaupten erst mal der Einfachheit halber, dass es nur die Möglichkeit 0 oder 255 gibt. Man kann die Zahlen hexadezimal oder dezimal darstellen. Die oben angegebene Adresse wäre hexadezimal dargestellt C0.A8.0.1; FF.FF.0.0. Der (hexadezimal gesehen höchste) Buchstabe F ist 2 Bytes gross, und damit sind 4 Bytes mal 4 Blöcke = 16 Bytes plus SubnetMask (16 Bytes) sind 32 Bytes oder 4 Oktetts. Binär dargestellt sieht das folgendermassen aus: 11000000.10101000.00000000.00000001; die SubnetMask: 11111111.11111111.00000000.00000000. In der SubnetMask darf es nur einen Wechsel von einem 1er Block zu einem 0er Block geben, und deswegen kommen nur bestimmte Bereiche einer Subnetmask in Frage.

Bei uns ist der Wechsel genau in der Mitte ersichtlich: 11111111.11111111 (Wechsel zur 0) 00000000.00000000. Deswegen bürgert sich folgende Schreibweise immer mehr ein: 192.168.0.1 / 16. Die 16 sagt aus, wie viele Einsen in der SubnetMask gesezt sind. Bei den Klassen-Netzen ist dieser Wechsel zur 0 immer genau zwischen den einzelnen "Wörtern" (ein Wort sind zwei Bytes), Bei klassenlosen Netzen kann der Wechsel auch dazwischen erfolgen, weshalb man diese Netze auch als classless bezeichnet.

 

Der Hostanteil und der Netzwerkanteil werden durch die SubnetMask begrenzt: Der Netzwerkanteil ist der Anteil, der entsteht, wenn man die Adresse und die SubnetMask mit einem logischen UND verknüpft (binäres Rechnen). Der Hostanteil ist der Teil, der nicht der Netzanteil ist.

IP-Adresse 1 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
SubnetMask 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ergebnis 1 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Damit wissen wir, dass der Netzanteil der Teil ist, wo in der SubnetMask 255 steht, und der Hostanteil der Teil ist, wo in der SubnetMask 0 steht. Die NetzID ist jetzt: 192.168.0.0, und die HostID 192.168.0.1, wobei immer die komplette IP-Adresse dargestellt wird. Der hier unterstrichene Anteil ist der, der gemeint ist.

Als Broadcastadresse in diesem Teilnetz ist die Adresse 192.168.255.255 zuständig. Direkt eingeben funktioniert nicht, da die PC's nicht antworten.

Es gibt im wesentlichen 5 Klassen: A, B, C, D und E: Bei Klasse A-Netzen darf das erste Bit nicht gesetzt sein, bei Klasse B muss das erste gesetzt und das zweite Bit nicht gesetzt sein, Bei Klasse C sind die ersten beiden Bits gesetzt, und das dritte darf nicht gesetzt sein, und bei D sind die ersten drei Bits gesetzt und das vierte Bit darf nicht gesetzt sein. Daraus ergeben sich folgende Netze:

A 1.0.0.0 - 126.255.255.255
255.0.0.0 = 126 Netze mit 16 Millionen PC's pro Netz
B 128.0.0.0 - 191.255.255.255
255.255.0.0 = 255 Netze mit ca. 65000 PC's pro Netz
C 192.0.0.0 - 223.255.255.255
255.255.255.0 = 16 Millionen Netze mit 254 PC's pro Netz
D 224.0.0.0 - 239.255.255.255
255.255.255.255 (Multicastbereich)
E  
für experimentelle Zwecke

Ein Zahlenbereich fällt aus dieser Tabelle raus: 127.0.0.0 - 127.255.255.255. Dieser Bereich ist für den lokalen Bereich reserviert: 127.0.0.1 ist der localhost.

Es gibt auch noch private Bereiche: Im A-Netz sind es: 10.0.0.0 - 10.255.255.255, im B-Netz: 172.16.0.0 - 172.31.255.255, im C-Netz: 192.168.0.0 - 192.168.255.255. Diese werden im Internet nicht weitergeleitet, der nächste Router blockiert diese.

Als Beispiel nehmen wir folgende Konfiguration: An einem Hub befinden sich drei PC's mit folgenden Adressen:

PC1: 192.168.5.3 / 16
PC2: 192.168.3.2 / 16
PC3: 192.254.12.13 / 16

Welcher PC kann mit welchem PC kommunizieren?

Lösung: PC1 und PC2 können miteinander kommunizieren. PC3 befindet sich in einem anderen logischen Teilnetz aufgrund des zweiten Blocks in der IP-Adresse (...254...).

Fügen wir einen weiteren PC hinzu: PC4 192.168.4.4 / 24

Mit welchen PC's kann dieser kommunizieren?

Ebenfalls mit niemandem! In diesem Fall ist die SubnetMask falsch. Es müssen also sowohl die IP-Adresse als auch die SubnetMask beachtet werden.

Damit PC's unterschiedlicher SubnetMask trotzdem kommunizieren können, müssen Router eingerichtet werden. Man kann als Router auch einen Server einsetzen. Wir konfigurieren einen unserer W2k-Server als IP-Router. Dieser leitet IP-Pakete von einem logischen IP-Teilnetz in ein anderes (IP-Forwarding). Als Standardeinstellung leitet dieser Router keine Broadcasts weiter. Ausserdem können Router auch physikalische Netze überbrücken (vom Ethernet in Glasfaser z.B.).

Unser Router hat mind. zwei Netzwerkkarten und damit kennt er zwei Adressen:

- 192.168.0.1 / 16
- 10.2.25.10 / 24

Auf der 192.168er Seite liegt ein LAN mit zwei Clients (A, B). Auf der anderen Seite ebenfalls (C, D). Trotzdem Rechner B und C können noch nicht miteinander kommunizieren.

Wir überprüfen die interne Routingtabelle unseres Rechners:

Ich habe hier schon ein Standardgateway vergeben, denn normalerweise würde meine eigene eigene IP-Adresse stehen. Pinge ich jetzt die Adresse 10.2.25.200 an, bekomme ich die Fehlermeldung "Zeitüberschreitung" und nicht mehr "Zielhost nicht erreichbar". Der Grund ist, dass der andere PC (C) nicht antworten kann. Bei ihm muss ebenfalls ein Standardgateway eingetragen sein (10.2.25.10).

Die IP-Adresse und das dazugehörige Standardgateway müssen sich im gleichen logischen Teilnetz befinden.

Um den Ablauf zu verfolgen, lohnt es sich, mal pathping 10.2.25.200, oder tracert 10.2.25.200 einzugeben.

Fehlersuche:

- ipconfig -all
- ping 127.0.0.1
- ping "eigene IP-Adresse"
- ping "Standardgateway"
(- ping "Remotesite des Routers")
- ping "RemotePC"

TCP/IP-Dienste: DHCP (Dynamic Host Configuration Protocol)

Dargestellt ist ein Netzwerk mit zwei Clients (A, B), einem Router und zwei weiteren Clients (C, D) an der anderen Seite eines Routers mit folgenden Adressen:

Rechner B: 192.168.1.3 / 16
Router: Adresse1: 192.168.0.1 / 16  Adresse2: 10.2.25.10 / 24

Mit DHCP können folgende Dienste angegeben und an die Clients übermittelt werden: automatische Vergabe von IP-Adressen, Standard-Gateway, DNS-Server und WINS-Server. Damit DHCP funktioniert, dürfen die Clients explizit keine IP-Adressen besitzen, was bei einer Installation von W2k eigentlich der Standard sein dürfte. Auf dem Server muss der Dienst installiert und aktiviert sein, der Adressbereich muss eingetragen werden und es muss an die Clients die Autorisierung übermittelt werden. Der Client sendet ein Broadcast und damit eine Anfrage nach einem DHCP-Server (DHCP-Request). Auf diese Anfrage antworten alle vorhandenen DHCP-Server und senden ein Angebot (offer), der Client entscheidet aus dem Angebot, welches er annimmt (select), meistens wird das das erste Angebot sein, und erhält eine Bestätigung (Acknowledge / ACK). Unser DHCP-Server ist Rechner D; Rechner C und Rechner A sind DHCP-Clients. A wird aber keine IP-Adresse erhalten, da der Router die Broadcasts blockiert. Um das Problem zu lösen, kann man entweder einen zweiten DHCP-Server aufstellen, dem Router "sagen", dass er DHCP-Broadcasts durchlassen soll (BootP-Protocol / RFC 1542 (neu RFC 2131)) oder einen DHCP-Relay-Agent aufstellen. Wenn der Router, wie in unserem Fall, aus einem PC besteht, kann man auch den Router als DHCP-Server einrichten. Gelingt die Anmeldung nicht, greift sich der Client eine APIPA-Adresse (Automatic Private IP-Adressing / 169.254.x.x / 16) sendet ein Ping, um zu testen, ob die Adresse schon vergeben ist, und versucht es bei einer Antwort noch weitere neunmal. Anschliessend wird trotzdem noch alle fünf Minuten nach einem DHCP-Server gefragt.