septembre 24, 2007 Archives

lun sep 24 16:42:24 CEST 2007

PPPoE

Le "handshake" PPPoE fonctionne enfin... M'enfin il reste des choses à faire tout de même!!!

Pour rappel :

La structure d'un trame ethernet est :

                                      1
                   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                  |       DESTINATION_ADDR        |
                  |          (6 octets)           |
                  |                               |
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                  |         SOURCE_ADDR           |
                  |          (6 octets)           |
                  |                               |
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                  |    ETHER_TYPE  (2 octets)     |
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                  ~                               ~
                  ~           payload             ~
                  ~                               ~
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                  |           CHECKSUM            |
                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
On détermine une trame PPPoE d'après le type de la trame: 0x8863 (Découverte PPPoE) et 0x8864 (Etablissement PPP). Et la dans le payload d'une trame ethernet, on se retrouve avec la structure PPPoE du type :
                     1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  VER  | TYPE  |      CODE     |          SESSION_ID           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |            LENGTH             |           payload             ~
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Bref, cela commence à sentir bon le PPP tout court :-) :
14:16:24.474241 PPPoE PADI [Service-Name] [Host-Uniq UTF8] [Relay-Session-ID UTF8]
14:16:24.474378 PPPoE PADO [AC-Name "flex"] [Service-Name "infosat"][AC-Cookie UTF8] [Relay-Session-ID UTF8] [Host-Uniq UTF8]
14:16:24.480894 PPPoE PADR [Service-Name "infosat"] [Host-Uniq UTF8][Relay-Session-ID UTF8] [AC-Cookie UTF8]
14:16:24.481448 PPPoE PADS [ses 0x15] [Service-Name "infosat"][Relay-Session-ID UTF8] [Host-Uniq UTF8]
Update : Mon Sep 24 17:42:39 CEST 2007:
Code du patch : patch-arpnat-ebtables-V0.3-debug

Pour informations les gens, le SLOB (algorythme d'allocation des pages physiques) ne fonctionne pas de manière géniale sur l'ADM5120 !

-----