Kapitel 3 Filius
Transcrição
Kapitel 3 Filius
K O M M U N I K AT I O N IN RECHNERNETZEN F I L I U S – S I M U L AT I O N VON RECHNERNETZEN B E N U T Z E R H AN D B U C H ( M I T A U F G AB E N ) Dieses Werk ist unter einem Creative Commons 3.0 Deutschland Lizenzvertrag lizenziert: - Namensnennung - Keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen Um die Lizenz anzusehen, gehen Sie bitte zu http://creativecommons.org/licenses/by-nc-sa/3.0/de oder schicken Sie einen Brief an Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA. Thomas Schaller – E-Mail: [email protected]. – Dezember 2010 Schaller (28.12.10) Seite 1 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Inhaltsverzeichnis Installation von Filius............................................................................................................ 3 Entwurfs- und Simulationsmodus.......................................................................................3 Entwurf eines Netzwerks......................................................................................................4 Einfügen der Netzwerkkomponenten...................................................................................4 Konfiguration der Hardware ................................................................................................5 Simulation des Netzwerkes..................................................................................................5 Installation von Software.....................................................................................................5 Ausführen von Netzwerkanwendungen...............................................................................6 Kontrolle der Netzwerkkonfiguration..................................................................................7 Client-Server-Prinzip: Echo-Anwendung............................................................................8 Internet: Verbinden mehrerer Netze mit Routern................................................................9 Einen Vermittlungsrechner konfigurieren.............................................................................9 Mehrere Vermittlungsrechner............................................................................................10 Netzwerksicherheit: Firewall..............................................................................................11 Internetdienste: WWW und DNS........................................................................................13 Webserver und Webbrowser installieren...........................................................................13 DNS-Server installieren.....................................................................................................13 Fortgeschrittene Konfiguration des Web-Servers: Eigene Seiten kreieren........................14 Fortgeschrittene Konfiguration des Web-Servers: Virtuelle Hosts (für Experten)...............16 Internetdienste: E-Mail und DNS........................................................................................16 Maildienst installieren........................................................................................................ 16 DNS-Server installieren.....................................................................................................18 Netzwerkkonfiguration mit DHCP-Server..........................................................................20 Schaller (28.12.10) Seite 2 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Installation von Filius Laden Sie sich die aktuelle Version des Filius-Tools unter http://www.die.informatik.unisiegen.de/pgfilius/index_html (Stand Nov. 2010) herunter. Die folgende Anleitung bezieht sich auf die Version 1.3.1 vom 20.09.2010, sollte aber auch für die Folgeversionen verwendbar sein. Für die Installation und Benutzung der Lernsoftware FILIUS werden folgende Systemeigenschaften vorausgesetzt: Es wird die Java Runtime Environment 5 (JRE 5) beziehungsweise das Java Development Kit 6 (JDK 6) benötigt. Das JDK 6 ist nur für den Software-Wizzard erforderlich, mit dem man eigene Anwendungen für Filius schreiben kann (für die Schule kaum relevant). Beide sind im Internet unter http://www.java.com/de/download/ (Stand November 2010) frei verfügbar. Entpacken Sie das Zip-Archiv filius.zip in ein Verzeichnis auf ihrem Rechner. Danach ist die Anwendung Filius.exe ohne weitere Installation verwendbar. Im Schulnetz kann die Software auf ein Serverzeichnis (in der Musterlösung paedML Baden-Württemberg 1 – das pgm$ Verzeichnis) entpackt werden und eine Verknüpfung in den Benutzerprofilen angelegt werden. Danach ist es ohne Probleme einsetzbar. Bem.: Ein Doppelklick auf die gespeicherten Netze funktioniert nur, wenn zusätzlich die .fls – Dateien mit Filius verknüpft werden. Wird aber zunächst das Programm gestartet und dann dort die gespeicherte Datei geöffnet, ist diese Verknüpfung nicht notwendig. Entwurfs- und Simulationsmodus Filius verfügt über zwei verschiedene Modi: den Entwurfs- und den Simulationsmodus. Im Entwurfsmodus werden die Komponenten des Netzes eingefügt und konfiguriert. Im Simulationsmodus können auf den Rechnern verschiedene Client- oder Serverprogramme gestartet werden und damit die Konfiguration des Netzes getestet oder Netzwerkdienste simuliert werden. Das Programm startet im Entwurfsmodus. Nur im Entwurfsmodus können Netzwerke gespeichert oder geladen werden. Hammer => Entwurfsmodus grünen Pfeil => Simulationsmodus 1 http://www.support-netz.de/ (Stand November 2010) Schaller (28.12.10) Seite 3 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Entwurf eines Netzwerks Einfügen der Netzwerkkomponenten Wählen Sie dazu zunächst die benötigten Hardwarekomponenten aus. Halten Sie mit der Maus eine Hardwarekomponente im linken Auswahlmenü fest und ziehen Sie sie auf die Arbeitsfläche. Das Symbol kann anschließend noch beliebig verschoben werden. Danach verbinden Sie die Hardwarekomponenten. Mit einem Mausklick auf das Symbol Kabel in der linken Spalte und anschließendem nacheinander folgendem Auswählen von den zwei Hardwarekomponenten, die Sie verbinden möchten, stellen sie eine Kabelverbindung her. Wenn das Kabel zwischen den Komponenten erscheint, haben sie eine physikalische Verbindung hergestellt. Klickt man mit der rechten Maustaste auf eine Komponente können entweder deren Kabel entfernt werden oder die Komponente vollständig gelöscht werden. Rechner/Laptop Rechner und Laptop haben genau die gleichen Funktionen. Sie verfügen über eine Netzwerkkarte (Netzwerkschnittstelle), bei der folgende Parameter eingestellt werden müssen: Name, IP-Adresse, Subnetzmaske. Zusätzlich können Gateway, Domain Name Server (DNS) und DHCP-Einstellungen konfiguriert werden. Die Unterscheidung zwischen Rechner und Laptop kann dazu verwendet werden, Rechner mit Serverfunktion von denen mit Clientfunktion optisch zu unterscheiden. Diese Festlegung ist aber willkürlich. Switch Der Switch verfügt über acht Anschlüsse. Ein Switch verbindet mehrere Hardwarekomponenten eines einzigen Netzwerks. Sollen mehr als acht Rechner miteinander verbunden werden, müssen mehrere Switches verwendet werden. Beim Switch kann nur der Name festgelegt werden. Vermittlungsrechner/Router Der Router dient dazu mehrere Netzwerke miteinander zu verbinden. Er hat dazu mehrere Netzwerkkarten (Netzwerkschnittstellen). Jede Schnittstelle gehört zu einem der verbundenen Netzwerke. Jede Netzwerkkarte kann daher separat konfiguriert werden. Zur Eingabe sind folgende Parameter notwendig: Name des Routers und für jede Schnittstelle die IP-Adresse und die Subnetzmaske. Der Router bietet auch eine Firewall-Funktion, mit der Möglichkeit bestimmte Absender- oder Zieladressen oder auch bestimmte Ports zu sperren. Modem Das Modem kann dazu verwendet werden, um die Netzwerke verschiedener Schüler, d.h. Netzwerke, die auf verschiedenen Rechnern simuliert werden miteinander zu verbinden. Leider funktioniert das Modem in der vorliegenden Version nicht richtig. Schaller (28.12.10) Seite 4 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Konfiguration der Hardware Sobald Sie eine Komponente im Entwurfsmodus auswählen (Doppelklick), erscheinen ihre aktuellen Einstellungen am unteren Rand des Hauptfensters. Dort können Sie eine Änderung der Daten vornehmen. Ein Rechner verfügt beispielsweise über einen Namen, eine IP-Adresse, eine Subnetzadresse. Wählen Sie dazu einfach die Textfelder, editieren Sie nach ihrem Wunsch den Eintrag, und bestätigen die Eingabe mit „Ändern“. Erfüllt eine Einstellung die formalen Kriterien nicht (z.B. die IP-Adresse besteht nur aus drei Byte), dann wird die Schriftfarbe rot. Es wird aber nicht überprüft, ob die Konfiguration aller Netzwerkkomponenten zusammenpasst. AUFGABE 1: Erstellen Sie ein Computernetz aus fünf Computern und vier Laptops. Geben Sie den Komponenten unterschiedliche Namen. Simulation des Netzwerkes Mit dem grünen Pfeil wechselt man in den Simulationsmodus. Dort verschwindet die Komponentenleiste. Es können keine neuen Komponenten mehr hinzugefügt oder die Einstellungen der Komponenten verändert werden. Installation von Software Ein Doppelklick auf einen Rechner oder Laptop öffnet im Simulationsmodus ein Desktopfenster dieses Rechner. Standardmäßig ist auf dem Rechner noch keine „Software“ installiert. Diese muss je nach Anforderung an das Netz „installiert“ werden. Schaller (28.12.10) Seite 5 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Mit „Änderungen annehmen“ wird die installierte Software auf dem Rechner verfügbar. Es stehen die Programme für folgende Anwendungen bereit: • Kontrolle der Netzwerkkonfiguration: Terminal • Client-Server-Anwendung: Echo-Server/Client • World Wide Web: Web-Server, Web-Browser, Texteditor, Datei-Explorer • E-Mail: E-Mail-Server, E-Mail-Programm • Peer-To-Peer-Dateitausch: Gnutella, Datei-Explorer Darüber hinaus kann die Kommunikation im Netzwerk durch einen DNS-Server oder eine Firewall beeinflusst werden. Alle diese Programme werden bei den entsprechenden Anwendungsszenarien genauer beschrieben. Sie bilden im Wesentlichen die Funktionen entsprechender „echter“ Anwendungen nach. Nachdem die Software installiert wurde, ist sie automatisch auch bei einem erneuten Wechsel in den Simulationsmodus verfügbar. Auch der Status der Software (z.B. Webserver gestartet ja/nein) wird gespeichert und bei erneuter Simulation wieder hergestellt. Ausführen von Netzwerkanwendungen Wenn die Programme installiert sind, können sie auf dem Computer-Desktop gestartet und benutzt werden. Es können die Desktops mehrerer Computer nebeneinander dargestellt werden und damit der Effekt von Aktionen auf beiden Seiten (Client und Server) beobachtet werden. Die dabei benutzten Datenleitungen werden kurzfristig farblich hervorgehoben. Über den Schieberegler in der Symbolleiste kann die Geschwindigkeit der Datenübertragung verändert werden. Mit der rechten Maustaste kann bei Computern der Verlauf der Netzwerkkommunikation angezeigt werden. Damit kann der Kommunikationsablauf des verwendeten Protokolls analysiert werden. Ein Doppelklick auf einen Switch zeigt dessen aktuelle SAT (Source-Address-Table), d.h. welche Netzwerkkarte (MAC-Adresse) mit welcher Schnittstelle des Switches verbunden ist. Schaller (28.12.10) Seite 6 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Kontrolle der Netzwerkkonfiguration In einem Netzwerk (auch in einem realen) muss überprüft werden, ob alle Netzwerkeinstellungen korrekt sind, bevor komplexere Client-Server-Anwendungen verwendet werden können. Dazu verwendet man am besten die Terminal-Software auf den Computern. Diese entspricht der Eingabeaufforderung / cmd-Befehl auf Windowsrechnern. Dort stehen folgende Befehle zur Kontrolle des Netzwerks zur Verfügung: • ipconfig: Zeigt die Netzwerkeinstellungen (IP-Adresse, Subnetzmaske, Gateway und DNS) des eigenen Computers an. Bei Windows gibt es noch die ausführlichere Variante ipconfig /all • ping <ip-adresse> oder ping <host-name>: Ein Ping wird an einen anderen Rechner gesendet. Dieser antwortet und die benötigte Zeit und die verlorenen Datenpakete werden angezeigt. Dies zeigt die Qualität einer Verbindung. Hohe Verlustraten weisen schlechte Verbindungen (z.B. auf Wackelkontakte) oder überlastete Server hin. • host <host-name>: Es wird versucht den Hostnamen in eine IP-Adresse zu übersetzen. • route: Die Weiterleitungstabelle des eigenen Rechners wird angezeigt. Diese Tabelle zeigt, an wen die Daten als nächstes geschickt werden müssen, wenn ein bestimmtes Ziel ausgewählt ist. Dieses Zwischenziel wird als Gateway bezeichnet. Nachdem alle Einstellungen des Netzwerkes im Konfigurationsmodus von Filius eingestellt worden sind, wechselt man in den Simulationsmodus und startet dort das Terminal. Dort kontrolliert man: 1. Stimmen alle Netzwerkeinstellungen? Ipconfig verwenden 2. Werden alle anderen Rechner erreicht? Ping <ip-adresse> zu jedem anderen Rechner. Mögliche Fehler: • doppelte IP-Adressen • unterschiedliche oder falsche Subnetzmasken wenn mehrere Teilnetze verwendet werden: • Das Gateway ist in der Rechnerkonfiguration nicht gesetzt. • Die Konfiguration des Vermittlungsrechners stimmt nicht. Wenn das Netz einen DNS-Server enthält: 3. Funktioniert der DNS-Server? Mit dem host-Befehl (host <rechnername>) einige Rechnernamen auflösen, mit ping <rechnername> alle anderen Rechner anpingen. Bei Windowsrechnern heißt der entsprechende Befehl nslookup. Mögliche Fehler: • Der DNS-Server wurde nicht gestartet (das Programm muss einmal gestartet werden und der starten -Button gedrückt werden). Schaller (28.12.10) Seite 7 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN • Der DNS-Server ist nicht in der Rechnerkonfiguration eingetragen. • Im DNS-Server fehlt der Eintrag für den Ziel-Rechner. Diese Schritte müssen für jeden Rechner des Netzes wiederholt werden, da die Kommunikation in der einen Richtung funktionieren kann, aber in der anderen nicht (z.B. wenn bei einem Rechner der DNS-Server eingetragen ist, beim anderen aber nicht.). AUFGABE 2: Konfigurieren Sie die IP-Adressen und die Subnetzmasken Ihres Netzes aus Aufgabe 1 so, dass die Kommunikation zwischen den Rechnern funktioniert. Gateway und DNS können zunächst leer bleiben. Client-Server-Prinzip: Echo-Anwendung In Rechnernetzen werden die meisten Anwendungen nach dem Client-Server-Prinzip realisiert, d.h. auf einem Rechner wird ein Serverprogramm gestartet. Dieses wartet auf Anfragen eines Clients. Solange keine Anfrage von einem Client kommt, macht es einfach gar nichts. Einen Rechner auf dem ein Serverprogramm läuft, bezeichnet man oft auch als Server, obwohl diese Bezeichnung eigentlich nur für das Programm gilt. Das Client-Programm kann Anfragen an das entsprechende Serverprogramm stellen. Dieses bearbeitet die Anfrage des Clients und schickt die Antwort zurück. Da auf einem Rechner mehrere Serverprogramme laufen können, muss festgelegt werden, welches Serverprogramm angesprochen werden soll. Das geschieht durch die Festlegung des Ports (der Eingangstür) an dem das Serverprogramm die Anfrage erwartet. Normalerweise haben bestimmte Anwendungen festgelegte Ports (z.B. Emails werden normalerweise an einen Mailserver über Port 25 geschickt). Eine sehr einfache Server-Anwendung ist ein Echo-Server. Dieser antwortet auf die Anfrage eines Echo-Clients, indem er die gesendete Anfrage genauso zurückschickt (wie ein echtes Echo). Würde der Server diese Anfrage nicht nur an den einen Client, sondern an alle angemeldete Clients schicken, hätte man ein Chat-Server. Der Echo-Server ist also ein vereinfachter Chat-Server und dient hier nur Testzwecken. AUFGABE 3: Laden Sie das Netz aufgabe3.fls. Installieren Sie auf einem Rechner einen Echo-Server und starten Sie ihn. Achtung: Das Abhören des Ports muss im Serverprogramm durch den „Starten“-Button gestartet werden. Installieren Sie auf den Laptops den Echo-Client und verbinden Sie diesen mit dem Server. Testen Sie die Kommunikation mit dem Server. Klappt die Verbindung? Wer nimmt zuerst Verbindung auf, wer antwortet? Können mehrere Clients mit einem Server verbunden sein? Kann ein Client mit mehreren Servern verbunden sein? Ändern Sie den Port auf dem der Server Anfragen erwartet. Testen Sie die Kommunikation erneut. Tipp: Wenn die Kommunikation nicht klappt, führen Sie erneut eine Kontrolle der Netzwerkkonfiguration durch. Kontrollieren Sie auch, ob Sie keine Firewall auf dem Rechner installiert haben. Schaller (28.12.10) Seite 8 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Internet: Verbinden mehrerer Netze mit Routern Im Unterschied zu einem lokalen Netz sind im Internet viele Netze miteinander verbunden. Der Datenaustausch soll auch zwischen diesen Netzen möglich sein. Jedes Netz hat aber seinen eigenen IP-Adressbereich und seine eigene Subnetzmaske. Daher benötigt man einen Vermittlungsrechner, der mehrere Netzwerkkarten hat. Jede Netzwerkkarte gehört dann zu einem der Netze, die verbunden werden sollen. Einen Vermittlungsrechner konfigurieren Im Entwurfsmodus muss daher der Vermittlungsrechner entsprechend konfiguriert werden. Die IP-Adresse der Netzwerkkarte 1 muss aus dem IP-Bereich des ersten Netzes stammen und dessen Subnetzmaske muss hier eingetragen werden. Entsprechend muss die Netzwerkkarte 2 eingestellt werden. Es ist dabei entscheidend, mit welchem Netz die Netzwerkkarte 1 und die Netzwerkkarte 2 verbunden sind. Der Namen des entsprechenden Switches wird bei „Verbunden mit“ angezeigt und das Kabel in der Netzwerkdarstellung farblich hervorgehoben. Wenn die Zuordnung nicht korrekt ist, kann die Zuordnung unter „Schnittstellen verwalten“ geändert werden. Schaller (28.12.10) Seite 9 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Kabel können vertauscht werden, indem die beiden Schnittstellen nacheinander angeklickt werden. Es ist auch möglich weitere Netzwerkkarten/Schnittstellen hinzuzufügen. Damit der Einbau eines Vermittlungsrechners etwas bewirkt, müssen die anderen Rechner im Netzwerk wissen, dass es einen Vermittlungsrechner (Gateway) gibt, der alle Daten weiterleitet, die nicht ins eigene Netzwerk geschickt werden. Daher muss die IP-Adresse der Netzwerkkarte des Vermittlungsrechners unter Gateway bei jedem Computer eingetragen werden. Die Gatewayeinstellung des Vermittlungsrechners bleibt leer, da diese nur benötigt wird, wenn es weitere Vermittlungsrechner im Netzwerk gibt und der Vermittlungsrechner Daten an diese weiterleiten soll. Die Weiterleitungstabelle (routing table) wird nach korrekter Einrichtung der Netzwerkkarten automatisch angepasst. Sie zeigt, über welche Schnittstelle eintreffende Daten weitergeleitet werden. Diese Routingtabelle wird immer von oben nach unten nach einem passenden Eintrag durchsucht. z.B. alle Daten an IP-Adressen aus dem Bereich 192.168.1.0 / 255.255.255.0, d.h. von 192.168.1.0 – 192.168.1.255 werden über die Netzwerkkarte (Schnittstelle) mit der IP-Adresse 192.168.1.15 gesendet. Anmerkung: Die IP-Adresse 127.0.0.1 hat eine besondere Bedeutung und bezeichnet immer das eigene Gerät/Rechner (localhost). Mehrere Vermittlungsrechner Solange man nur einen Vermittlungsrechner betreibt, muss die Routingtabelle nicht von Hand angepasst werden. Auch der Eintrag Gateway unter Allgemein kann leer bleiben. Es gibt keinen weiteren Router der dort eingetragen werden müsste. Ist ein Netz über zwei oder mehr Router mit weiteren Netzen verbunden, erfordert dies eine genauere Konfiguration: Werden nur zwei Router verwendet, kann die IP-Adresse des jeweils anderen Routers unter Gateway eingetragen werden. Dadurch wird in der Routingtabelle ganz am Ende ein Eintrag hinzugefügt, der Daten an beliebige IP-Adressen (0.0.0.0 / 0.0.0.0) an den zweiten Vermittlungsrechner weiterreicht, wenn keine der anderen Regeln angewendet wurde. Dieser Routingtabelle können per Hand auch eigene Einträge hinzugefügt werden. Dies benötigt man, um in einem Netz mit drei oder mehr Vermittlungsrechnern festzulegen, welches Gateway für welchen IP-Bereich genutzt werden soll. Beachten Sie, dass die Routingtabelle von oben nach unten nach einem passenden Eintrag durchsucht wird. Schaller (28.12.10) Seite 10 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN z.B. Ziel Netzmaske Näch. Gateway Schnittstelle Bemerkung 192.168.3.0 255.255.255.0 192.168.1.15 192.168.1.14 Alle Daten für das 192.168.3.x Netz werden über den Vermittlungsrechner 192.168.1.15 gesendet. Verwendete Schnittstelle ist 192.168.1.14. 192.0.0.0 255.0.0.0 192.168.1.16 192.168.1.14 Alle Daten mit Zieladresse 192.x.x.x (außer 192.168.3.x) werden über den Vermittlungsrechner 192.168.1.16 gesendet. 0.0.0.0 0.0.0.0 192.168.1.17 192.168.1.14 Alle Daten mit beliebigem Ziel (außer 192.x.x.x) werden über den Vermittlungsrechner 192.168.1.17 gesendet. Bei diesem Verfahren wird die Routingtabelle vor der Nutzung erstellt und dann nicht mehr verändert. Dieses statische Routing-Verfahren ist heute nicht mehr üblich. Die große Ausfallsicherheit des Internets erreicht man durch dynamisches Routing, bei dem die Routingtabellen ständig neu berechnet werden und die Vermittlungsrechner sich über die beste Tabelle einigen. Dies lässt sich in Filius aber nicht simulieren. Nach dieser Konfiguration sollte die Kommunikation, die vorher innerhalb eines Netzes funktioniert hat, auch über die Grenzen eines Netzes hinweg funktionieren. Weitere Konfigurationen bei den installierten Programmen sind nicht erforderlich. AUFGABE 4: Laden Sie Aufgabe4a.fls. Verbinden Sie die beiden Netzwerke mit einem Vermittlungsrechner. Stellen Sie die Netzwerkkarten des Vermittlungsrechners so ein, dass Sie zu den beiden Netzwerken passen. Kontrollieren Sie, dass die Zuordnung der Netzwerkkarten zu den Netzwerken passt (Kabelverbindungen überprüfen). Testen Sie die Konfiguration des Netzwerkes wie in Aufgabe 1 mit der Terminalanwendung. Richten Sie je einen Echo-Server in jeden Netz ein und testen Sie mit einem Echo-Client, ob sie ihn aus dem anderen Netz erreichen. Für Experten: Laden Sie Aufgabe4b.fls. Versuchen Sie die Vermittlungsrechner in diesen Aufgaben so zu konfigurieren, dass die Kommunikation über alle Netzwerke hinweg funktioniert. Netzwerksicherheit: Firewall Sobald ein Rechner eine Verbindung zum Internet hat, ist er Gefahren durch Angriffe von außen ausgesetzt. Nach wenigen Minuten schon versuchen Angreifer Lücken im System zu finden und damit die Kontrolle über den Rechner zu übernehmen. Die Firewall ist eine Möglichkeit dieser Gefahr zu begegnen. Die Firewall auf dem Vermittlungsrechner stellt eine Schutzmauer für den Datenverkehr von außen (Internet) nach innen (lokales Netz), aber auch innen nach außen dar. Sie kann aber auch an einem einzelnen Rechner installiert sein und dort den Datenverkehr vom Computer zum Netzwerk kontrollieren. Schaller (28.12.10) Seite 11 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Wäre dieser Wall völlig undurchdringlich, so hätte man zwar einen perfekten Schutz, - leider aber auch keinen Kontakt zum Netz aller Netze. Der Wall braucht daher einen „Wächter“, der darüber entscheidet, welches Datenpaket rein und welches raus darf. Leider kann man nicht erwarten, dass es einen universalen, allwissenden Wächter gibt und zwar aus dem einfachen Grund, weil jeder Nutzer andere Ansprüche an ihn hat. Mit anderen Worten: Man muss dem Wächter Regeln mitteilen, wie er sich zu verhalten hat. Die Regeln können einen Datenaustausch explizit erlauben oder verbieten. Normalerweise wird der Datenverkehr von außen nach innen komplett verboten, wenn die Daten nicht von einem Rechner des eigenen Netzes angefordert wurden. Von dieser Regel müssen Ausnahmen definiert werden, wenn im Netz ein Serverprogramm (z.B. Webserver) betrieben wird, der von außen erreichbar sein soll. Der Datenverkehr von innen nach außen ist üblicherweise offener. Webserveranfragen, FTPServeranfragen, Timeserveranfragen und vieles mehr dürfen von innen nach außen. Es ist aber möglich einzelne Server im Internet zu sperren, um z.B. Schülern im Schulnetz nicht zu erlauben Youtube-Videos anzuschauen. Firewalls für Privatrechner bieten in der Regel die Möglichkeit, einzelnen Programmen den Zugriff auf das Netzwerk zu erlauben oder zu verbieten. In der Filius-Simulation können sowohl der Vermittlungsrechner, als auch die einzelnen Rechner/Laptops mit Firewalls ausgestattet werden. Dabei erlaubt die Firewall auf dem Vermittlungsrechner standardmäßig den kompletten Datenverkehr und kann auch nicht zwischen innen und außen unterscheiden (leider etwas unrealistisch). Es ist möglich den Zugriff auf bestimmte Absender- oder Zieladressen oder bestimmte Ports zu verbieten. Diese Firewall muss im Entwurfsmodus konfiguriert werden. Die Firewall auf den einzelnen Rechnern ist eine Softwareanwendung, die installiert werden muss. Sobald sie installiert ist, verbietet sie zunächst jeden Zugriff von außen auf den Rechner. Diese Einstellung kann zu unerwarteten Ergebnissen führen, wenn die Schüler diese Firewall unbedacht installieren und dann Serveranfragen an diesen Rechner nicht mehr weitergeleitet werden. Einzelne Ports können dann für das komplette „Internet“ oder das eigene Netz freigeschaltet werden, um Serveranwendungen zu ermöglichen. Der Datenverkehr vom Rechner ins Netz lässt sich nicht beschränken. Aufgrund der Einschränkung des Tools an dieser Stelle, lässt sich hier nur die Idee einer Firewall zeigen und keine realistische Firewall aufbauen. AUFGABE 5: Laden Sie Aufgabe5.fls a) Starten Sie auf dem Laptop den Echo-Client und auf dem Rechner im anderen Netz den Echo-Server auf Port 55555. Stellen Sie sicher, dass die Kommunikation zwischen Client und Server funktioniert. Richten Sie im Entwurfsmodus eine Firewall auf dem Vermittlungsrechner ein, die den Zugriff auf Port 55555 verbietet. Testen Sie den Echo-Client erneut. Versuchen Sie die Sperre des Ports 55555 zu umgehen, indem Sie den Echo-Server und den Echo-Client umkonfigurieren. Stellen Sie sicher, dass die Kommunikation nun wieder funktioniert. b) Installieren Sie auf dem Laptop und auf dem Echo-Server eine Firewall und konfigurieren Sie diese dann so, dass die Echo-Client-Server-Anwendung weiterhin funktioniert. Auf welchem Rechner muss ein Port freigegeben sein, auf welchem nicht? Schaller (28.12.10) Seite 12 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Internetdienste: WWW und DNS Webserver und Webbrowser installieren Um den Internetdienst WWW in Filius zu realisieren, benötigt man einen Webserver und einen Web-Browser. Diese werden auf zwei Rechnern in Netzwerk im Simulationsmodus installiert. Der Webserver muss explizit durch Drücken des „Starten“-Buttons aktiviert werden. Danach kann mit dem Web-Browser eine Standardseite vom Webserver abgerufen werden, indem als URL die IP-Adresse des Rechners mit dem Webserver angegeben wird. AUFGABE 6A: Laden Sie Aufgabe6a.fls. Installieren Sie Web-Server und Web-Browser auf zwei Rechnern und starten Sie den Webserver. Rufen Sie die Standard-Begrüßungsseite des Webservers ab. Funktioniert die Abfrage auch, wenn Sie statt der IP-Adresse den Namen des Rechners angeben? DNS-Server installieren Der Datenaustausch im Internet wird immer durch IP-Adressen geregelt. Da diese aber schlecht zu merken sind, wurde das Domain Name System entwickelt. Hierbei werden Namen für Rechner bestimmten IP-Adressen zugeordnet (z.B. www.lmz.de => 85.13.137.207). Diese Zuordnungen werden von DNS-Server verwaltet. Normalerweise ist das Domain Name System hierarchisch so geordnet, dass die übergeordneten DNS-Server immer die IP-Adressen der untergeordneten DNS-Server kennen. Es reicht daher die Zuordnung eines Namens zu einer IPAdresse auf einem der untergeordneten DNS-Server zu speichern, damit alle User im Internet diese Zuordnungen nutzen können, wenn sie einen einzigen DNS-Server kennen. Dieser muss bei der Netzwerkkonfiguration eingetragen werden. In Filius ist es leider nicht möglich, die DNS-Server hierarchisch zu verknüpfen. Es ist daher nur sinnvoll, einen einzigen DNS-Server im ganzen Netzwerk einzurichten und auf diesem die vollständige Zuordnungsliste zu speichern. Der DNS-Server kann dabei sowohl zur Namensauflösung von URLs bei Webbrowsern als auch für Emailadressen benutzt werden. Der DNS-Server kann auf einem beliebigen Rechner im Simulationsmodus installiert werden. Er muss wie alle anderen Server auch, explizit gestartet werden. Tragen Sie dann die gewünschten Zuordnungen beim DNS-Server ein. Schaller (28.12.10) Seite 13 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Wechseln Sie dann in den Entwurfsmodus und tragen sie bei allen (!) Rechnern des Netzwerks als DNS-Server die IP-Adresse des Rechners ein, auf dem Sie den DNSServer installiert haben. Danach können Sie den DNS-Server mit Hilfe des host-Befehl in einem Terminalfenster im Simulationsmodus testen. host www.gymnasium-ettenheim.de sollte hier 192.168.1.10 liefern. AUFGABE 6B: Laden Sie aufgabe6b.fls. Richten Sie auf dem Rechner mit der Bezeichnung „DNS“ einen DNS-Server ein und tragen Sie diesen DNS-Server bei der Netzwerkkonfiguration von allen Rechnern ein. Erfinden Sie einen Namen für Ihre zwei Webserver und tragen Sie die Zuordnungen im DNS-Server ein. Starten Sie den DNS-Server. Testen Sie die Einstellungen, indem Sie im Terminalfenster versuchen, die IP-Adresse zu den von Ihnen gewählten Namen mit dem host-Befehl zu ermitteln. Testen Sie die Einstellungen, indem Sie im Web-Browser als URL die von Ihnen gewählten Namen eingeben. Es sollte jetzt egal sein, ob der Web-Browser direkt mit der IP-Adresse oder mit dem Namen angesprochen wird. Beobachten Sie den Datenverkehr im Netzwerk. Gibt es einen Unterschied, wenn statt der IP-Adresse der Name des Web-Servers eingegeben wird? Fortgeschrittene Konfiguration des Web-Servers: Eigene Seiten kreieren Der Web-Server bietet die Möglichkeit eigene Webseiten zu erstellen. Dabei findet die Gestaltung der Seiten, wie bei echten Web-Servern auch, in HTML statt. Dabei stehen viele der Standard-HTML-Tags zur Verfügung (natürlich ist nicht der gesamte Sprachumfang verfügbar). Schaller (28.12.10) Seite 14 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Um die Seiten zu bearbeiten, müssen Sie auf dem Rechner mit dem Webserver den Texteditor installieren. Wenn Sie dort auf Datei>Öffnen gehen, wird ihnen ein Verzeichnis der auf diesem Rechner „gespeicherten“ Dateien angezeigt. Wechseln Sie in das Verzeichnis „webserver“. Die dort liegende index.html ist die Standard-Begrüßungsseite des Webservers. Diese können Sie nach Ihren Vorstellungen verändern. Sie können in diesem Verzeichnis auch neue HTML-Dateien erstellen. Wenn Sie diese aufrufen wollen, müssen Sie im Web-Browser die Datei wie gewohnt explizit angeben: z.B. http://www.gymnasium-ettenheim.de/seite2.html Diese Seiten können Sie untereinander und mit den Seiten anderer Webserver verlinken. Auch Bilder können in die Seite eingebunden werden. Um diese auf den virtuellen Computer zu bekommen, müssen Sie den Datei-Explorer installieren. Mit dem Datei-Explorer können Sie Dateien von ihrem echten Rechner auf den virtuellen Computer in der Filius-Simulation kopieren. Importieren Sie Bilder für Ihre HTML-Seiten in das Verzeichnis „webserver“. Sie können mit dem Datei-Explorer auch Unterverzeichnisse im Ordner „webserver“ anlegen. Dort gespeicherte Seiten müssen dann mit dem entsprechenden Verzeichnisnamen in der URL angesprochen werden: z.B. http://www.gymnasium-ettenheim.de/unterverzeichnis/seite3.html AUFGABE 6C: Installieren Sie den Texteditor auf den Rechnern mit dem Webserver. Verändern Sie die Standardbegrüßungsseiten so, dass die beiden Webserver unterschieden werden können. Testen Sie Ihre Änderungen, indem Sie die Seiten mit dem Web-Browser abrufen. Legen Sie auf einem Webserver eine zweite HTML-Seite an. Gestalten Sie diese nach Ihren Wünschen. Verlinken Sie auf der Standardbegrüßungsseite ihre neue Seite, so dass man im Browser per Mausklick zu dieser Seite wechseln kann. Für Experten: Importieren Sie ein Bild in den Webserver und erstellen Sie eine Seite mit diesem Bild. Legen Sie ein Unterverzeichnis an. Erstellen Sie in diesem Unterverzeichnis eine neue Seite und verlinken Sie diese. Schaller (28.12.10) Seite 15 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Fortgeschrittene Konfiguration des Web-Servers: Virtuelle Hosts (für Experten) Viele Webprovider (Anbieter von Webservern) haben die Web-Seiten von vielen verschiedenen Firmen oder Personen gespeichert und bieten diese auf einem einzigen Webserver an. Die Daten jedes Angebots liegen dabei in einem Verzeichnis auf dem Server. Trotzdem können die Seiten ohne Angabe eines Unterverzeichnisses abgerufen werden. Dazu muss beim Web-Server eingetragen werden, in welchem Unterverzeichnis die Daten für Anfragen an einen bestimmten Hostnamen liegen. Natürlich müssen alle Hostnamen im DNSServer eingetragen sein und auf die IP-Adresse des Web-Server verweisen. Wenn in jedem Unterverzeichnis eine Standardseite index.html liegt, sieht es für den Benutzer am Ende so aus, als gäbe es mehrere Webserver. AUFGABE 6D: Legen Sie zwei Unterverzeichnisse im Webserver-Verzeichnis an. Erstellen Sie in jedem eine kleine Begrüßungsseite und speichern Sie unter dem Namen index.html. Tragen Sie im DNS-Server zwei Namen für Ihren Webserver ein. Weisen Sie diesen Namen im Web-Server die entsprechenden Unterverzeichnisse zu. Testen Sie mit dem Webbrowser, welche Seiten Ihnen angezeigt werden, wenn Sie Ihre Webservernamen als URL eingeben. Können Sie Unterverzeichnisse in ihren virtuellen Webservern erstellen und dort Seiten hinterlegen? Internetdienste: E-Mail und DNS Maildienst installieren Um den Maildienst in Filius zu realisieren, benötigt man das Mailserver- und das E-MailProgramm. Man kann zunächst mit zwei Rechnern, einen für den Server und einen für den Client, starten und dort die Konten einrichten. Für eine realistische Anwendung sind aber mindestens zwei E-Mail-Server und E-Mailprogramme und ein DNS-Server notwendig. Installieren Sie zunächst den E-Mail-Server auf einem Rechner. Starten Sie das Serverprogramm und legen sie die Mail-Domäne fest (der Teil der E-Mailadresse nach dem @Zeichen). Richten Sie mindestens zwei Konten ein. Starten Sie dann SMTP und POP3-Server, indem Sie auf „Starten“ klicken. Erst dann ist der Mailserver betriebsbereit. Schaller (28.12.10) Seite 16 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Installieren Sie auf einem anderen Computer das E-Mail-Programm. Nach dem Starten muss zunächst das E-Mail-Konto eingerichtet werden. Wählen Sie willkürlich einen Namen für das Konto und geben Sie eines der zuvor eingerichteten E-Mail-Konten des E-Mail-Servers an. Geben Sie für den POP3 und den SMTP-Server die IP-Adresse des Mail-Servers an. Die Ports für SMTP und POP3 müssen auf den voreingestellten Werte (25 und 110) bleiben, da der Mailserver diese Ports abhört. Nun können Sie Mails an alle eingerichtete Konten verschicken und ihre eigenen Mails abrufen. Sie können auf dem E-Mail-Server kontrollieren, wie viele Mails zur Abholung bereit sind. Auf dem E-Mail-Client können Sie sich den Posteingang und die gesendeten Mails anschauen. AUFGABE 7A: Erstellen Sie ein Computernetz aus einem Rechner, einem Laptop und einem Switch. Konfigurieren Sie es so, dass die Kommunikation zwischen Rechner und Laptop funktioniert und testen Sie dieses mit dem Terminalfenster (ping). Installieren Sie auf dem Rechner den E-Mail-Server. Legen Sie die Maildomäne schule.net an. Legen Sie zwei E-Mail-Konten für Lehrer Ihrer Schule an. Installieren Sie auf dem Laptop das E-Mail-Programm. Konfigurieren Sie das Konto so, dass einer der Lehrer Mails versenden und empfangen kann. Schicken Sie eine Testmail an sich selbst und eine weitere an den zweiten Lehrer. Schicken Sie eine Testmail an beide Lehrer, indem Sie unter cc (Carbon copy) die zweite Adresse angeben. Kontrollieren Sie auf dem E-Mail-Server, ob die Mails zur Abholung bereit liegen. Rufen Sie die Mails des ersten Lehrers mit dem E-Mail-Programm ab. Kontrollieren Sie erneut, welche Mails auf dem Mail-Server bereit gehalten werden. Schaller (28.12.10) Seite 17 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN DNS-Server installieren Bisher existiert nur ein Mailserver, auf dem immerhin mehrere Konten bereitstehen. In einem realistischen Szenario muss aber der Mailserver des Absenders die Mail an den Mailserver des Empfängers weitergeben, der sie dann zur Abholung bereithält. Dazu sind also mindestens zwei Mailserver notwendig. Darüber hinaus, werden die SMTP und POP3-Server in der Regel nicht mit ihren IP-Adressen eingetragen, sondern mit symbolischen Namen (z.B. smtp.web.de). Dieser Name wird dann einer bestimmten IP-Adresse zugeordnet. Diese Zuordnungen werden von einem DNS-Server verwaltet. Normalerweise ist das Domain Name System hierarchisch so geordnet, dass die übergeordneten DNS-Server immer die IPAdressen der untergeordneten DNS-Server kennen. Es reicht daher die Zuordnung eines Namens zu einer IP-Adresse auf einem der untergeordneten DNS-Server zu speichern, damit alle User im Internet diese Zuordnungen nutzen können, wenn sie einen einzigen DNS-Server kennen. Dieser muss bei der Netzwerkkonfiguration eingetragen werden. In Filius ist es leider nicht möglich, die DNS-Server hierarchisch zu verknüpfen. Es ist daher nur sinnvoll, einen einzigen DNS-Server im ganzen Netzwerk einzurichten und auf diesem die vollständige Zuordnungsliste zu speichern. Der DNS-Server kann dabei sowohl zur Namensauflösung von URL von Webbrowsern als auch für Emailadressen benutzt werden. Der DNS-Server kann auf einen beliebigen Rechner im Simulationsmodus installiert werden. Er muss wie alle anderen Server auch, explizit gestartet werden. Tragen Sie dann die gewünschten Zuordnungen beim DNS-Server ein. Es würde auch reichen, für jeden E-Mail-Server einen Domainnamen einzutragen. Üblicherweise gibt es aber für SMTP und POP3-Server unterschiedliche Domainnamen. Schaller (28.12.10) Seite 18 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Damit die Mailserver wissen, an welche Adresse E-Mails weitergeben werden müssen, muss außerdem für jede Maildomäne der Name des SMTP-Servers angegeben werden. Damit die Rechner mit dem DNS-Server zusammenarbeiten, muss dieser in der Netzwerkkonfiguration aller Rechner angegeben werden. Wechseln Sie in den Entwurfsmodus und tragen sie bei allen (!) Rechnern des Netzwerks als DNS-Server die IP-Adresse des Rechners ein, auf dem Sie den DNS-Server installiert haben. Danach können Sie den DNS-Server mit Hilfe des host-Befehl in einem Terminalfenster im Simulationsmodus testen. host pop3.schaller.net sollte hier 192.168.0.11 liefern. AUFGABE 7B: Laden sie aufgabe7b.fls Installieren Sie auf den Rechnern Mailserver für die Mail-Domänen schule.net und regierung.de. Richten Sie Konten für einen Lehrer und einen Politiker ein. Installieren Sie auf dem Rechner mit dem Namen DNS einen DNS-Server. Konfigurieren Sie den DNS-Server so, dass die Namen pop3.schule.net, smtp.schule.net, pop3.regierung.de und smtp.regierung.de aufgelöst werden. Ordnen Sie den Mail-Domänen die richtigen SMTP-Server zu. Tragen Sie den DNS-Server auf allen Rechner in der Netzwerkkonfiguration ein. Testen Sie Ihre Konfiguration mit Hilfe des Terminalfensters und des host-Befehls. Installieren Sie auf den Laptop E-Mail-Programme und richten Sie die Konten für den Lehrer und den Politiker ein. Verwenden Sie bei der Einrichtung die symbolischen Namen und nicht die IP-Adressen der E-Mail-Server. Schicken Sie eine Mail vom Lehrer an den Politiker. Kommt Sie an? Kann der Politiker sie abrufen? Beantworten Sie die Mail. Beobachten Sie dabei den Kommunikationsverlauf im Netzwerk. Können Sie die einzelnen Schritte erklären? Schaller (28.12.10) Seite 19 / 20 INFORMATIK RP FREIBURG K O M M U N I K AT I O N IN RECHNERNETZEN Netzwerkkonfiguration mit DHCP-Server Wenn man größere Netzwerke mit Filius einrichtet, merkt man schnell wie aufwändig und fehleranfällig die Konfiguration der Netzwerkkarten der Rechner ist. Um dies zu vereinfachen, gibt es die Möglichkeit die Konfiguration automatisch vornehmen zu lassen. Sobald die Rechner gestartet werden, fragen diese dann bei einem DHCP-Server (Dynamic Host Configuration Protocol) nach, welche IP-Adresse sie verwenden sollen. Subnetzmaske, DNS-Server und Gateway werden dabei auch mit konfiguriert. Dies ist aber nur bei den Rechnern sinnvoll, die keine feste IP-Adresse haben müssen. Alle Rechner auf den Serverprogramme laufen sollen, müssen über eine feste IP-Adresse erreichbar sein, da sonst die Clients nicht wissen, an wen sie sich wenden müssen. Möchte man DHCP nutzen, muss ein Rechner die Funktion des DHCP-Servers übernehmen. Bei diesem konfiguriert man die Netzwerkkarte auf dem üblichen Weg. Gateway und DNSServer müssen gegebenenfalls auch eingetragen werden. Danach klickt man auf „DHCP-Server einrichten“ und legt fest, aus welchem IP-Bereich die vom DHCP-Server vergebenen Adressen stammen sollen. Dabei muss der IP-Bereich, der für die Konfiguration von Computern mit Serverprogrammen oder Gateways verwendet wird, ausgespart werden. Netzwerkmaske, Gateway und DNS-Server werden normalerweise aus den Einstellungen der Netzwerkkarte des DHCP-Servers übernommen, können aber auch manuell konfiguriert werden. Am Ende wird der DHCP-Server gestartet, indem der Haken bei DHCP aktivieren gesetzt wird. Bei allen Rechnern, die automatisch konfiguriert werden sollen, muss der Haken bei „DHCP zur Konfiguration verwenden“ gesetzt sein. AUFGABE 8: Laden Sie aufgabe8.fls Richten Sie auf dem Rechner mit dem Namen DHCP-Server einen DHCP-Server ein. Schauen Sie im Simulationsmodus nach, welche Anwendungen auf welchem Computer laufen sollen. Entscheiden Sie, welche der Rechner sinnvollerweise per DHCP konfiguriert werden können. Geben Sie bei den anderen die Konfiguration der Netzwerkkarten von Hand ein. An den Softwareeinstellungen im Simulationsmodus darf nichts verändert werden. Testen Sie das Netz, indem Sie den Echo-Client aufrufen und Kontakt zu echo.gymnasiumettenheim.de aufnehmen. Testen Sie dann auch, ob sie mit dem Web-Browser auf www.gymnasium-ettenheim.de zugreifen können. Schaller (28.12.10) Seite 20 / 20 INFORMATIK RP FREIBURG