PEPA Version 1.9, ein Packet Driver
für xDSL mit PPPoverEthernet Zugang

Okt. 2001
Copyright Herbert Hanewinkel, Neuried

Übersicht

PEPA ist ein ethernet-type (class=1) Packet-Driver (nach ftp Spezifikation) für xDSL mit PPPoverEthernet (RFC2516) Zugangsprotokoll. PEPA wurde für den Aufbau von low-cost Internet Routern mit ka9q oder PCROUTE entwickelt.

PEPA benötigt selbst einen Ethernet packet driver als Basis. Damit ist PEPA selbst unabhaängig von der verwendeten Hardware. PEPA ist als ein MS-DOS TSR Programm implementiert.
PEPA untersützt PPP mit PAP or CHAP Authentifizierung und DNS Umlenkung. Zusätzlich enthält PEPAM.EXE IP-masquerading zur LAN Anbindung unter einer IP-Adresse. Zur Optimierung der Verbindungszeiten sind Abbau nach Leerlauf und Shorthold Modus implementiert.

PEPA wurde mit dem xDSL Zugang der Deutschen Telekom (T-DSL) getestet.

Registrierung

PEPA ist Shareware
Die Ihnen vorliegende PEPA Version ist eine begrenzt funktionsfähige Testversion.
Zur unbegrenzten Nutzung der PEPA Software ist eine Registrierung erforderlich.
Einzelheiten zur Registrierung finden Sie in den Dateien BESTELL.TXT (Englische Version: ORDER.TXT).
Sie erhalten das Recht PEPA bis zu 30 Tagen zu testen. Solange PEPA nicht registriert läuft, stellt die Software den Datentransfer 30 Min nach dem Programmstart ein.

Urheberrecht

Das Programm und die Dokumentation sind urheberrechtlich geschützt.
  Copyright (C) 1999-2001 Herbert Hanewinkel, Neuried
  Alle Rechte vorbehalten.

Die Software wird als sogenannte "Shareware" mit den nachfolgenden Einschränkungen angeboten:
Software und Dokumentation sind urheberrechtlich geschützt.
Die unregistrierte Softwareversion von PEPA darf ausschliesslich in der Originalform (unverändertes zip Archiv) kopiert und weiter verbreitet werden. Es dürfen keine Dateien des zip-Archives entfernt, modifiziert oder dem Archiv hinzugefügt werden.
Für die Software darf kein Entgelt erhoben werden, ausser einer Gebühr für das Distributionsmedium selbst.
Die Software darf weder zurückentwickelt noch verändert werden.
Jegliche Weitergabe als Bestandteil oder zusammen mit anderer zum Verkauf bestimmter Softwarepakete bedarf der ausdrücklichen schriftlichen Zustimmung des Autors.

Für die Funktionsfähigkeit der Software kann keinerlei Garantie übernommen werden. Für direkte oder indirekte Schäden und materielle Verluste, die aus dem Gebrauch der Software entstehen, wird keine Haftung übernommen.

Installation

PEPA benötigt für den Betrieb eine Konfigurationsdatei mit Ihren PPP Zugangsinformationen, wie sie im nachfolgenden Abschnitt Konfiguration beschrieben ist. Der Standardname für die Konfigurationsdatei ist PEPA.INI.

PEPA.EXE kann mit den nachfolgenden Parametern geladen werden.
(Parameter in [] sind optional)

PEPA RegCode [PacketInterrupt [ConfigFile]]

RegCode ist der Schlüssel, den Sie mit der Registrierung von PEPA erhalten. Solange Sie PEPA nicht registriert testen, können Sie stattdessen ein ? als Platzhalter verwenden. Ohne Registrierung stellt PEPA nach 30 min die Datenübertragung ein.

PacketInterrupt spezifiziert den Software Interrupt für die Packet Driver Anwendung. Ohne Vorgabe wird der Interrupt 0x60 verwendet.

ConfigFile spezifiziert den Namen der Konfigurationsdatei. Der Standardname für die Konfigurationsdatei ist PEPA.INI. Die Konfigurationsdatei ist eine lesbare Textdatei und kann mit einem Editor erstellt werden. Das Format der Konfigurationsdatei ist im Abschnitt Konfiguration beschrieben.

Deinstallation

PEPA kann mit dem Programm TERMIN.EXE aus der Clarkson/Crynwr Packet Driver Sammlung wieder aus dem Speicher entfernt werden.

Konfiguration

Globale Optionen

Servicespezifische Optionen

-p
Point-to-Point Protokoll mit Standard PPP-Parametern über HDLC. Auf der PPP-Netzwerk Schicht ist nur IP implementiert. Es werden folgende PPP Optionen von der Gegenseite akzeptiert:
LCP MRU Option mit Werten >= 1500.
IPCP IP-Adresse.
IPCP DNS-Adresse.
IPCP TCP-header Kompression (optional).
Zur Authentifizierung werden PAP und CHAP in beiden Richtungen unterstützt.
-n Kennung,Passwort
-n Kennung'Passwort
Zur Spezifikation einer Kennung/Passwort Kombination zur Identifizierung bei der Gegenstelle. Die Identifizierung wird nur durchgeführt, wenn sie von der Gegenstelle angefordert wird. Nach , wird ein Passwort im Klartext erwartet, nach ' ein mit ENCPASS verschlüsseltes Passwort angenommen.
-g Kennung,Passwort
-g Kennung'Passwort
Mit dieser Option wird eine lokale Kennung/Passwort Kombination festlegt mit der sich die Gegenstelle identifizieren muß. Die PPP Verbindung wird nur dann aufgebaut, wenn die Gegenstelle sich mit der korrekten Kennung/Passwort Kombination meldet. Nach , wird ein Passwort im Klartext erwartet, nach ' ein mit ENCPASS verschlüsseltes Passwort angenommen.
Es können pro Verbindungseintrag mehrere Kennung/Passwort Kombinationen eingetragen werden.
-c
Das Standard Authentifierungsprtokoll ist PAP. Eine Authentifizierung über CHAP ist bei den Plus Versionen mit dieser Option einstellbar.
-v
van-Jacobson-TCP header Kompression.
-e
überwacht die Verbindung mit lcp echo requests. Es wird ein Paket pro Sekunde gesendet. Nach 10 Sekunden ohne Antwort wird die Verbindung beendet.
-z
die IP-Adresse wird nach jeder Verbindung wieder gelöscht. Ohne die Option fordern die Programme bei einem erneuten Verbindungsaufbau wieder die vorherige IP-Adresse mit der IPCP IP-address Option an.
-t max-idle[,min-idle]
eine nicht mehr benutzte Verbindung wird nach "max-idle"-Sekunden abgebaut. Ist "max-idle" gleich 0, wird die Verbindung NICHT automatisch beendet.
Mit dem 2. Paramter wird ein dynamischer, zeitabhängiger Verbindungsabbau aktiviert. Eine Verbindung wird nach einer Mindestleerlaufzeit von "min"-idle Sekunden kurz vor der nächsten Gebühreneinheit abgebaut, d.h. die Verbindung wird solange noch aufrechtgehalten, solange sie keine weiteren Kosten verursacht. "max-idle" bestimmt bei diesem dynamischen Verbindungsabbau die Länge Gebühreneinheit.
Voreinstellung: max-idle: 300 Sekunden, min-idle: abgeschaltet
-k
Diese Option verhindert den Aufbau von Verbindungen durch Broadcast oder Netbios-Request Pakete. Ausserdem setzen diese Pakete bei bestehender Verbindung den Verbindungsabbau-"Timer" nicht zurück, d.h. wenn nur noch "Broadcast"- und Netbios-Request-Pakete gesendet werden erfolgt ein Verbindungsaufbau nach der mit -t eingestellten Leerlaufzeit.
Bei Verwendung von 0.0.0.0 als IP-Adresse werden sowohl "Broadcast"-Pakete als auch "unicast"-Pakete an die Gegenstelle gesendet. Bei eingtragener IP-Adresse ungleich 0.0.0.0 nur "unicast" Pakete. Es erfolgt in damit schon eine implizite Unterdrückung der "Broadcast"-Pakete. Zur Verhinderung von unnötigen Verbindungsaufbauten durch NETBIOS Pakete ist der Einsatz sinnvoll.
-q
sperrt NETBIOS Pakete.
-r
Empfangene Datenpakete setzen den Leerlaufzähler nicht mehr zurück.
Einige Gegnstellen senden in regelmässigen Abständen Pakete. (z.B. RIP Pakete mit Routinginformationen, ...). Diese Pakete halten ohne diese Option eine Verbindung permanent aufrecht. Mit dieser Optionen können diese Pakete empfangen werden, ohne das eine Verbindung permanent bestehen bleibt.
-u
erlaubt den Programmen auch "Broadcast"-Pakete über diese Verbindung zu senden. Wenn die IP-Adresse ungleich 0.0.0.0 ist werden ansonsten ohne diese Option nur "unicast"-Pakete für die Gegenstelle auf dieser Verbindung übertragen.
-o [ip-adresse]
aktiviert NAT (Network Address Translation) und IP-Masquerading (NAT + Port Mapping) für diese Verbindung. Die lokal konfigurierte IP-Adresse wird durch die spezifizierte oder eine dynamisch zugewiesene IP-Adresse in allen ankommenden und abgehenden IP-Pakten für diese Verbindung ersetzt. Damit kann ein LAN mit mehreren Rechner unter einer offiziellen IP-Adresse arbeiten.

Beispiel:

PEPA.INI:

-i 0x65                       # ethernet PD at 0x65
-w                            # activity display on DOS screen
-n 192.168.2.1                # locally (on local clients) used DNS nameserver
-n 192.168.2.2                #  addresses redirected to dyn. assigned addresses
#
0.0.0.0 -p -nheha,password    # PPP with remote authentication
                -k -q         # supress Broadcasts and disable NETBIOS
                -o            # NAT
                -t60,20       # unit length 60s, shorthold of 20s

KA9Q AUTOEXEC.NET:

hostname gate
ip address 192.168.2.1
#
# PPPoE has a maximum MTU of 1492 !!!
#
attach packet 0x60 tdsl 10 1492
attach packet 0x65 lan  10 1492
ifconfig tdsl ipaddr gate netmask 0xffffff00
ifconfig lan ipaddr 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
#
route add default tdsl
#

Ethernet characteristics

PEPA emuliert einen Ethernet Packet Driver. Die pseudo Ethernetadresse von PEPA is definiert als: 00-00-0xFB-0xAA-00-<pkt-int>. <pkt-int> wird dabei durch den verwendeten Packet Interrupt von PEPA festgelegt.

Falls erforderlich, kann die Ethernetadresse von PEPA mit dem Programm PKTADDR.EXE aus der Clarkson/Crynwr Packet Driver Sammlung verändert werden.

Verfügbarkeit

Die jeweils aktuelle Version von PEPA ist unter http://www.hanewin.de zu finden. Bitte senden Sie Kommentare, Anregungen und beobachtete Probleme zum Programm an mail@hanewin.de

Garantie

Für die Funktionsfähigkeit der Software kann keinerlei Garantie übernommen werden. Für direkte oder indirekte Schäden und materielle Verluste, die aus dem Gebrauch der Software enstehen, wird keine Haftung übernommen.