• Aucun résultat trouvé

Le protocole Point-a-Point | PPP

8.7 Options de con guration IP

IPCP est utilise pour negocier deux parametres IP au moment de la con guration. Generalement, chaque c^ote envoie un paquet IPCP de requ^ete de con guration, indi- quant les valeurs qu'il desire au lieu de celles par defaut. Le correspondant examine chaque option a son tour et acquitte ou rejette la demande.

Avec pppd, vous disposez d'un contr^ole presque total des options IPCP qu'il tentera de negocier. Vous pouvez les ajuster par di erentes commandes que nous allons presenter ci-dessous.

8.7.1 Choix des adresses IP

Dans l'exemple ci-dessus, pppd appelait

pabo

et etablissait une liaison IP. Aucune precaution n'etait prise quant au choix d'adresses IP particulieres de chaque c^ote de la liaison. Nous avions simplement pris l'adresse de

kro

comme adresse IP locale, et laisse

pabo

indiquer la sienne. Quelquefois neanmoins, il est necessaire d'avoir un contr^ole sur les adresses mises en jeu; pour cela pppd propose plusieurs options. Pour demander une adresse particuliere, il sut en principe de l'indiquer a pppd par l'option suivante:

adresse locale:adresse distante

Vous pouvez utiliser pouradresse localeetadresse distante, aussi bien des noms

de machines que des adresses IP en notation sur 4 octets6. Avec cette option, pppd

tentera d'utiliser la premiere adresse comme sa propre adresse IP, et la seconde pour la machine distante. Si cette derniere rejette l'une ou l'autre pendant la negociation IPCP, aucune liaison IP ne sera etablie7.

Si vous ne desirez assigner que l'adresse locale et accepter toute adresse distante que l'autre c^ote annoncera, il vous sut de ne rien mettre a l'emplacement de la variable

adresse distante. Par exemple, pour que

kro

utilise l'adresse

130.83.4.27

au lieu

de la sienne, vous passeriez l'option 130.83.4.27:sur la ligne de commandes. De

m^eme, pour n'assigner que l'adresse distante, vous laisseriez le champadresse locale

en blanc. Par defaut, pppd utilisera alors l'adresse associee au nom de la machine. Certains serveurs PPP gerant beaucoup de connexions assignent les adresses de ma- niere dynamique: elles sont choisies lorsqu'un systeme se connecte, et liberees a la deconnexion. Lors de l'appel de tels services, vous devez vous assurer que pppd ne demande aucune adresse IP particuliere au serveur, mais qu'au contraire il est pr^et a accepter celles qui lui seront imposees. Cela signi e que vous ne devez pas speci er d'argument adresse locale, pour le moins. De plus, vous devrez utiliser l'option noipdefault, qui indique au programme d'attendre que l'autre c^ote lui indique son

adresse IP au lieu de prendre celle de la machine locale.

6:L'utilisation de noms de machines avec cette option a certaines consequences sur l'authenti -

cation CHAP. Consultez la section correspondante dans ce chapitre.

7:Vous pouvez autoriser la machine distante a vous imposer une adresse IP malgre tout

par l'option ipcp-accept-local, et vous pouvez accepter l'adresse qu'elle desire pour elle par ipcp-accept-remote. Consultez la page de manuel pour plus de details.

8.7.2 Routage via une liaison PPP

Apres avoir initialise l'interface reseau, pppd positionne generalement une route, uni- quement vers l'h^ote distant. Si celui-ci est sur un reseau, vous voudrez sans doute avoir la possibilite de vous connecter a des machines((derriere))lui; c'est-a-dire qu'il

faudra une route vers un reseau.

Nous avons deja vu plus haut que pppd peut ^etre parametre pour positionner une route par defaut gr^ace a l'optiondefaultroute, qui est tres utile si le serveur PPP

que vous avez appele est cense ^etre votre passerelle vers l'Internet.

Le cas inverse, ou votre systeme agit comme une passerelle pour un simple h^ote, est aussi relativement simple a realiser. Prenons par exemple un employe de l'entreprise

(( La biere virtuelle)), dont l'ordinateur domestique s'appelle

houblon

. Lorsqu'il se

connecte a

kro

par PPP, il utilise une adresse appartenant au sous-reseau des bras- seurs. Sur

kro

, nous pouvons alors passer l'optionproxyarpa pppd, qui installera une

entree proxy ARP pour

houblon

. Cela rendra automatiquement

houblon

accessible depuis toutes les machines du reseau des brasseurs, et de celui des viticulteurs. Toutefois, les choses ne sont pas toujours aussi simples que ca, par exemple lorsque l'on relie deux reseaux locaux. En principe, cela demande l'ajout d'une route reseau speci que, car chacun peut avoir sa propre route par defaut. Par-dessus le marche, si les deux bouts utilisaient le lien PPP comme route par defaut, cela genererait une boucle, et les paquets a destination inconnue feraient des aller et retour entre chaque bout de la liaison jusqu'a ce que leur ttl expire.

Comme exemple, supposons que((La biere virtuelle))installe une succursale dans une

autre ville. Celle-ci possede un reseau Ethernet qui lui est propre, possedant l'adresse reseau IP

172.16.3.0

, c'est-a-dire le sous-reseau 3 du reseau de classe B des brasseurs. Cette succursale veut se connecter au reseau principal du siege par PPP pour mettre a jour leurs chiers clients et les tarifs, etc. La encore,

kro

joue le r^ole de passerelle; son correspondant s'appelle, disons,

province

et son adresse IP vaut

172.16.3.1

. Lorsque

province

se connecte a

kro

, il positionne la route par defaut vers

kro

, comme de coutume. Sur la machine

kro

, toutefois, nous devrons installer une route reseau pour le sous-reseau 3, qui passera par

province

. Pour cela, nous allons employer une possibilite de pppd dont nous n'avons pas encore parle: la commande ip-up. Il s'agit d'un shell-script ou d'un programme situe dans le repertoire /etc/ppp, qui est execute apres que l'interface PPP a ete con guree. Lorsque ce chier existe, il est appele automatiquement par pppd avec les parametres suivants:

ip-up interface peripherique vitesse adresse locale adresse distante

Le parametreinterfaceindique l'interface reseau utilisee,peripheriqueest le che-

min d'acces au port serie (/dev/tty s'il s'agit de stdin/stdout), et vitesse corres-

pond a la vitesse d'utilisation de ce port serie. Bien entendu, adresse locale et adresse distantecorrespondent aux adresses IP de chaque c^ote de la liaison et sont

exprimees en notation sur 4 octets. Dans notre cas, le script ip-up pourrait contenir, entre autres lignes de code, celles-ci:

#!/bin/sh case $5 in

172.16.3.1) # La machine province route add -net 172.16.3.0 gw 172.16.3.1; ...

esac exit 0

De la m^eme facon, /etc/ppp/ip-down est appele pour annuler toutes les actions de ip-uplorsque la liaison est interrompue.

Toutefois, ce schema de routage n'est pas encore complet. Nous avons positionne des entrees dans la table de routage de chaque h^ote PPP, mais, pour l'instant, aucune autre machine de l'un ou l'autre des reseaux n'est au courant de cette liaison PPP. Ce n'est pas un gros probleme si tous les h^otes de la succursale ont leur route par defaut pointant vers

province

, et si tous les h^otes du reseau des brasseurs passent par defaut par

kro

. Mais si ce n'est pas le cas, la seule solution sera d'employer un demon de routage comme gated. Apres avoir cree la route reseau sur

kro

, le demon de routage di usera cette nouvelle route a toutes les machines connectees aux reseaux concernes.