Table des matières
PPPoE : Installation
Ce qu'il faut d'abord comprendre
Le cas du modem RTC
Lorsque nous installons une connexion PPP, telle que celle que nous utilisons sur une liaison série avec notre modem RTC, Il n'existe pas à proprement parler d'interface physique. Sous Windows, par exemple, nous installons le « client d'accès distant » que nous lions à notre modem, puis nous le configurons pour qu'il utilise TCP/IP pour la connexion Internet. GNU/Linux utilise le service
pppd
.
Le cas du réseau local Ethernet
Lorsque nous installons une interface Ethernet destinée à nous connecter sur un réseau local (ou sur notre connexion ADSL, si notre fournisseur adopte cette stratégie), nous installons le « driver » de la carte réseau, puis nous y associons TCP/IP. Nous configurons alors TCP/IP, soit « en dur » dans le cas d'un petit réseau local, soit de façon automatique via DHCP dans le cas d'un réseau plus complexe.
Le cas de PPPoE
Dans le cas de PPPoE, vous l'avez compris, il y a une couche de plus.
- Nous installons le « driver » de la carte réseau ;
- nous lions dessus le client PPPoE. Cette procédure peut être transparente pour l'utilisateur. Windows XP par exemple, propose un assistant qui fera les choses à votre place en vous posant quelques questions ;
- TCP/IP va venir se lier à ce client de façon plus ou moins transparente. Notez bien qu'à aucun moment, TCP/IP n'a été directement lié à Ethernet, comme c'est le cas pour le réseau local.
Nous avons donc une couche de plus et IP se « voit » sur un transport PPP, exactement comme dans le cas d'une connexion par modem RTC, et non plus directement sur un transport Ethernet. Les captures documentées sur la page « Reniflons un peu... » le montrent bien.
- Un client DHCP ne fonctionnera pas. Ce protocole n'est utilisable que sur Ethernet. Votre adaptateur réseau n'a pas besoin d'être configuré en client DHCP. Il ne doit pas l'être, sinon votre pile IP va perdre du temps à chercher un serveur DHCP qu'elle ne trouvera forcément pas.
- Pour établir la connexion, il vous faudra initier une connexion PPP, comme avec votre bon vieux modem RTC (login, mot de passe) et c'est PPP qui récupèrera alors votre IP, la passerelle par défaut et le DNS. Il n'y a plus de bail, les paramètres sont inchangés pour toute la durée de la session. Nous verrons cela dans le détail un peu plus loin, à la page « Les détails ».
Les clients PPPoE les plus courants
Aujourd'hui tous les systèmes d'exploitation proposent un client PPPoE. Pour ceux que je connais :
- GNU/Linux utilise généralement rp-pppoe de façon plus ou moins aménagée, suivant la distribution employée. Debian installe deux paquets :
- pppoe qui est un aménagement de rp-pppoe, et s'appuie sur le paquet ppp, service générique pour les connexions de type point à point ;
- pppoeconf qui porpose des outils pour configurer simplement sa connexion pppoe.
- MS Windows XP propose également un client natif.
Vous utilisez une plate-forme Win32
- démarrez l'assistant « Créer une nouvelle connexion » à partir des « connexions réseau » dans le panneau de configuration ;
- choisissez « Etablir une connexion à Internet » ;
- configurez votre connexion manuellement ;
- choisissez « Se connecter en utilisant une connexion large bande qui nécessite un nom d'utilisateur et un mot de passe » ;
- donnez un nom à votre connexion. Ce nom apparaitra dans vos connexions réseau. C'est pour vous, vous mettez ce que vous voulez ;
- Choisissez si vous voulez que cette connexion soit accessible à tous les utilisateurs ou seulement à vous. Dans ce dernier cas, les autres utilisateurs devront eux aussi configurer leur connexion ;
- remplissez le formulaire avec les informations que votre fournisseur d'accès vous a communiquées.
C'est terminé.
Vous utilisez une plate-forme Linux
Nous allons voir ça sur une Debian Etch. Vous pouvez normalement utiliser les services du paquet pppoeconf
avec la commande /usr/sbin/pppoeconf
. Nous allons tout de même regarder de plus près les trois fichiers de configuration à modifier.
Le fichier « pap-secrets »
Editez le fichier /etc/ppp/pap-secrets
pour y placer les informations d'identification données par le fournisseur d'accès. Ce fichier est de la forme :
"<nom d'utilisateur>" "<domaine>" "<mot de passe">
Le domaine sera avantageusement remplacé par une astérisque *
. Exemple :
"fti/epikoi@fti" * "password"
Dans certains cas, un fichier identique, mais nommé /etc/ppp/chap-secrets
pourra être nécessaire. Son contenu est exactement le même.
Le fichier « dsl-provider »
Le fichier /etc/ppp/peers/dsl-provider
installé par défaut contient beaucoup de commentaires explicatifs. Il y a deux lignes qu'il faut modifier :
user "fti/epikoi@fti" pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452"
- La ligne
user
doit contenir le nom d'utilisateur tel qu'écrit danspap-secrets
; - la ligne
pty
doit être modifiée en fonction de l'interface connectée au modem (ici eth0).
Au total, nous devrions avoir un fichier proche de ceci :
~# cat /etc/ppp/peers/dsl-provider user "fti/epikoi@fti" pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452" noipdefault defaultroute hide-password lcp-echo-interval 60 lcp-echo-failure 3 connect /bin/true noauth persist mtu 1492 noaccomp default-asyncmap
Je vous laisse retrouver par vous-même la signification exacte des divers paramètres. Notons tout de même :
defaultroute
qui permettra de placer automatiquement la route par défaut sur cette connexion ;mtu 1492
qui évitera une fragmentation toujours peu souhaitable. Voir les détails sur le fonctionnement de PPPoE.
Le fichier « interfaces »
Nous devons ajouter dans /etc/network/interfaces
les lignes suivantes :
auto ppp0 iface ppp0 inet ppp provider dsl-provider
Notez que dans le cas de PPPoE, le lien ppp se faisant sur Ethernet, l'interface eth1 n'a pas besoin d'être configurée au niveau IP. Vous n'aurez besoin de configurer au niveau IP que si votre modem propose un accès IP pour sa configuration, ou simplement pour la lecture de son état, mais cette configuration IP n'est absolument pas nécessaire à PPPoE.
Au final, vous devriez avoir dans /etc/network/interfaces
:
auto eth0 iface eth0 inet static address 192.168.0.253 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 auto ppp0 iface ppp0 inet ppp provider dsl-provider
Normalement, l'interface ppp0
doit maintenant pouvoir se manipuler comme n'importe quelle interface réseau.