Netzwerkanalyse, Fehlersuche, Testberichte
Home / News
Netzwerkanalyse
Grundlagen
Verkabelung
Erste Schritte
Baselining
Let's sniff
Tools
Auswerten/Filtern
Typische Probleme 1
Typische Probleme 2
Sicherheit
Bücher
Tutorials
Cacti
DSL einrichten
DynDNS einrichten
m0n0wall | pfSense
Nmap
VirtualBox
Wireshark
Forum
Shop
FAQ
Know How
Testberichte
Hardware-DB
Events
Netzwerklexikon
Links / Service
Suche
Kontakt
Impressum
Feedback
Sitemap
Partner
Unser Partner für
SSL Zertifikate
ist Checkdomain GmbH.
Know How

Einsatz von PPPoE bei DSL

Fast alle deutschen Internetanbieter nutzen das Protokoll PPPoE für die Authentifizierung an ihren DSL-Zugängen. PPPoE steht für PPP over Ethernet. Die PPP-Daten werden innerhalb der Nutzdaten des Ethernet-Frames übertragen. Dazu werden 8 Bytes benötigt. Dadurch verringert sich die MTU beim Einsatz von PPPoE auf 1492 Bytes.

Der Aufbau der PPP-Session erfolgt entweder durch einen Router oder über eine DFÜ-Verbindung. Auf Seiten des Providers wird die Session am Broadband Remote Access Server (BRAS) terminiert. Dieser wird auch als DSL Access Concentrator (DSL-AC) bezeichnet.

Aufbau einer PPPoE-Session

Für den Aufbau einer Session tauchen der DSL-Router und der DSL-AC unterschiedliche Frames aus. Der Vorgang beginnt mit einem PPPoE Discovery (PPPoED). Dazu sendet der Router ein PADI.

PADI - PPPoE Active Discovery Initiation

Der PADI-Frame wird als Broadcast versendet. Ein möglicher Parameter im PADI ist der Service Name. Dieser wird unter Umständen vom Provider vorgegeben, ist aber in der Regel leer.

Ethernet II, 
    Src: Netgear_cf:7f:45 (00:09:5b:cf:7f:45), 
    Destination: Broadcast (ff:ff:ff:ff:ff:ff)
    Type: PPPoE Discovery (0x8863)
PPP-over-Ethernet Discovery
    0001 .... = Version: 1
    .... 0001 = Type: 1
    Code: Active Discovery Initiation (PADI) (0x09)
    Session ID: 0x0000
    Payload Length: 4
PPPoE Tags
    Service-Name: 

Empfängt ein BRAS bzw. DSL-AC einen gültigen PADI-Frame, sollte er mit einem PADO antworten.

PADO - PPPoE Active Discovery Offer

Im PADO sendet der DSL-AC seinen Namen und einen Cookie als eindeutige Kennung für diese Session.

Ethernet II,
    Src: Unispher_a0:52:4f (00:90:1a:a0:52:4f), 
    Dst: Netgear_cf:7f:45 (00:09:5b:cf:7f:45)
    Type: PPPoE Discovery (0x8863)
PPP-over-Ethernet Discovery
    0001 .... = Version: 1
    .... 0001 = Type: 1
    Code: Active Discovery Offer (PADO) (0x07)
    Session ID: 0x0000
    Payload Length: 38
PPPoE Tags
    AC-Name: BERX45-erx
    Service-Name: 
    AC-Cookie: 3BDEE8D04019B78D0C8FBAB945D96FB5

Es können auch mehrere DSL-AC auf einen PADI antworten.

PADR - PPPoE Active Discovery Request

Der Client wählt ein PADO aus und antwortet mit einem PADR. Der PADR wird an die MAC-Adresse des DSL-AC gesendet.

Ethernet II, 
    Src: Netgear_cf:7f:45 (00:09:5b:cf:7f:45),
    Destination: Unispher_a0:52:4f (00:90:1a:a0:52:4f)
    Type: PPPoE Discovery (0x8863)
PPP-over-Ethernet Discovery
    0001 .... = Version: 1
    .... 0001 = Type: 1
    Code: Active Discovery Request (PADR) (0x19)
    Session ID: 0x0000
    Payload Length: 24
PPPoE Tags
    AC-Cookie: 3BDEE8D04019B78D0C8FBAB945D96FB5
    Service-Name: 

In der Antwort ist auch der AC-Cookie enthalten.

PADS - PPPoE Active Discovery Session Confirmation

Der DSL-AC bestätigt die Session mit einem PADS.

Ethernet II, 
    Src: Unispher_a0:52:4f (00:90:1a:a0:52:4f),
    Destination: Netgear_cf:7f:45 (00:09:5b:cf:7f:45)
    Type: PPPoE Discovery (0x8863)
PPP-over-Ethernet Discovery
    0001 .... = Version: 1
    .... 0001 = Type: 1
    Code: Active Discovery Session-confirmation (PADS) (0x65)
    Session ID: 0x1b2b
    Payload Length: 38
PPPoE Tags
    Service-Name: 
    AC-Name: BERX45-erx
    AC-Cookie: 3BDEE8D04019B78D0C8FBAB945D96FB5

Damit ist die PPPoE-Session aufgebaut.

PADT - PPPoE Active Discovery Termination

Beide Seiten können die Session mit einem PADT beenden.

PPP Link Control Protocol (LCP)

Im weiteren Verlauf tauschen Router und DSL-AC über PPP LCP Informationen aus. Hier teilt der Router seine MRU von 1492 Bytes mit.

Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Configuration Request (0x01)
    Identifier: 0x00
    Length: 14
    Options: (10 bytes)
        Maximum Receive Unit: 1492
        Magic number: 0x02d385a7

Der DSL-AC bestätigt:

Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Configuration Ack (0x02)
    Identifier: 0x00
    Length: 14
    Options: (10 bytes)
        Maximum Receive Unit: 1492
        Magic number: 0x02d385a7

Danach informiert der DSL-AC den Router über sein Authentication Protocol. In diesem Fall ist es das unverschlüsselte PAP. Alternativ könnte hier CHAP genutzt werden.

Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Configuration Request (0x01)
    Identifier: 0xe1
    Length: 18
    Options: (14 bytes)
        Maximum Receive Unit: 1492
        Authentication protocol: 4 bytes
        Authentication protocol: Password Authentication Protocol (0xc023)
        Magic number: 0x198dd8d2

Der Router bestätigt die Nutzung von PAP.

Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Configuration Ack (0x02)
    Identifier: 0xe1
    Length: 18
    Options: (14 bytes)
        Maximum Receive Unit: 1492
        Authentication protocol: 4 bytes
        Authentication protocol: Password Authentication Protocol (0xc023)
        Magic number: 0x198dd8d2

Benutzeranmeldung mit PAP

Im nächsten Schritt meldet sich der Router mit den Zugangsdaten beim Provider an.

Point-to-Point Protocol
    Protocol: Password Authentication Protocol (0xc023)
PPP Password Authentication Protocol
    Code: Authenticate-Request (0x01)
    Identifier: 0x01
    Length: 54
    Data (50 bytes)
        Peer ID length: 40 bytes
            Peer-ID (40 bytes)
        Password length: 8 bytes
            Password (8 bytes)

In diesem Frame werden die Benutzerkennung und das Kennwort im Klartext übertragen. Der Provider bestätigt die gültige Anmeldung mit einem Authenticate-Ack.

Point-to-Point Protocol
    Protocol: Password Authentication Protocol (0xc023)
PPP Password Authentication Protocol
    Code: Authenticate-Ack (0x02)
    Identifier: 0x01
    Length: 5
    Data (1 byte)

Ist die Kombination aus Benutzername und Passwort ungültig, enthält die Anwort ein Authenticate-Nak (Code 3).

PPP Internet Protocol Control Protocol (IPCP)

Nach erfolgreicher Anmeldung bekommt der Router eine IP-Adresse und die Adressen von DNS-Servern mitgeteilt. Im folgenden Beispiel fordert der Netgear Router die IP-Adresse 0.0.0.0 an. Im zweiten Frame wird diese Anforderung abgelehnt (Configuration Nak) und dabei die gültigen Daten übertragen. Diese neuen Daten werden dann nochmals angefordert und bestätigt.

Ethernet II, 
    Src: Netgear_cf:7f:45 (00:09:5b:cf:7f:45), 
    Dst: Unispher_a0:52:4f (00:90:1a:a0:52:4f)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: IP Control Protocol (0x8021)
PPP IP Control Protocol
    Code: Configuration Request (0x01)
    Identifier: 0x02
    Length: 22
    Options: (18 bytes)
        IP address: 0.0.0.0
        Primary DNS server IP address: 0.0.0.0
        Secondary DNS server IP address: 0.0.0.0


Ethernet II, 
    Src: Unispher_a0:52:4f (00:90:1a:a0:52:4f), 
    Dst: Netgear_cf:7f:45 (00:09:5b:cf:7f:45)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: IP Control Protocol (0x8021)
PPP IP Control Protocol
    Code: Configuration Nak (0x03)
    Identifier: 0x02
    Length: 22
    Options: (18 bytes)
        IP address: 84.189.141.54
        Primary DNS server IP address: 217.237.151.51
        Secondary DNS server IP address: 217.237.149.205


Ethernet II, 
    Src: Netgear_cf:7f:45 (00:09:5b:cf:7f:45), 
    Dst: Unispher_a0:52:4f (00:90:1a:a0:52:4f)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: IP Control Protocol (0x8021)
PPP IP Control Protocol
    Code: Configuration Request (0x01)
    Identifier: 0x03
    Length: 22
    Options: (18 bytes)
        IP address: 84.189.141.54
        Primary DNS server IP address: 217.237.151.51
        Secondary DNS server IP address: 217.237.149.205


Ethernet II, 
    Src: Unispher_a0:52:4f (00:90:1a:a0:52:4f), 
    Dst: Netgear_cf:7f:45 (00:09:5b:cf:7f:45)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: IP Control Protocol (0x8021)
PPP IP Control Protocol
    Code: Configuration Ack (0x02)
    Identifier: 0x03
    Length: 22
    Options: (18 bytes)
        IP address: 84.189.141.54
        Primary DNS server IP address: 217.237.151.51
        Secondary DNS server IP address: 217.237.149.205

Ab dieser Stelle ist ein Zugriff auf das Internet möglich.

LCP Echo

Einige Router nutzen einen LCP Echo Request um die Verbindung in bestimmten Abständen zu überprüfen. Dieser wird vom DSL-AC mit einem Echo Reply beantwortet.

Ethernet II, 
    Src: Netgear_cf:7f:45 (00:09:5b:cf:7f:45), 
    Dst: Unispher_a0:52:4f (00:90:1a:a0:52:4f)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Echo Request (0x09)
    Identifier: 0x05
    Length: 8
    Magic number: 0x02d385a7


Ethernet II, 
    Src: Unispher_a0:52:4f (00:90:1a:a0:52:4f), 
    Dst: Netgear_cf:7f:45 (00:09:5b:cf:7f:45)
PPP-over-Ethernet Session
Point-to-Point Protocol
    Protocol: Link Control Protocol (0xc021)
PPP Link Control Protocol
    Code: Echo Reply (0x0a)
    Identifier: 0x05
    Length: 8
    Magic number: 0x198dd8d2

Fragen?

Hilfe bei DSL-Problemen finden Sie im Netzwerkforum. Die Beispiele in diesem Artikel wurden mit Wireshark aufgezeichnet. Die entsprechenden Grundlagen vermittelt Ihnen mein Wireshark Tutorial.

 

 
© 2004-2015, network lab - we make your net work - Netzwerkforum
aktualisiert am 22.03.2012