Vous devez vous assurer que votre modem est correctement configuré et que vous savez sur quel port série il est branché.
Se souvenir que :
Il est également bien de se souvenir que si vous avez 4 ports séries, la configuration standard d'un PC est d'avoir COM1 et COM3 partageant IRQ4 et COM2 et COM4 partageant IRQ3.
Si vous avez des périphériques sur vos ports séries qui partagent une IRQ avec votre modem vous allez avoir des problèmes. Vous devez vous assurer que le port série de votre modem est sur sa propre et unique IRQ. De nombreuses cartes séries modernes (et les ports séries des cartes mères de bonne qualité) permettent de changer les IRQ des ports série.
Si vous utilisez le noyau Linux 2, vous pouvez afficher des IRQ actuellement
utilisés avec cat /proc/interrupts
, qui produira une sortie
ressemblant à :
0: 6766283 timer 1: 91545 keyboard 2: 0 cascade 4: 156944 + serial 7: 101764 WD8013 10: 134365 + BusLogic BT-958 13: 1 math error 15: 3671702 + serial
Cela montre que le le port série en IRQ4 (une souris) et le port série en IRQ15 (un modem permanent basé sur PPP pour une liaison Internet). (Il y a également un port série sur le port COM2, IRQ3 et COM4 est dans l'IRQ14, mais comme ils ne sont pas utilisés, ils ne sont pas affichés).
Avertissement - vous devez vous rendre compte de ce que vous faites lorsque vous voulez jouer avec vos IRQ ! Non seulement, vous devez ouvrir votre ordinateur, retirer vos cartes et jouer avec les jumpers, mais vous devez savoir ce qu'il y a sur chaque IRQ. Dans mon cas, j'ai un PC totalement SCSI, et j'ai donc désactivé les interfaces IDE de la carte-mère qui utilisent normalement les IRQ14 et 15 !
Je tiens également à préciser que si votre PC utilise un autre système d'exploitation, changer les IRQ pourrait bien signifier que votre OS ne bootera plus correctement, ou plus du tout !
Si vous déplacez vos ports séries vers des IRQ non-standard, vous devez
spécifier à Linux quel IRQ utilise chaque port. setserial
permet de
le faire, et de préférence lors du processus de lancement dans rc.local
ou rc.serial
qui est appelé dans rc.local
ou comme une partie de
l'initialisation SysV system. Pour la machine présentée ci-dessus, les
commandes utilisées sont
/bin/setserial -b /dev/ttyS2 IRQ 11 /bin/setserial -b /dev/ttyS3 IRQ 15
Toutefois, si vous utilisez le module série chargé dynamiquement au besoin avec
le processus kerneld
, vous ne pouvez pas définir et perdre les IRQ à chaque
redémarrage. Si le module série est effacé, Linux perds alors les
configurations spéciales.
Donc, si vous chargez le module série à la demande, vous devez reconfigurer les IRQ à chaque fois qu'il est chargé.
Si vous utilisez un modem haut débit (externe) (14.400 Bits par seconde ou plus), votre port série doit être capable de suivre le débit qu'un tel modem est capable de produire, en particulier si le modem compresse les données.
Cela demande que votre port série utilise un UART(Universal Asynchronous Receiver Transmitter) moderne comme un 16550(A). Si vous utilisez une vieille machine (ou une vieille carte série), il est tout à fait possible que votre port série ait seulement un UART 8250, ce qui amènera des problèmes considérables avec un modem haute vitesse.
Utiliser la commande
setserial -a /dev/ttySx
Pour que Linux vous affiche le type d'UART que vous avez. Si vous n'avez pas un UART de type 16550, acheter une nouvelle carte série (disponible pour moins de 300 F). Quand vous acheterez une nouvelle carte, assurez vous que vous pouvez changer les IRQ !
Remarque : les premières versions des puces UART 16550 avaient une erreur. Elle a été rapidement découverte et une mise à jour de la puce est sortie - l'UART 16550A. Un nombre relativement faible de puces erronées ont cependant été mises en circulation. Ça serait de la malchance que d'un récupérer une, en particulier sur certaines cartes d'occasion, mais il suffit de chercher la réponse qui s'appelle 16550A.
Historiquement, Linux utilise les périphériques cuaX
pour les appels
sortants et ttySx
pour les appels entrants.
Le code du noyau a eu besoin de changer cela dans la version 2.0.x du noyau,
et vous devez maintenant utiliser ttySx
pour les appels entrants et
sortants. Cela semble annoncer que les noms de périphériques cuaX
devraient disparaître dans les futures versions du noyau.
Vous devez configurer votre modem correctement pour PPP - pour cela, LISEZ LE MANUEL DE VOTRE MODEM ! La plupart des modems ont une configuration par défaut en usine avec les options requises par PPP. La configuration minimale spécifie :
&
K3 sur les modems
Hayes)Les autres paramètres (en commandes Hayes standard) que vous devez vérifier sont :
chat
fonctionne)&
C1 Carrier Detect ON seulement après la connexion&
S0 Data Set Ready (DSR) toujours ONUn site fournit la configuration des modems pour une variété de fabricants et de modèles de modems croissante à Modem setup information qui devrait vous simplifier la configuration.
Il est aussi intéressant de vérifier comment fonctionne l'interface série entre votre ordinateur et votre modem. La plupart des modems modernes vous permettent d'utiliser l'interface série à une vitesse FIXE permettant à l'interface avec la ligne téléphonique de changer de vitesse pour atteindre la plus haute vitesse que les deux modems peuvent supporter.
Cela s'appelle l'opération de division de la vitesse. Si votre modem le supporte, bloquer l'interface série du modem à la vitesse disponible la plus rapide (d'habitude 115.200 bauds mais parfois 38.400 pour les modems 14.400).
Utiliser les outils de communication (c.-à-d. minicom
ou seyon
) pour
accéder à la configuration de votre modem, et l'adapter à ce qui est nécessaire
à PPP. De nombreux modems renvoient leurs réglages courants après la commande
AT&
V, mais vous devez consulter le manuel de votre modem.
Si vous avez complètement modifié les réglages, vous pouvez repartir sur des
bases saines (généralement) en envoyant AT&
F - ça retourne aux
réglages usine. (Pour la majorité des modems que j'ai rencontré, les réglages
usine on tout ce qu'il faut pour faire du PPP - mais vous devez vérifier).
Un fois que vous avez la commande nécessaire pour configurer votre modem, écrivez-là. Vous devez maintenant prendre une décision : vous pouvez stocker ces paramètres dans la mémoire non-volatile de votre modem, comme cela vous pourrez la relancer en envoyant une commande AT appropriée. Alternativement, vous pouvez passer le paramétrage correct à votre modem lors du processus de connexion de PPP.
Si vous utilisez uniquement votre modem sous Linux pour appeler votre FAI ou un serveur d'entreprise, la manière la plus simple est de sauver la configuration de votre modem dans la mémoire non-volatile.
D'un autre coté, si votre modem est utilisé par d'autres applications et systèmes d'exploitation, il est plus sûr de passer ces informations au modem à chaque appel que vous passez, comme cela, c'est sûr que le modem sera bien configuré lors de l'appel. (Cela a aussi l'avantage de conserver la ligne de configuration du modem au cas où le modem perdrait le contenu de sa NV-RAM, ce qui peut parfois arriver).
Lorsque les données transitent sur les lignes de communication série, il peut arriver que les données arrivent plus vite que l'ordinateur ne peut les traiter (l'ordinateur peut être occupé à faire autre chose - n'oubliez pas que Linux est un système Multi-tâches Multi-utilisateurs). Pour s'assurer que des données ne se sont pas perdues (les données n'arrivent pas dans le tampon d'entrée pour se perdre ensuite), certaines méthodes de contrôles sont nécessaires.
Il y a deux façons de faire sur des lignes séries :
Bien que le dernier soit correct pour les liaisons vers des terminaux(texte), les données sur une liaison PPP utilisent les 8 bits - et il est fort probable que quelque part dans les données, un octet se traduis par un control S ou un control Q. Donc, si un modem est configuré pour utiliser le contrôle de flux, les choses vont rapidement s'envenimer !
Pour les liaisons à haut débit utilisant PPP (avec l'utilisation des 8 bits de données) le contrôle de flux matériel est vital, et c'est la raison pour laquelle vous devez utiliser le contrôle de flux matériel.
Maintenant que vous en avez terminé avec la configuration du modem et du port série, il serait utile de vérifier si cette configuration marche vraiment en appelant votre fournisseur d'accès et voir si vous pouvez vous connecter.
En utilisant le paquetage du terminal de communication (tel que minicom
),
la commande d'initialisation de votre modem pour PPP, appelez le
serveur PPP sur lequel vous voulez vous connecter pour une session PPP.
(Remarque : à ce niveau, nous n'essayerons pas d'établir la connexion PPP - mais juste d'être sûr que nous pouvons composer un numéro et ainsi trouver exactement ce que le serveur nous envoie pour se connecter et lancer PPP).
Pendant le processus, soit vous capturez (dans un fichier) la totalité du processus de login soit vous notez attentivement (très attentivement) exactement ce que le serveur envoie pour savoir quand est le moment d'entrer votre nom utilisateur et votre mot de passe (et quelques autres commandes nécessaires pour établir la connexion PPP).
Si votre serveur utilise PAP, vous ne verrez pas de message de login, mais vous verrez à la place la (représentation texte) du protocole de contrôle de liaison (une suite incohérente de caractères) s'afficher sur votre écran.
Quelques mots d'avertissements :
ENTREE
- essayez donc cela si vous êtes connecté et ne voyez pas de
message !Il est intéressant de dialoguer au moins deux fois - certains serveurs changent leur message d'accueil (c.-à-d. avec le temps !) chaque fois que vous vous connectez. Les deux messages critiques que votre machine Linux doit pouvoir identifier chaque fois que vous vous vous connectez sont :
Si vous avez tapé une commande pour lancer PPP sur le serveur, vous devez aussi rechercher le message que le serveur vous envoie une fois que vous êtes connecté pour vous informer que vous pouvez entrer la commande pour lancer ppp.
Si votre serveur lance automatiquement PPP, une fois que vous êtes connecté, vous allez voir des caractères s'afficher sur votre écran - c'est le serveur PPP qui envoie à votre machine les informations pour démarrer et configurer la connexion PPP.
Ça doit donner quelque chose comme ceci :
(et ça ne s'arrête pas !)
Sur certains systèmes, PPP doit être explicitement lancé sur le serveur. Cela vient généralement du fait que le serveur a été configuré pour permettre aux connexions PPP et aux connexions Shell a utiliser les mêmes paires nom utilisateur/mot de passe. Si c'est le cas, envoyez cette commande lorsque vous êtes connecté. Une nouvelle fois vous verrez des caractères que le serveur envoie à la fin du lancement de la connexion PPP.
Si vous ne voyez pas directement après la connexion (et le processus de connexion et le lancement du serveur PPP si besoin), tapez Entrée pour voir si le serveur PPP démarre...
A ce niveau, vous pouvez raccrocher votre modem (généralement, taper
+++
rapidement et envoyer la commande ATHO une fois que votre modem
vous a répondu OK).
Si vous n'arrivez pas à faire fontionner votre modem, lisez le manuel du modem, les pages de manuel des programmes de communication, et le Serial HOWTO ! Une fois que vous aurez fait tout cela reprenez l'étape précédente.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:38