Maintenant que vous avez créé les fichiers /etc/ppp/options
et
/etc/resolv.conf
(et si besoin le fichier
/etc/ppp/pap/chap-secrets
), vous pouvez tester les paramètres en
établissant une connexion PPP à la main. (Une fois que la connexion
manuelle marchera, nous automatiserons le processus).
Pour ce faire, votre programme de communication doit pouvoir être quitté sans
réinitialiser le modem. Minicom
peut le faire avec Alt-Q (ou dans les
versions plus ancienne de minicom
CTRL-A Q)
Vérifiez que vous êtes root.
Lancez le programme de communication (minicom
par exemple), appelez le
serveur PPP et connectez-vous comme d'habitude. Si vous avez besoin d'envoyer
une commande pour démarrer PPP sur le serveur, faites-le. Vous devriez
maintenant voir les messages que vous aviez déjà vus.
Si vous utilisez PAP ou CHAP, se connecter simplement sur le système distant devrait démarrer PPP et vous devriez voir des caractères s'afficher sans toutefois se connecter (même si ça peut ne pas marcher sur certains serveurs - essayez alors d'appuyer sur Entrée et les caractères devraient s'afficher).
Maintenant quittez le programme de communication sans initialiser le modem
(ALT-Q ou CTRL-A Q dans minicom
) et au message d'accueil de Linux (étant
root) tapez
pppd -d -detach /dev/ttySx 38400 &
L'option -d active le déboguage - la conversation de démarrage de la connexion ppp sera retranscrite dans votre journal système - ce qui est très utile si des problèmes apparaissent.
Les lumières de votre modem devraient alors clignoter puisque la connexion PPP est établie. Cela peut prendre un peu de temps avant que la connexion soit terminée.
A ce niveau, vous pouver afficher l'interface PPP en tapant la commande :
ifconfig
En plus des éventuels périphériques loopback et Ethernet, vous devriez avoir quelque chose qui ressemble à :
ppp0 Link encap:Point-Point Protocol inet addr:10.144.153.104 P-t-P:10.144.153.51 Mask:255.255.255.0 UP POINTOPOINT RUNNING MTU:552 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0
Où
(Naturellement, ifconfig
ne renvoie pas ces nombres là, mais ceux qui sont
utilisés par le serveur PPP.)
Remarque : ifconfig
indique également que votre liaison fonctionne
correctement !
Si vous aucun périphérique PPP n'est affiché ou quelque chose du genre
ppp0 Link encap:Point-Point Protocol inet addr:0.0.0.0 P-t-P:0.0.0.0 Mask:0.0.0.0 POINTOPOINT MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0
Votre liaison PPP n'est pas correcte... voir la section suivante sur le débuggage !
Vous devez aussi pouvoir voir une route vers l'hôte distant (et même plus). Pour cela, entrez la commande
route -n
Vous devriez obtenir quelque chose comme :
Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface 10.144.153.3 * 255.255.255.255 UH 1500 0 1 ppp0 127.0.0.0 * 255.0.0.0 U 3584 0 11 lo 10.0.0.0 * 255.0.0.0 U 1500 0 35 eth0 default 10.144.153.3 * UG 1500 0 5 ppp0
Ce qui est important ici, c'est d'avoir DEUX entrées pointant vers votre interface ppp.
La première est une route d'hôte (indiqué par le drapeau H) et qui permet de voir l'hôte sur lequel vous êtes connecté - mais pas plus.
La seconde est la route par défaut (établie en donnant à pppd
l'option
defaultroute
). C'est cette route qui indique à votre PC Linux d'envoyer
tous les paquets qui ne sont pas destinés à vos interfaces Ethernet - vers
lesquelles vous avez des routes réseau spécifiques - au serveur PPP lui-même.
Le serveur PPP est alors responsable de router vos paquets vers Internet et
de vous renvoyer les paquets chez vous.
Si vous ne voyez pas une table de routage avec deux entrées, quelque chose ne
marche pas. En particulier si votre syslog contient des messages indiquant que
pppd
ne remplace pas la route par défaut, vous devez avoir une route par
défaut qui pointe sur votre interface Ethernet - qui DOIT être remplacée
par une route réseau spécifique : VOUS NE POUVEZ AVOIR QU'UNE SEULE ROUTE
PAR DEFAUT !!!
Vous devez explorer vos fichiers d'initialisation de votre système pour trouver
où est configuré votre route par défaut (elle doit utiliser la commande
route add default...
). Changer cette commande par quelque chose du genre
route add net ...
.
Maintenant testez la liaison en 'pingant' le serveur à l'adresse IP affiché par ifconfig, comme suit :
ping 10.144.153.51
Vous devriez obtenir
PING 10.144.153.51 (10.144.153.51): 56 data bytes 64 bytes from 10.144.153.51: icmp_seq=0 ttl=255 time=328.3 ms 64 bytes from 10.144.153.51: icmp_seq=1 ttl=255 time=190.5 ms 64 bytes from 10.144.153.51: icmp_seq=2 ttl=255 time=187.5 ms 64 bytes from 10.144.153.51: icmp_seq=3 ttl=255 time=170.7 ms
Ce listing doit continuer sans jamais s'arrêter - pour le stopper, taper CTRL C, vous recevrez alors des informations complémentaires :
--- 10.144.153.51 ping statistics --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 170.7/219.2/328.3 ms
Jusqu'ici tout va bien, jusqu'ici tout va bien.
Maintenant, essayez de pinger un nom d'hôte (pas le nom du serveur PPP lui-même) mais un hôte d'un autre site dont vous SAVEZ qu'il y a de très fortes chances qu'il marche...). Par exemple
ping sunsite.unc.edu
Dans ce cas, il va y avoir une petite pause le temps que Linux obtienne
l'adresse IP du nom de hôte que vous avez 'pingé' par le DNS que vous avez
spécifié dans le /etc/resolv.conf
- ne vous inquiétez pas (les
lumières de votre modem devraient clignoter). Rapidement, vous devriez avoir
l'affichage suivant
PING sunsite.unc.edu (152.2.254.81): 56 data bytes 64 bytes from 152.2.254.81: icmp_seq=0 ttl=254 time=190.1 ms 64 bytes from 152.2.254.81: icmp_seq=1 ttl=254 time=180.6 ms 64 bytes from 152.2.254.81: icmp_seq=2 ttl=254 time=169.8 ms 64 bytes from 152.2.254.81: icmp_seq=3 ttl=254 time=170.6 ms 64 bytes from 152.2.254.81: icmp_seq=4 ttl=254 time=170.6 ms
Là encore, arrêtez le en tapant CTRL C pour obtenir les statistiques...
--- sunsite.unc.edu ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 169.8/176.3/190.1 ms
Si vous n'avez pas de réponse, essayer de pinger l'adresse de votre serveur DNS
de votre FAI. Si vous n'avez pas de résultat, alors il doit y avoir un
problème avec votre /etc/resolv.conf
.
Si ça ne fonctionne pas, vous devez avoir un problème de routage, ou votre FAI a un problème à vous renvoyer les paquets. Vérifiez les tables de routages présentées plus haut et si tout est OK, contacter votre FAI. Si cela se trouve après votre FAI, alors le problème est de votre coté.
Si tout marche correctement, fermez la connexion en tapant
ppp-off
Après une courte pause, le modem devrait raccrocher.
Si ça ne marche pas, soit vous éteignez votre modem, soit vous lancez votre programme de communication et vous interrompez votre modem avec +++ puis vous raccrochez avec ATH0 quand vous recevez le message OK de votre modem.
Vous devez également effacer le fichier créé par pppd
rm -f /var/lock/LCK..ttySx