Guide pratique de la gestion d'ATM sous Linux: Version française du ATM on Linux HOWTO | ||
---|---|---|
Précédent | Suivant |
Les adresses ATM étant peu pratiques à manipuler, la plupart des outils ATM acceptent également des noms au lieu des adresses numériques. La conversion entre les noms et les adresses s'effectue via le fichier /etc/hosts.atm dont la structure est analogue à celle du fichier /etc/hosts :
Par exemple :
47.0005.80FFE1000000F21A26D8.0020EA000EE0.00 pc2-a.fqdn pc2-a 47.0005.80FFE1000000F21A26D8.0020D4102A80.00 pc3-a.fqdn pc3-a |
L'adresse numérique est spécifiée dans un des formats décrits dans [api]. L'adresse d'un système Linux peut être déterminée avec la commande atmaddr -n (voir également la section Configuration manuelle d'adresse).
De nombreux outils ATM tentent également d'obtenir le nom qui correspond à une adresse lorsqu'ils affichent cette dernière. Le premier nom qui apparaît dans le fichier en regard d'une adresse est alors utilisé.
Outre les adresses ATM pour les SVC, les adresses des PVC peuvent également être stockées dans le fichier /etc/hosts.atm. Lorsque différents types d'adresses correspondent au même nom d'hôte, la première dont le type convient est employée. Ainsi, lorsqu'une application ne demande que des adresses de SVC, celles des PVC sont ignorées.
Si vous avez accès au service de nom ATM (ATM Name Service), par exemple parce que vous avez installé l'option ANS, vous pouvez l'employer en remplacement ou en complément du fichier de noms en spécifiant le nom de l'hôte qui héberge le service ANS dans le fichier /etc/resolv.conf.
La liste des codes téléphoniques doit être connue pour effectuer la résolution inverse des adresses E.164. Cette liste se trouve sur le site de l'ITU-T (International Telecommunications Union). La liste des codes E.164 nationaux assignés par l'ITU-T est disponible aux formats PDF et Word.
Si l'URL venait à changer, le document devrait être facilement localisé en utilisant le moteur de recherche du site. |
Le script src/lib/pdf2e164_cc.pl du paquet atm-linux permet de créer un tableau des codes nationaux E.164 à partir de la version PDF. Par exemple :
Le script s'appuie sur l'utilitaire pdftotext. Celui-ci est disponible avec l'application xpdf.
Pages de manuel : atmsigd(8)atmsigd.conf(4)
Notez que la prise en charge point-à-multipoint d'atmsigd est très limitée : seul l'emploi en tant que feuille d'un arbre point-à-multipoint fonctionne.
Par défaut, atmsigd est configuré pour se conformer à la version d'UNI choisie dynamiquement. Il peut être compilé pour UNI 3.0, 3.1 ou 4.0 en employant l'argument --with-uni=VERSION du script ./configure au sommet des sources du paquet linux-atm.
Notez que la configuration de atmsigd est assez contraignante. Il s'arrête souvent en cas d'anomalie. Ceci devrait changer dans le futur.
atmsigd cherche un fichier de configuration à l'emplacement spécifié via l'option -c. /usr/local/etc/atmsigd.conf correspond à l'emplacement par défaut.
ILMI offre un mécanisme de configuration automatique des adresses. En l'absence de commutateur ou si celui-ci ne gère pas ILMI, les adresses ATM doivent être renseignées manuellement (se reporter à la section Configuration manuelle d'adresse). On notera que le démon ILMI ne doit pas être employé avec des interfaces pour lesquelles les adresses sont positionnées manuellement.
Le démon ILMI est invoqué comme suit :
ilmid [-b] [-d] [-i ip_locale] [-l fichier_journal] [-q qos] [-u version_uni] [-v] [-x] [itf]
arrière-plan. S'exécute dans un processus fils après initialisation.
messages de débogage. Par défaut, ilmid est très discret.
adresse IP à annoncer au commutateur quand il en demande une. Elle est spécifiée sous forme décimale pointée ou textuelle. Par défaut, ilmid la détermine de façon heuristique.
fichier d'enregistrement des messages de diagnostic (au lieu de la sortie standard). Le nom spécial syslog implique l'envoi des messages vers l'enregistreur système syslog.
configure la classe de service pour le circuit ILMI. Par défaut une classe UBR à la vitesse du lien est employée.
version d'UNI. Les valeurs possibles sont : 3.0, 3.1, et 4.0. Le point est facultatif. La valeur employée par défaut dépend de la façon dont ilmid a été compilé. Il s'agit typiquement de la valeur 3.0.
verbosité de débogage accrue.
désactive l'inclusion des liaisons de variables dans les ColdstartTrap SNMP. Certains commutateurs (les LS1000 par exemple) ne fonctionnent que si cette option est activée.
En l'absence de numéro d'interface, ilmid se sert de l'interface 0. La commande atmaddr permet de vérifier le succès de l'enregistrement d'adresse.
L'agent ne supporte que les procédures d'enregistrement d'adresse spécifiées dans la section 5.8 des spécification UNI 3.1 d'ATM Forum. Ces procédures impliquent l'enregistrement du préfixe réseau de l'hôte par le commutateur tandis que l'hôte enregistre en retour l'adresse finale auprès du commutateur. L'hôte y parvient en ajoutant un identificateur de système (ESI/End System Identifier) et un octet sélecteur nul au préfixe réseau enregistré par le commutateur. L'identificateur correspond à l'adresse physique ou MAC de l'interface ATM.
Si votre commutateur ne prend pas en charge ILMI, vous devez positionner manuellement l'adresse ATM au niveau du commutateur et de l'ordinateur. Vérifiez au préalable qu'ilmid est désactivé et utilisez la commande atmaddr pour spécifier la ou les adresses.
Page de manuel : atmaddr(8)
La configuration du commutateur dépend de son modèle. Par exemple, pour un Fore ASX-200 :
c'est-à-dire
conf nsap route new 47000580ffe1000000f21510650020ea000ee000 152 1a2 0 |<---- préfixe NSAP ---->||<--ESI--->|^^ SEL |
La longueur de l'adresse NSAP complète doit toujours être de 40 chiffres hexadécimaux. Il est possible d'employer des adresses avec un préfixe différent et un ESI différent de ceux des périphériques. La valeur de l'octet de sélection (SEL) est ignorée.
Il est également possible d'utiliser deux cartes ATM directement connectées sans avoir besoin de commutateur. Ceci est très pratique pour des environnements de test simples.
Un câblage adéquat est nécessaire si vous employez du câble UTP ou STP-5. Nos essais avec des câbles croisés standard 100Base-T n'ont rien donné. Le câblage est différent comme indiqué sur la figure suivante :
RJ45 RJ45 1 ------------ 7 2 ------------ 8 7 ------------ 1 8 ------------ 2 Les broches 3, 4, 5, 6 ne sont pas connectées. |
Les couleurs aux extrémités des connecteurs RJ45 permettent de mieux illustrer ce montage. Le premier connecteur utilise le câblage ci-dessous :
RJ45-1 1 - marron 2 - blanc/marron 3 - non connecté 4 - non connecté 5 - non connecté 6 - non connecté 7 - orange 8 - blanc/orange |
Et le second connecteur le câblage suivant :
RJ45-2 1 - orange 2 - blanc/orange 3 - non connecté 4 - non connecté 5 - non connecté 6 - non connecté 7 - marron 8 - blanc/marron |
Un câblage 1 -- 7 et 2 -- 8 fournit une boucle des plus économiques.
On considérera par la suite deux machines nommées « virgil » et « nestor ».
Une extrémité de la connexion ATM doit activer le démon réseau atmsigd tandis que l'autre se sert de la version utilisateur usuelle. On exécute sur nestor la commande :
et sur virgil :
ILMI n'est pas utilisable sans commutateur ATM. Créez un fichier /etc/hosts.atm avec deux adresses bidon, par exemple :
47.0005.80FFE1000000F21A26D8.0020EA000EE0.00 nestor-atm 47.0005.80FFE1000000F21A26D8.0020D4102A80.00 virgil-atm |
Ces adresses sont complètement fantaisistes mais cela n'a pas grande importance tant qu'on n'est pas connecté à un réseau ATM public ou privé. Les adresses sont transmises aux gestionnaires de périphériques via (sur virgil) :
et (sur nestor) :
Démarrez à présent atmarpd sur les deux machines de la façon habituelle. Vous devriez (en principe) disposer d'un système ATM opérationnel. Pour activer IP au-dessus d'ATM, suivez les instructions données à la section IP au-dessus d'ATM.
Le compilateur de messages Q.2931 génère également un embellificateur pour les messages Q.2931. L'exécutable se nomme q.dump et se trouve dans le répertoire src/qgen. Notez que la commande make install ne le copiera nulle part.
q.dump attend une suite d'octets sous forme de chiffres hexadécimaux séparés par des espaces sur l'entrée standard et affiche la structure du message si celui-ci est analysable. Exemple :
% echo 09 03 80 00 05 5A 80 00 06 08 80 00 02 81 83 00 48 \ 00 00 08 | ./q.dump _pdsc = 9 "Q.2931 user-network call/connection control message" _cr_len = 3 call_ref = 8388613 (0x800005) msg_type = 0x5a "RELEASE COMPLETE" _ext = 1 _flag = 0 "instruction field not significant" _action_ind = 0 "clear call" msg_len = 6 (0x6) _ie_id = 0x08 "Cause" _ext = 1 cause_cs = 0 "ITU-T standardized" _flag = 0 "instruction field not significant" _action_ind = 0 "clear call" _ie_len = 2 (0x2) _ext = 1 location = 1 "private network serving the local user" _ext = 1 cause = 3 "no route to destination" |