Token-Ring HOWTO Mike Eckhoff (meckhoff@zaphod.wayne.esu1.k12.ne.us). (eb@via.ecp.fr) Version 3, 5 Juillet 1995 L'Ethernet-HOWTO fait reference au driver Token Ring qui est en cours d'ecriture. Ce Howto a ete cree dans le but de vous aider a installer le patch pour le noyau et aussi essayer de mettre en evidence les points a surveiller. Je suggere que vous lisiez, au moins rapidement, ce document, avant d'essayer d'installer quelque partie que ce soit du driver Token Ring pour Linux. 11.. IInnttrroodduuccttiioonn 11..11.. RReemmeerrcciieemmeennttss Remerciements a Mark Swanson, Peter De Schrijver, David Morris et toutes les autres personnes que j'aurais pu oublier qui ont rendu possible le support Token Ring pour Linux. Remerciements aussi a Larry Sanders (lsanders@iadfw.net) qui m'a aide a corriger ce document. 11..22.. MMiissee eenn ggaarrddee Nous ne garantissons pas que ce Howto sera valable pour votre systeme. De nombreuses personnes l'ont utilise avec de tres bons resultats pour installer Linux sur un reseau Token Ring. VOUS UTILISEZ CE DOCUMENT A VOS PROPRES RISQUES ! ... Nous ne sommes responsables d'aucun des problemes pouvant vous arriver en utilisant ce Howto. Si vous avez un quelconque probleme qui n'est pas signale dans ce document, envoyez moi un mail a meckhoff@zaphod.wayne.esu1.k12.ne.us. Ce document est copyright (c) 1995 Michael Eckhoff. Vous pouvez faire des copies de ce document (en entier ou certaines portions du document), sur quelque support physique ou electronique que ce soit, du moment que cette notice de copyright soit incluse dans chaque copie. Une redistribution commerciale est autorisee et encouragee ; cependant, veuillez me tenir au courant afin que je verifie que vous avez la derniere version. 22.. EExxiiggeenncceess mmaatteerriieelllleess Verifiez que vous avez une carte Token Ring qui est supportee par le driver. Jusqu'a present, les seules cartes supportees sont celles qui utilisent le chipset Tropic. Les cartes qui sont reputees marcher sous Linux sont : +o IBM Token Ring 16/4 Adapter ; +o IBM Token Ring Adapter ; +o IBM Token Ring Adapter II (4 Megabit seulement) ; +o Carte IBM 16/4 ISA Token Ring (16 bit) ; +o Carte IBM 16/4 ISA Token Ring (8 bit) ; +o 3Com TokenLink Adapter (mode IBM et 3Com) ; +o HyperRing Classic 16/4. Veuillez noter qu'IBM fabrique une carte IBM Token-Ring Network 16/4 Adapter II. Cette carte nn''eesstt ppaass rreeccoonnnnuuee ssoouuss LLiinnuuxx. Il ne faut pas la confondre avec la carte IBM Token Ring Adapter II (4mbit), qui elle est supportee. Si vous trouvez une autre carte qui fonctionne sous Linux, envoyez-moi un mail decrivant la marque et le type de la carte afin que je puisse l'inclure dans la liste precedente (meckhoff@zaphod.wayne.esu1.k12.ne.us). 33.. LLeess llooggiicciieellss rreeqquuiiss Si vous utilisez une version du noyau Linux de la serie 1.3 ou superieur, le support pour le Token Ring y est deja inclus. Sinon, je vous encourage vivement a mettre a jour votre noyau Linux vers un de ceux de la serie 2.0 ou superieur. 44.. IInnssttaallllaattiioonn eett ccoonnffiigguurraattiioonn Installez la carte Token Ring dans l'ordinateur et configurez-la pour les reglages que vous voulez utiliser. Il est conseille de verifier que la carte fonctionne sous Dos ou Windows avant d'essayer de l'utiliser sous Linux. Si elle marche sous Dos ou Windows, il y a de fortes chances pour que cela marche sous Linux. Configurez votre noyau Linux pour l'utilisation de la carte Token Ring. cd /usr/src/linux make config Repondre ''y'' (yes) a la question : Token Ring support (CONFIG_TR) [N/y/?] Ainsi qu'a la question : IBM Tropic chipset based adaptor support (CONFIG_IBMTR) [N/y/m/?] (NEW) Reconstruire le noyau avec les commandes : make dep make clean make zImage Il faut ensuite reconfigurer lilo pour demarrer sur ce nouveau noyau. Pour cela, il faut d'abord renommer votre noyau /vmlinuz en /vmlinuz.old et copier le nouveau en /vmlinuz. Sur mon systeme, cela revient a copier /usr/src/linux/arch/i386/boot/zImage en /vmlinuz et a editer /etc/lilo.conf pour demarrer sur ce noyau. N'oubliez pas de lancer lilo (avec la commande lilo) afin que les changements de noyau soient pris en compte. Si ce n'est pas deja fait, lancez le programme ``netconfig'' sur votre systeme. Configurez votre machine comme si celle-ci se trouvait sur un reseau Ethernet. Editez votre fichier /etc/rc.d/rc.inet1 (ou un fichier dans /etc/init.d pour certaines distributions) et changez toutes les references a eth0 en tr0. Vous devriez avoir une ligne ressemblant a /sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK} qu'il faut changer en /sbin/ifconfig tr0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK} Vous devriez maintenant pouvoir rebooter votre systeme et utiliser la carte Token Ring avec votre ordinateur. 55.. PPrroobblleemmeess ccoonnnnuuss J'ai personnellement eu quelques petits problemes avec ce driver. Selon Peter De Schrijver, un des problemes principaux avec ce driver est le routage. From: Peter de Schrijver La cause principale du probleme est le routage. Si vous ne pouvez pas atteindre un noeud du reseau situe derriere un pont, vous avez un probleme de routage. Contactez-moi si vous rencontrez ce probleme, et j'essaierai de faire ce que je peux. Je n'ai pas moi-meme acces a un anneau comportant un pont, il devrait donc etre difficile de resoudre le probleme. Peter. Notre reseau, ici, a la Wayne Community Schools est constitue de deux anneaux et d'un reseau Ethernet dont le pont est realise par des IBM 8229. Je n'ai eu aucun probleme de routage avec ces ponts. J'ai aussi teste le driver sur un reseau constitue de 7 ponts, relies par une combinaison d'IBM 8229 et d'IBM PC utilisant le logiciel IBM. Aucun probleme la non plus. 66.. QQuueessttiioonnss Voici quelques questions que j'ai recues par mail a propos du Token Ring sous Linux. +o Au demarrage, j'ai le message tr0: Can't assign device to adapter Lorsque c'est le seul message produit au demarrage, cela signifie que la requete PIO d'information sur l'adaptateur est tellement en dehors de l'intervalle qu'il n'y a pas de carte a cette adresse d'entree-sor- tie (voir segment = inb(PIOaddr) dans ibmtr.c). +o Ma carte est une Olicom 16/4 Adapter. J'ai le message suivant dans /var/log/messages : May 2 10:03:14 linux kernel: tr0: Unable to assign adapter to device. May 2 10:03:14 linux kernel: tr1: Unable to assign adapter to device. Cette carte ne doit pas utiliser le chipset Tropic. Essayez d'utiliser une des cartes de la liste du debut du document. +o J'ai une carte Token Ring IBM, mais j'ai les messages suivants au demarrage : May 2 16:23:07 linux kernel: tr0: PIOaddr: a20 seg/intr: b8 mmio base: 000dc000 intr: 0 May 2 16:23:07 linux kernel: tr0: Channel ID string not found for PIOaddr: a20 May 2 16:23:07 linux kernel: tr0: Expected for ISA: 5049434f3631313039393020 May 2 16:23:07 linux kernel: tr0: found: 000902003021111000182000 May 2 16:23:07 linux kernel: tr0: Expected for MCA: 4d4152533633583435313820 May 2 16:23:07 linux kernel: tr0: Unable to assign adapter to device. May 2 16:23:07 linux kernel: tr1: Unable to assign adapter to device. Ce message indique soit un conflit memoire soit une carte Token Ring qui n'est pas reconnue (la signature de cette carte n'est en tout cas pas connue). +o Je trouve dans mon fichier /var/log/messages des dizaines de lignes de ce type : May 3 15:11:47 linux kernel: tr0: Arrg. Transmitter busy for more than 50 msec. Donald resets adapter, but resetting May 3 15:11:47 linux kernel: the IBM tokenring adapter takes a long time. It might not even help when the May 3 15:11:47 linux kernel: ring is very busy, so we just wait a little longer and hope for the best. Ces messages apparaissent lorsque j'essaye un telnet, un rlogin ou un ftp sur une machine distante. La connexion est alors bloquee pendant longtemps. Certaines personnes travaillent a la correction de ce probleme. Je mettrai a jour cette reponse lorsqu'une solution sera trouvee. .