Marco Burmeister
private Homepage
Seite ist auf Bewährung:
Diese Seite ist schon länger nicht mehr inhaltlich aktualisiert worden.
Der Inhalt scheint mir inzwischen größtenteils nicht mehr benötigt zu werden.
Ein Linux System kann auch als Router für Internet-Zugänge aus dem eigenen Netz dienen. Wenn dies mittels Einwahlverbindung geschieht, die bei jedem Zugriff ggfs. neu aufgebaut wird, so spricht man von Dial-on-Demand. Dieses Dokument beschreibt eine mögliche Konfiguration eines solchen Routers unter SuSE Linux 6.2 und 7.0 unter Verwendung von diald.
Die Seite ist in die folgenden Bereiche eingeteilt:
Hinweis:
Die Nutzung der hier geschilderten Anleitung geschieht auf eigene Gefahr!
Der folgende Text erläutert die Installation eines Dial-on-Demand bzw. Dial-out - Servers auf Basis eines Modems. Als Provider für die Einwahl dient in diesem Beispiel T-Online.
Jede Anfrage von Rechnern aus dem Netz, die nicht in das eigene Netz gehören, wird durch diesen Dial-out-Server nach der Einwahl beim Provider in das Internet geleitet.
Die folgende schematische Darstellung verdeutlicht das Prinzip.
Technischer Ablauf (stark verkürzte Darstellung)
Technischer Ablauf (stark verkürzte Darstellung)
Eine Anfrage, die den Linux-Dial-Out-Server (Linux-Router) erreicht (vom LAN oder
local vom Server), die eine IP-Adresse anfordert, die nicht zum eigenen LAN
gehört, wird an den Daemon diald weitergeleitet. Dieser startet den
PPP-Daemon und erhält dynamisch vom Provider eine IP-Adresse zugewiesen,
um auf das Internet zugreifen zu können. Nach dem erfolgreichen
Verbindungsaufbau wird die Anfrage an das Internet weitergeleitet.
Der Einsatz vom Masquerading ermöglicht es zum Beispiel einem Unternehmen,
dass alle Benutzer nach außen mit einer IP-Adresse im Internet Surfen.
Der außenstehende kann also nicht wissen, wieviele oder welcher Rechner aus
dem Netzwerk die Daten aus dem Internet abfragen. Intern wird durch das
Masquerading jedem Rechner das Daten-Paket zugeschickt, dass er auch
angefordert hatte.
Ich gehe davon aus, dass ein lauffähiges SuSE Linux 6.2 inklusive
erfolgreich konfigurierter Netzwerkanbindung vorliegt!
Das Masquerading (NAT = network address translation) und die Installation und
Konfiguration sind jetzt Bestandteil dieses Dokumentes und am Ende zu finden.
Hierzu ist es notwendig 3 Pakete aus den SuSE Distributionen 6.3 bzw 6.4 auch
für SuSE 6.2 zu installieren.
Ist diese Vermischung nicht erwünscht kann ich leider nur noch auf
meine Linkliste am Ende des
Dokumentes bzw. an das sehr gute Handbuch, das der SuSE Distribution beiliegt,
verweisen.
Des weiteren gehe ich davon aus, dass grundlegende Linux-Kenntnisse
vorhanden sind.
Programmversionen:
Die folgenden Einstellungen im Kernel sollten aktiviert und anschließend das Kernel neu übersetzt werden. Bei den Netzwerkkarten ist entsprechend der eingebauten Netzwerkkarte die richtige Einstellung zu treffen.
Einstellungen im SuSE Linux 6.2
Nach der Installation des PPP-Paketes und der Beispiel-Datei für PPP aus der
SuSE-Distribution, gibt es im Verzeichnis etc ein Unterverzeichnis
ppp. Des weiteren muss das Paket diald installiert sein.
Die Konfigurationsdateien diald.conf und diald.defs aus dem
Verzeichnis /etc müssen nicht verändert werden, um die
erwünschte Funktionalität zu erhalten. Erst bei tieferen Kenntnissen
sollten diese an eigene Bedürfnisse angepasst werden.
In dem Verzeichnis /etc/ppp sind die folgenden Dateien zu bearbeiten
bzw. zu erstellen:
Datei | Beschreibung |
---|---|
pap-secrets |
In eine Zeile den Benutzernamen (Login-Namen), dann ein '*' und zum Schluß
das Paßwort, durch ein [TAB] getrennt, eingeben. Da diese Datei Paßworte enthält, sollte nur der Benutzer root Zugriff auf sie haben! |
ppp.chat |
Die Datei ppp.chat ist neu anzulegen, kann aber auch ein Link auf eine
bestehende Datei darstellen. Sie dient später der eigentlichen Verbindungsaufnahme beim Provider, also T-Online. Vor der Benutzung ist der Eintrag [3 Plus-Zeichen] durch drei echte Plus-Zeichen zu ersetzen. Die umständliche Schreibweise rührt daher, dass mein FTP-Programm beim Vorhandensein dieser Zeichen, diese HTML-Seite nicht uploaden wollte und die Verbindung zum Provider beendete. Ferner ist eventuell der Initialisierungsstring an das verwendete Modem anzupassen.
|
ip-up |
Die Datei ip-up ist neu anzulegen bzw. eine vorhandene Datei zu
ergänzen. Enthalten muss diese Datei möglichst als erste auszuführende Anweisung den u.a. Befehl zum Verbinden der Firewall mit dem Dial-Out-Interface (nur wenn Firewall eingerichtet (s.u.) und erwünscht). Wenn in der Datei nicht bereits vorhanden sollte auch die Default-Route hier auf das ppp-Device gesetzt werden.
|
ppp-down |
Wenn nicht vorhanden sollte diese Datei auch erstellt werden, da hiermit eine
bestehende PPP-Verbindung unterbrochen werden kann. Darum sollte auch nur der
Benutzer root diese ausführen können.
|
options |
Wenn nicht vorhanden sollte diese Datei erstellt werden. Es werden hiermit
Parameter an den PPP-daemon übergeben. Der Parameter idle steht für die Zeit, die die Verbindung zum Provider aufrechterhalten wird, auch wenn keine Daten über die Leitung gehen. Steht der Parameter z.B. auf 500, so wird die Leitung zum Provider beendet, wenn 500 Sekunden lang keine Daten über die Leitung gehen. Weitere Parameter sind in der Man-Page zu PPP zu finden.
Weitere empfehlenswerte Einstellungen:
(Die genaue Bedeutung bitte ich der Man-Page zu entnehmen.)
|
In dem neu zu erstellenden Verzeichnis /etc/ppp/diald ist die folgende
Datei zu bearbeiten bzw. zu erstellen:
Datei | Beschreibung |
---|---|
diald.options |
Die Datei diald.options ist neu anzulegen, kann aber auch ein Link auf
eine bestehende Datei darstellen. Sie dient später beim Aufruf von diald der Übermittlung weiterer Einstellungen, die auch beim Aufruf von diald per Kommando-Zeile übergeben werden könnten. Vor der Benutzung ist der Eintrag [Benutzerkennung] durch die für den PPP-Zugang bei T-Online notwendige Angabe des Benutzers zu ersetzen (Infos siehe: Albert Rommel im Bereich Insider). Die Anführungszeichen sollten beibehalten werden.
|
Nun sind im Verzeichnis /sbin/init.d das folgende Startscript für
den diald und entsprechende symbolische Links zum Aufruf des selben
zum Startzeitpunkt des Systems in den Verzeichnissen rc*.d zu erstellen:
Datei | Beschreibung |
---|---|
diald |
Diese Datei sorgt dafür, dass der diald-Daemon beim Hochfahren des
Systems automatisch gestartet wird. Das Dial-on-Demand ist dann einsatzbereit.
Die Rechte sind so gesetzt, dass nur der Benutzer root sie ausführen kann. Die Variable START_FIREWALL sollte eigentlich durch eine nur für den diald zur Verfügung stehende ersetzt werden. Da bei meinem System aber immer beides gestartet werden soll, nutze ich diese Variable auch an dieser Stelle.
|
Als letztes ist im Verzeichnis /etc in der folgende Konfigurationsdatei
der aufgeführte Eintrag entsprechend zu setzen:
Datei | Beschreibung |
---|---|
rc.config |
Der Eintrag sorgt dafür, dass die Datenpakete, die das Wählen
angestoßen haben, auf das neue Interface umgelenkt werden.
|
Darüber hinaus sollte der Nameserver (IP-Adresse: 194.25.2.129) von T-Online im Linux-System definiert werden. Das sollte am besten mit dem Tool yast geschehen.
Installation und Konfiguration der Firewall und des Masquerading
Zunächst sind die folgenden Pakete aus dem Bereich Download->Updates der
SuSE Homepage für die SuSE Distributionen 6.3 oder 6.4 zu besorgen und zu
installieren:
- firewals.rpm
- ipchains.rpm
- ipfwadm.rpm
Insbesondere das Firewall-Paket ist wichtig, da bei meiner SuSE 6.2 das vorhandene
Paket nicht so wollte, wie ich.
Im Verzeichnis /etc/rc.config.d befindet sich nun eine Konfigurationsdatei
namens firewall.rc.config.
Diese Datei ist eigentlich selbsterklärend. Nach der erfolgreichen
Konfiguration kann der Rechner neu gestartet werden und die (rudimentäre)
Firewall ist einsatzbereit. Gleichzeitig ist damit das Masquerading ebenfalls
eingerichtet.
An anderen Stellen dieses Dokumentes findest Du die Hinweise, was bei der
Konfiguration der Firewall noch zu beachten ist. So muss z.B. in der
Datei /etc/ppp/ip-up ein Eintrag eingefügt werden, damit die Firewall
beim Aufbau der PPP-Verbindung aktualisiert wird.
WICHTIG: Es erscheinen einige Fehlermeldungen beim Start, die aber normalerweise
zu ignorieren sind, da die Firewall sich nur beschwert, dass das Dial-Out
Interface noch nicht aufgebaut ist (kann ja auch nicht, da noch keine Wahl in
das Internet erfolgen soll).
Protokollieren der Verbindungsaufnahme zum Provider
Im Verzeichnis /etc/ppp sind in der Datei ip-up (ip-down) in Abhängigkeit vom verwendeten Device im Bereich ppp* oder ippp* die folgenden Einträge zu ergänzen:
/etc/ppp/diallog WAHL
/etc/ppp/diallog AUFL
Datei | Beschreibung |
---|---|
diallog |
Das u.a. Skript schreibt in die Datei /var/log/diallogging.log die
Informationen, wann der Dial-On-Demand - Mechanismus einen Verbindungsaufbau zum
Provider durchgeführt hat.
Dafür muss dem Skript für den Benutzer und die Gruppe root bzw. dialout
die Ausführungsberechtigung gegeben werden. Protokolliert wird nur der Zeitpunkt (Uhrzeit und Datum) an dem eine Verbindung zum Provider etabliert wurde und wann diese wieder getrennt wurde.
|
Die folgende Liste zeigt, welche Rechte die Dateien haben sollten, damit ein
problemloser Betrieb gewährleistet werden kann:
/etc/ppp
drwxr-x--- 6 root root 1024 Aug 2 22:43 .
drwxr-xr-x 27 root root 4096 Aug 3 21:51 ..
lrwxrwxrwx 1 root root 11 Apr 21 22:44 default -> ppp.chat
drwxr-xr-x 2 root root 1024 Aug 2 22:45 diald
-rwxr-x--- 1 root root 477 Jun 11 19:47 diallog
lrwxrwxrwx 1 root root 5 Apr 21 16:07 ip-down -> ip-up
-rwxr-x--- 1 root root 4812 Jun 11 19:16 ip-up
-rw-r----- 1 root root 6392 Apr 22 10:31 options
lrwxrwxrwx 1 root root 7 Apr 21 22:42 options.ppp0 -> options
-rw------- 1 root root 301 Aug 9 1999 pap-secrets
-rwxr-xr-x 1 root root 527 Aug 28 1999 ppp-down
-rwxr-xr-x 1 root root 747 Apr 21 22:58 ppp-up
-rw-r----- 1 root root 141 Aug 9 1999 ppp.chat
/etc/ppp/diald
drwxr-xr-x 2 root root 1024 Aug 2 22:45 .
drwxr-x--- 6 root root 1024 Aug 2 22:43 ..
-rw-r----- 1 root root 748 Apr 22 13:44 diald.options
/sbin/init.d
drwxr-xr-x 11 root root 2048 Jun 9 20:45 .
drwxr-xr-x 5 root root 3072 Jun 25 22:42 ..
-rwxr----- 1 root root 542 Apr 21 21:25 diald
/etc/rc.config.d (nur Firewall-Konfiguration)
drwxr-xr-x 3 root root 1024 Jul 2 21:36 .
drwxr-xr-x 27 root root 4096 Aug 3 21:51 ..
-rw-r----- 1 root root 17548 Jul 2 21:36 firewall.rc.config
Einstellungen beim Client im eigenen Netz (LAN)
Der Linux-Dial-Out-Server muss als Default-Gateway mit seiner IP-Adresse eingetragen sein.
Zeitserver für das interne Netz
Um den Router auch als Zeitserver (NTP-Server) für das interne Netzwerk zu nutzen, müssen nur die u.a. Zeilen in die Datei ip-up eingetragen werden (gleich unter die anderen Anpassungen).
# Zeit sychronisieren
/usr/sbin/netdate -v ptbtime2.ptb.de
/sbin/clock -w
Dann wird der Einwahlrouter bei jeder Einwahl die eigene Rechner-Uhrzeit mit der
Atomuhr der
Physikalisch-Technischen Bundesanstalt
abgleichen.
@echo off
net time [Name Einwahlrouter] /set /yes
Der String [Einwahlrouter] ist durch den Rechnernamen in der Form
\\einwahlroutername zu ersetzen. Diese Batch-Datei kann in der Autostart
bei jedem Rechnerstart aufgerufen werden und gleicht dann die Uhrzeit des Client
mit der des Einwahlrouters ab.
Links zum Thema Dial-on-Demand
Hinweis:
Für die Richtigkeit der Daten übernehme ich keine Gewähr!
Für den Inhalt von Internet-Seiten, auf die von dieser Seite verwiesen wird, übernehme ich keine Verantwortung!
Marco Burmeister, Copyright © 2007 - 2022
zuletzt geändert: 2021-02-28
URL: https://www.marco-burmeister.de/helferlein/de_dial_on_demand_diald.html
Impressum