 <!doctype linuxdoc system>

<!-- Linux IPX-HOWTO sources sgml -->
<!-- Traduction Gr&eacute;gory LAJON (glajon@mail.dotcom.fr)  -->


<article>
<!-- Title information -->
<title> Linux IPX-HOWTO
<author>Kevin Thorpe, <tt/kevin@pricetrak.com/
<newline>
Version Fran&ccedil;aise par Gr&eacute;gory Lajon <tt>glajon@mail.dotcom.fr</tt>
<date>v2.3, 06 Mai 1998

<abstract>
Ce document tente de d&eacute;crire comment obtenir, installer et 
configurer diff&eacute;rents outils existant pour le syst&egrave;me d'exploitation
Linux utilisant le support du protocole IPX du noyau.
</abstract>

<toc>



<sect><heading>Introduction
<p>
Ceci est l'IPX-HOWTO. Il est conseill&eacute; de lire le NET-3-HOWTO de Linux
 en parall&egrave;le avec ce document.

<sect1><heading>Changements par rapport &agrave; la version pr&eacute;c&eacute;dente

<p>
<tt>
Changement d'auteur: <newline>
Un grand merci &agrave; Terry Dawson pour avoir transmis ce document et 
f&eacute;licitations pour &ecirc;tre devenu papa.
<newline>

 Ajouts : <newline>	
	Ajout d'une br&egrave;ve explication sur IPX en r&eacute;ponse &agrave;
	beaucoup de questions d&eacute;routantes sur la liste de diffusion.
<newline>

 Corrections, mises &agrave; jour : <newline>

        La nouvelle version de ncpfs supporte maintenant les logins NDS. 
	C'est en beta test et peut &ecirc;tre interdit dans votre pays &agrave;
	cause de l'utilisation de technologies brevet&eacute;es.

	Ajout du support des droits d'acc&egrave;s dans mars_nwe. Toujours
	en beta test.
</tt>

<sect1><heading>Introduction

<p>
Compar&eacute; aux autres syst&egrave;mes d'exploitation de la famille Un*x,
le noyau de Linux poss&egrave;de une toute nouvelle impl&eacute;mentation de la partie
 r&eacute;seau. 
Cette nouvelle approche de d&eacute;veloppement des logiciels
 r&eacute;seau du noyau ont permis &agrave; Linux de pouvoir supporter des protocoles 
 autres que TCP/IP. Le protocole IPX fait partie de ceux-l&agrave;.

 Le noyau de Linux supporte le protocole IPX seulement. Il ne prend pas encore 
 en compte les protocoles tels que IPX/RIP, SAP ou NCP. Ces derniers sont 
 g&eacute;r&eacute;s par d'autres logiciels comme nous le verrons plus loin dans ce
 document.

 La gestion du protocole IPX a &eacute;t&eacute; initialement d&eacute;velopp&eacute;e par Alan Cox 
 <tt>&lt;alan@lxorguk.ukuu.org.uk&gt</tt>, puis a &eacute;t&eacute; am&eacute;lior&eacute; par Greg Page 
 <tt>&lt;greg@caldera.com&gt;</tt>.


 <sect><heading>Responsabilit&eacute; vis &agrave; vis de ce document
 
 <p>
 Je ne sais et ne peux conna&icirc;tre tout ce qu'il y a &agrave; savoir sur la partie
 logiciel r&eacute;seau de Linux. Je vous prie donc d'accepter le fait qu'il puisse y
 avoir des erreurs dans ce document et d'&ecirc;tre vigilant. Je vous conseille de 
 lire tout fichier README inclus dans chacun des logiciels dont il sera
 question dans ce document pour de plus amples informations. Je tenterai de
 mon c&ocirc;t&eacute; de conserver ce document &agrave; jour et sans erreurs autant que possible.
 Les versions des logiciels sont les versions disponibles au moment o&ugrave; ce
 document a &eacute;t&eacute; &eacute;crit.

En aucun cas les auteurs des logiciels cit&eacute;s dans ce document ou moi-m&ecirc;me
n'offrons de protection contre ce que vous faites. Si vous utilisez ce 
logiciel, m&ecirc;me de la fa&ccedil;on d&eacute;crite dans ce document, et que cela cause 
des probl&egrave;mes sur votre r&eacute;seau, alors vous seul en endosserez la responsabilit&eacute;.
J'ai inclus cet avertissement parce que la mise en oeuvre et la configuration
d'un r&eacute;seau IPX n'est pas toujours ais&eacute;e et que cela peut engendrer 
d'ind&eacute;sirables interactions avec les autres routeurs ou serveurs de fichiers
si vous ne faites pas attention. J'ai &eacute;galement inclus cet avertissement
parce qu'une personne suffisamment malchanceuse pour avoir appris cette le&ccedil;on
de la mani&egrave;re douloureuse me l'a demand&eacute;.
<p>
NdT : Le traducteur, qui n'est pas un sp&eacute;cialiste des r&eacute;seaux Netware(tm), &eacute;met 
les m&ecirc;mes r&eacute;serves que l'auteur. 



<sect><heading>Documentation sur le m&ecirc;me sujet
	
 <p>
 Ce document pr&eacute;sume que vous savez compiler un noyau Linux avec les options 
 r&eacute;seau appropri&eacute;es et que vous savez vous servir des outils de configuration
de base des r&eacute;seaux comme <tt>ifconfig</tt> et <tt>route</tt>. Si ce n'est pas
 le cas, je vous conseille de lire le 
<url url="NET-3-HOWTO.html" name="NET-3-HOWTO">
lorsque le pr&eacute;sent document y fait r&eacute;f&eacute;rence.
<p>
Les autres documents HOWTO de Linux qui pourraient vous &ecirc;tre utiles sont :
<p>
L'<url url="Ethernet-HOWTO.html" name="Ethernet-HOWTO"> qui d&eacute;crit 
en d&eacute;tail la mani&egrave;re 
de configurer un port Ethernet pour Linux.

Le <url url="PPP-HOWTO.html"
name="PPP-HOWTO"> puisque la gestion d'IPX est impl&eacute;ment&eacute;e 
&agrave; partir de la version 2.2.0d de PPP pour Linux.


<sect1><heading>Nouvelles versions de ce document

<p>
Si votre copie de ce document date de plus de deux mois, je vous
recommande fortement d'obtenir une version plus r&eacute;cente. Les supports
r&eacute;seau pour Linux changent tr&egrave;s rapidement avec de nouvelles
fonctions et am&eacute;liorations, en cons&eacute;quence de quoi ce document change lui aussi fr&eacute;quemment. La
derni&egrave;re version de ce document est disponible en version anglaise par le
biais d'un ftp anonyme sur :

<tt>&lt;ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/IPX-HOWTO&gt;</tt>
ou :
<tt>&lt;ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/other-formats/IPX-HOWTO{-html.tar,ps,dvi}.gz&gt;</tt>



ou

sur le serveur du <url url="http://metalab.unc.edu/LDP/linux.html"
name="Linux Documentation Project"> &agrave; la page :
<url url="http://metalab.unc.edu/LDP/HOWTO/IPX-HOWTO.html" name="IPX-HOWTO">
ou sinon aupr&egrave;s de l'auteur,
<tt>&lt;kevin@pricetrak.com&gt;</tt>.
 Il peut aussi &ecirc;tre post&eacute; dans les 
 forums de discussion <tt>comp.os.linux.networking</tt>,
<tt>comp.os.linux.answers</tt> et
<tt>news.answers</tt> de temps &agrave; autre.
<p>
NdT :
La version fran&ccedil;aise initialement traduite par Jean-Christophe Arnu 
est disponible de la m&ecirc;me mani&egrave;re :

<url url="ftp://ftp.lip6.fr/pub/Linux/french/docs/HOWTO/IPX-HOWTO.gz"
name="lip6">

<sect1><heading>Votre avis

<p>
Envoyez-moi tout commentaire, am&eacute;liorations ou suggestions :
<tt/&lt;kevin@pricetrak.com>/. Si j'obtiens des retours
d'informations rapidement je pourrai am&eacute;liorer ou corriger ce document 
dans les plus brefs d&eacute;lais. Si
vous rencontrez un quelconque probl&egrave;me avec ce document, veuillez m'en faire
part directement par courrier électronique car je peux rater des informations post&eacute;es dans les
forums de discussion.

<sect1><heading>Liste de diffusion

<p>
Il existe une liste dans laquelle on discute des diff&eacute;rents logiciels IPX
pour Linux d&eacute;crits dans ce document. Vous pouvez vous y abonner en 
envoyant un courrier &agrave; <tt>&lt;listserv@sh.cvut.cz&gt;</tt> avec <tt>add
linware</tt> dans le corps du message. Vous envoyez vos contributions
par courrier &agrave; <tt>&lt;linware@sh.cvut.cz&gt;</tt>. Je consulte
r&eacute;guli&egrave;rement cette liste.
<p>
 Cette liste est archiv&eacute;e
sur le site <url url="http://www.kin.vslib.cz/hypermail/linware/"
name="www.kin.vslib.cz">


<sect><heading>Quelques termes utilis&eacute;s dans ce document

<p>
Vous rencontrerez souvent au cours de ce document les termes <tt>client</tt> et
<tt>serveur</tt>. Ce sont des termes sp&eacute;cifiques dont la d&eacute;finition est bien
connue mais j'ai un peu g&eacute;n&eacute;ralis&eacute; leur d&eacute;finition :
<descrip>
	<tag>client</tag> C'est la machine ou le programme qui initie une
	   action ou une connexion dans le but de pouvoir utiliser des 
	   services ou des donn&eacute;es.

	<tag>serveur</tag>C'est la machine ou le programme qui accepte des 
	   connexions d'une ou plusieurs machines distantes et qui leur fournit 
	   un service ou des donn&eacute;es.
</descrip>

Ces d&eacute;finitions ne sont pas tr&egrave;s compl&egrave;tes, mais elles
permettent de distinguer les participants des protocoles de
bout en bout tels que <EM>PPP</EM> et <EM>SLIP</EM> qui n'ont pas
r&eacute;ellement de client et de serveur.

Vous lirez aussi les termes suivants :
<descrip>
      <tag>Bindery</tag>
           La <EM>bindery</EM> est une base de donn&eacute;es sp&eacute;cialis&eacute;e qui 
	   stocke sur un serveur de fichiers Novell des informations 
	   concernant la configuration du r&eacute;seau. Les clients Netware
	   peuvent interroger la <EM>bindery</EM> pour obtenir de 
	   l'information sur les services disponibles, sur le routage
	   et sur les utilisateurs.
      <tag>Type de Trame (Frame type)</tag>
           d&eacute;crit le protocole utilis&eacute; pour transporter
	   les paquets de donn&eacute;es IPX (et IP) &agrave; travers vos segments Ethernet.
	   On en rencontre couramment quatre :
<descrip>
      <tag>Ethernet_II</tag>
           C'est une version raffin&eacute;e du standard Ethernet original DIX.
	   Novell s'est vu attribuer un identifiant de protocole (protocol
	   id) formel. Cela signifie que IPX et IP peuvent coexister
	   joyeusement dans un environnement Ethernet_II.
	   Ce type de trame est g&eacute;n&eacute;ralement utilis&eacute; dans les environnements
	   Novell et c'est un bon choix.
      <tag>802.3</tag>
           C'est un protocole IEEE d&eacute;finissant un m&eacute;canisme &agrave; d&eacute;tection
	   de porteuse et acc&egrave;s multiple avec d&eacute;tection des collisions
	   (Carrier Sense Multiple Access with Collision Detection
	   (CSMA/CD)). Il est bas&eacute; sur le standard Ethernet original DIX,
	   avec une importante modification. Le champ de type (protocol id)
	   a &eacute;t&eacute; transform&eacute; en champ de longueur &agrave; la place. C'est pour cette
	   raison que l'on ne devrait pas utiliser IPX avec ce type de trame.
	   IEEE 802.3 a &eacute;t&eacute; con&ccedil;u pour transporter des trames IEEE 802.2
	   <bf>seulement</bf>, mais il existe des impl&eacute;mentations qui
	   l'utilisent pour transporter des trames IPX directement et
	   cela fonctionne quand m&ecirc;me. Evitez-le &agrave; moins de vouloir vous
	   connecter &agrave; un r&eacute;seau d&eacute;j&agrave; configur&eacute; pour l'utiliser.
      <tag>802.2</tag>
           C'est un protocole IEEE qui d&eacute;finit un ensemble de proc&eacute;dures
	   de contr&ocirc;le de la couche liaison logique. Il fournit une
	   fa&ccedil;on simple de faire coexister plusieurs protocoles mais
	   reste limit&eacute; dans ce sens. Novell utilise un SAP (Service
	   Address Point, &eacute;quivalent d'un identifiant de protocole) non
	   officiel. Mais comme tout le monde fait pareil, cela n'a 
	   encore jamais pos&eacute; de probl&egrave;mes.
      <tag>SNAP</tag>
           SNAP est le protocole d'acc&egrave;s au sous-r&eacute;seau (Sub Network
	   Access Protocol). Ce protocole est impl&eacute;ment&eacute; au-dessus de
	   802.3 et 802.2. Il &eacute;tend les capacit&eacute;s multiprotocole de
	   802.2 et pr&eacute;sente une certaine compatibilit&eacute; avec les trames
	   Ethernet et Ethernet_II existantes.
</descrip>
      <tag>IPX</tag>
	   Internet Packet eXchange est un protocole utilis&eacute; par la soci&eacute;t&eacute;
	   Novell fournissant un support d'interconnexion pour leur produit
	   NetWare(tm). IPX a une fonction similaire au protocole IP
           utilis&eacute; par la communaut&eacute; TCP/IP.

       <tag>Adresse IPX d'un r&eacute;seau (IPX network address)</tag>
           Il s'agit d'un nombre qui identifie de mani&egrave;re unique un r&eacute;seau 
	   IPX particulier. La notation courante de cette adresse est
           exprim&eacute;e en hexad&eacute;cimal. On peut donner comme exemple : 0x23a91002

	<tag>R&eacute;seau IPX interne (IPX Internal network)</tag>
	   C'est un r&eacute;seau IPX virtuel. Il est virtuel car il ne correspond &agrave;
           aucun r&eacute;seau physique. Il est utilis&eacute; pour fournir un moyen unique
           d'identifier et d'adresser une machine IPX. 
           Cette adresse est cod&eacute;e de la m&ecirc;me mani&egrave;re qu'une adresse IPX 
	   de r&eacute;seau. En g&eacute;n&eacute;ral, ce n'est utile que pour les machines IPX
	   qui sont physiquement connect&eacute;es &agrave; plusieurs r&eacute;seaux IPX comme 
	   les serveurs de fichiers. 

	<tag>RIP</tag>
	   Routing Information Protocol est un protocole utilis&eacute; pour
	   informer automatiquement  les diff&eacute;rents ordinateurs
	   pr&eacute;sents sur un r&eacute;seau IPX des
	   diff&eacute;rentes routes qui lui sont applicables. Il est
           fonctionnellement identique au RIP utilis&eacute; au sein de la communaut&eacute;
	   TCP/IP.

	<tag>NCP</tag>
	   Netware Core Protocol est un protocole de syst&egrave;me de fichiers
           r&eacute;seau cr&eacute;&eacute; par la soci&eacute;t&eacute; Novell pour leur produit NetWare(tm). On
           peut comparer les fonctionnalit&eacute;s de NCP &agrave; NFS utilis&eacute; par la
           communaut&eacute; TCP/IP.

        <tag>SAP</tag>
	   Service Advertisement Protocol est un protocole cr&eacute;&eacute; par la soci&eacute;t&eacute;
           Novell. Il est utilis&eacute; pour avertir des services fournis sur le
           r&eacute;seau dans un environnement NetWare(tm).

	<tag>Adresse Physique (hardware address)</tag>
	   C'est un nombre qui identifie de mani&egrave;re unique une machine sur un
	   r&eacute;seau physique au niveau de la couche media (couche MAC).
	   L'adresse Ethernet en est un exemple.
	   Une adresse Ethernet est g&eacute;n&eacute;ralement cod&eacute;e par six valeurs 
	   hexad&eacute;cimales s&eacute;par&eacute;es par deux points : ex. 00:60:8C:C3:3C:0F.

	<tag>route</tag>
	   La <em>route</em> est le chemin emprunt&eacute; par les paquets 
	   de donn&eacute;es au travers d'un r&eacute;seau pour atteindre leur destination.
</descrip>

<sect><heading>Une br&egrave;ve discussion sur la topologie des r&eacute;seaux IPX
<p>
C'est une explication tr&egrave;s simplifi&eacute;e pour les personnes qui d&eacute;couvrent IPX.
Les grands r&eacute;seaux mettront probablement &agrave; mal beaucoup des r&egrave;gles 
expliqu&eacute;es ici. Dans les r&eacute;seaux IPX complexes, l'administrateur devrait toujours
&ecirc;tre consult&eacute;.
<p>
Les r&eacute;seaux IPX s'appuient sur un proc&eacute;d&eacute; de <em/r&eacute;seaux/ 
num&eacute;rot&eacute;s, &agrave; la diff&eacute;rence de IP qui insiste plus sur les adresses
d'<em/interface/. Un r&eacute;seau est un ensemble d'&eacute;quipements connect&eacute;s &agrave; un
m&ecirc;me segment de r&eacute;seau local (LAN) et <em/utilisant le m&ecirc;me type de trame/.
Des types de trame diff&eacute;rents sur le m&ecirc;me segment de r&eacute;seau local sont 
trait&eacute;s comme des r&eacute;seaux s&eacute;par&eacute;s.
<p>
Chaque r&eacute;seau doit recevoir un num&eacute;ro qui soit unique au travers de toute l'interconnexion 
de r&eacute;seaux (internetwork). Ceci est habituellement r&eacute;alis&eacute; par un serveur
Netware(tm), mais peut facilement &ecirc;tre r&eacute;alis&eacute; par Linux. Les clients IPX
recoivent ce num&eacute;ro du serveur lors de leur d&eacute;marrage, ils ont juste besoin de
conna&icirc;tre le type de trame correct.
<p>
Le routage entre les r&eacute;seaux est habituellement r&eacute;alis&eacute; en mettant deux
cartes r&eacute;seaux dans un serveur. Ce serveur fait tourner le protocole RIP qui maintient
une table de routage pour l'interconnexion de r&eacute;seaux. P&eacute;riodiquement, cette table
de routage est &eacute;chang&eacute;e entre les serveurs. En peu de temps, chaque serveur
'd&eacute;couvre' la topologie de l'interconnexion de r&eacute;seaux.
<p>
Si vous souhaitez uniquement utiliser les services d'un serveur NetWare existant, vous pouvez
utiliser <tt/ipx_configure/ (section 7.1) pour d&eacute;finir automatiquement les interfaces
en utilisant des requ&ecirc;tes de "broadcast" pour rechercher un serveur. Si cela &eacute;choue
ou que vous voulez fournir des services IPX, vous devrez d&eacute;finir les interfaces 
manuellement en utilisant <tt/ipx_interface/ ou <tt/mars_nwe/.


<sect><heading>Les fichiers relatifs &agrave; IPX dans le r&eacute;pertoire <tt>/proc</tt>

<p>
Il existe un certain nombre de fichiers relatifs au support d'IPX par
Linux dans le r&eacute;pertoire <tt>/proc</tt> :

<descrip>
	<tag>/proc/net/ipx_interface</tag>
	   Ce fichier contient des informations au sujet des interfaces IPX
           configur&eacute;es sur votre machine. Elles peuvent avoir &eacute;t&eacute; configur&eacute;es
           manuellement par commande ou automatiquement d&eacute;tect&eacute;es et 
	   configur&eacute;es.

	<tag>/proc/net/ipx_route</tag>
	   Ce fichier contient une liste de routes existantes dans la table de
           routage IPX. Ces routes peuvent avoir &eacute;t&eacute; ajout&eacute;es &agrave; la main par
           l'interm&eacute;diaire de commandes ou automatiquement par le d&eacute;mon de
	   routage IPX.

	<tag>/proc/net/ipx</tag>
	   Ce fichier contient la liste des sockets IPX qui sont ouverts sur la
           machine au moment de l'&eacute;dition du fichier.
</descrip>

<sect><heading>Les outils IPX de Greg Page

<p>
 Greg Page <tt>&lt;greg@caldera.com&gt;</tt> de la soci&eacute;t&eacute; Caldera 
Incorporated a &eacute;crit un ensemble d'outils de configuration pour IPX et a 
am&eacute;lior&eacute; le support IPX du noyau Linux.
<p>
Les am&eacute;liorations du noyau permettent de configurer un syst&egrave;me Linux comme 
pont ou routeur IPX parfaitement fonctionnel. Le support
d'IPX am&eacute;lior&eacute; a d&eacute;j&agrave; &eacute;t&eacute; incorpor&eacute; dans le corps du noyau de distribution. 
Vous en &ecirc;tes donc certainement &eacute;quip&eacute;.
<p>
	Ces outils de configuration  vous permettent de
param&eacute;trer vos p&eacute;riph&eacute;riques r&eacute;seau pour le
support d'IPX et de mettre en place le routage pour ce protocole. D'autres
fonctionnalit&eacute;s sont aussi incluses dans ce paquetage.
Ces outils sont disponibles sur
<url url="ftp://metalab.unc.edu/pub/Linux/system/filesystems/ncpfs/ipx.tgz"
 name="metalab.unc.edu">.
<p>
NdT : les lecteurs connectés en France pourront utiliser un site miroir
comme <url url="ftp://ftp.lip6.fr/" name="ftp.lip6.fr">

<sect1><heading>Les outils IPX en d&eacute;tails

<p>
<descrip>
	<tag>ipx_interface</tag>
	   Cette commande est utilis&eacute;e pour ajouter, enlever ou contr&ocirc;ler 
manuellement des propri&eacute;t&eacute;s d'IPX sur un p&eacute;riph&eacute;rique r&eacute;seau donn&eacute;. Ce dernier
est souvent un p&eacute;riph&eacute;rique Ethernet comme <tt>eth0</tt>. 
Au moins une interface IPX doit &ecirc;tre d&eacute;clar&eacute;e comme 
interface <em>primaire</em> par le param&egrave;tre <tt>-p</tt> suivi du nom
de l'interface. Par exemple, l'attribution des
capacit&eacute;s IPX au p&eacute;riph&eacute;rique eth0, en tant que premi&egrave;re interface
utilisant le type de trame IEEE 802.2 et l'adresse r&eacute;seau
<tt>39ab0222</tt> se fera ainsi :
<tscreen><verb>
		# ipx_interface add -p eth0 802.2 0x39ab0222
</verb></tscreen>

<p>
Si le type de trame diff&egrave;re des serveurs NetWare(tm) sur ce r&eacute;seau, ils
vous ignoreront d&eacute;lib&eacute;rement. Si le type de trame est correct, mais que
le num&eacute;ro de r&eacute;seau diff&egrave;re, ils vous ignoreront encore, mais 
afficheront des messages sur la console du serveur Netware(tm). Ce dernier cas vous
promet d'avoir des probl&egrave;mes avec votre administrateur NetWare et peut perturber
les clients NetWare en cours d'utilisation.
<p>

Si vous obtenez une erreur en faisant tourner ce programme et que vous
n'avez pas encore configur&eacute; TCP/IP, alors vous allez devoir d&eacute;marrer
manuellement l'interface <tt>eth0</tt> en utilisant la commande :
<tscreen><verb>
                # ifconfig eth0 up
</verb></tscreen>


	<tag>ipx_configure</tag>
	   Cette commande permet ou interdit la configuration automatique de
l'interface et la mise en oeuvre de l'interface primaire.
<descrip>
 <tag><tt>--auto_interface</tt></tag> 
      vous permet de d&eacute;cider si de nouveaux p&eacute;riph&eacute;riques r&eacute;seau doivent 
      &ecirc;tre automatiquement configur&eacute;s comme des p&eacute;riph&eacute;riques IPX ou pas. 
<tag><tt>--auto_primary</tt></tag>
     vous accorde le droit de d&eacute;cider si les logiciels IPX doivent 
     s&eacute;lectionner une interface primaire ou non. Des probl&egrave;mes ont &eacute;t&eacute;
report&eacute;s sur l'utilisation de ceci avec des clients Windows 95 sur le r&eacute;seau.
</descrip>
Par exemple si l'on d&eacute;sire une configuration automatique des
interfaces et une mise en oeuvre automatique de l'interface primaire on
utilisera la ligne suivante 
<tscreen><verb>
	# ipx_configure --auto_interface=on --auto_primary=on
</verb></tscreen>

	<tag>ipx_internal_net</tag>
	Cette commande permet de mettre en place, de configurer
ou retirer une
adresse de r&eacute;seau interne. Cette adresse de r&eacute;seau interne est
optionnelle, mais lorsqu'elle est configur&eacute;e elle est toujours
consid&eacute;r&eacute;e comme interface primaire. Pour configurer une adresse
r&eacute;seau IPX ayant le num&eacute;ro <tt>ab000000</tt> sur le noeud IPX
<tt>1</tt> vous devez utiliser:
<tscreen><verb>
# ipx_internal_net add 0xab000000 1
</verb></tscreen>

       <tag>ipx_route</tag>
           Cette commande permet de modifier manuellement la table de routage
IPX. On peut prendre comme exemple l'ajout d'une route vers le r&eacute;seau IPX
<tt>39ab0222</tt> via un routeur ayant le num&eacute;ro de noeud
<tt>00608CC33C0F</tt> sur le r&eacute;seau
IPX 39ab0108 :
<tscreen><verb>
# ipx_route add 0x39ab0222 0x39ab0108 0x00608CC33C0F
</verb></tscreen>
</descrip>

<sect><heading>Configurer votre machine Linux comme routeur IPX

<p>
 Si vous avez un certain nombre de segments IPX que vous souhaitez
interconnecter, vous aurez besoin d'un routeur. Dans l'environnement Novell,
la propagation d'au moins deux types d'informations est absolument
primordiale sur le r&eacute;seau : d'un c&ocirc;t&eacute;, les informations de routage sur le r&eacute;seau
qui sont propag&eacute;es en utilisant le RIP Novell, de l'autre c&ocirc;t&eacute;, les informations
d'avertissement du syst&egrave;me qui sont v&eacute;hicul&eacute;es par le SAP Novell. Tout routeur
doit pouvoir traiter et comprendre ces deux types de protocoles pour &ecirc;tre
utilis&eacute; dans toutes les situations.
<p>
Linux poss&egrave;de un support pour ces deux protocoles et peut donc &ecirc;tre 
ais&eacute;ment configur&eacute; pour r&eacute;aliser un routeur IPX compl&egrave;tement compatible
Novell. 
<p>
 Le support IPX du noyau de Linux g&egrave;re r&eacute;ellement le routage des paquets
entre les interfaces, mais il le fait selon les r&egrave;gles donn&eacute;es dans une table
de routage. Linux n&eacute;cessite un programme impl&eacute;mentant les protocoles RIP et SAP de
Novell afin que la table de routage soit correctement construite et maintenue
p&eacute;riodiquement, pour qu'elle refl&egrave;te bien les changements d'&eacute;tat du
r&eacute;seau. 
<p>
Volker Lendecke <tt>&lt;lendecke@namu01.gwdg.de&gt;</tt> a d&eacute;velopp&eacute;
un d&eacute;mon de routage <em/ipxrid/ qui fera tout &ccedil;a pour vous.
Le paquetage <em/mars_nwe/ mentionn&eacute; plus loin inclut un autre d&eacute;mon de routage.

<p>
Vous pouvez trouver <em>ipxrid</em>  sur :
<url url="ftp://metalab.unc.edu/pub/Linux/system/filesystems/ncpfs/ipxripd-0.7.tgz"
name="metalab.unc.edu">

ou directement chez Volker :

<url url="ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/ipxripd-0.7.tgz"
name="ftp.gwdg.de">

<p>
 Configurer une machine Linux en routeur IPX est une op&eacute;ration tr&egrave;s
lin&eacute;aire. Proc&eacute;dez comme suit :
<enum>
<item>Construisez le noyau avec les supports d'IPX, d'Ethernet et le syst&egrave;me
de fichiers <tt>/proc</tt>
<item>Procurez-vous, compilez et installez le d&eacute;mon <em>ipxd</em>.
<item>Red&eacute;marrez la machine avec son nouveau noyau et assurez-vous que  chacune
des cartes Ethernet ont &eacute;t&eacute; correctement d&eacute;tect&eacute;es et qu'il n'y a pas de
conflits mat&eacute;riels.
<item>Mettez en place le protocole IPX sur chacune des interfaces en utilisant la
commande <tt>ipx_interface</tt> d&eacute;crite ci-dessus.
<item>Lancez le d&eacute;mon <em>ipxd</em>.
</enum>
  En consid&eacute;rant le simple r&eacute;seau suivant :

<verb>
   IPX Addr: 0x01000000  802.2
  |--------------------------|
                |
                \_________________________
                                          \         Routeur Linux
   IPX Addr: 0x02000000  802.2             \
  |--------------------------|              \   eth0/-----------\
                |                            \--====|           |
                \_________________________          | IPX route |
                                          \     eth1|  Table    |
   IPX Addr: 0x03000000  etherII           \----====|    ^      |
  |--------------------------|                      |    |      |
                |                               eth2|  IPXd     |
                \______________________________/====|           |
                                                    |  SAPd     |
   IPX Addr: 0x04000000  etherII                eth3|           |
  |--------------------------|                 /====|           |
                |                              |    \___________/
                \______________________________/

</verb>
<p>
    La configuration pour le r&eacute;seau ci-dessus ressemblera &agrave; :
<tscreen><verb>
       # ipx_interface add eth0 802.2 0x0100000000
       # ipx_interface add eth1 802.2 0x0200000000
       # ipx_interface add eth2 etherii 0x0300000000
       # ipx_interface add eth3 etherii 0x0400000000
       # ipxd
</verb></tscreen>
<p>
 Vous devrez attendre un petit moment pour v&eacute;rifier le fichier
<tt>/proc/net/ipx_route</tt> (<tt>cat /proc/net/ipx_route</tt>). Vous devriez retrouver
les routes IPX inh&eacute;rentes &agrave; votre configuration du syst&egrave;me et toutes les
configurations apprises par le contact avec les autres routeurs sur le r&eacute;seau
le cas &eacute;ch&eacute;ant.

<sect1><heading>Dois-je utiliser un r&eacute;seau interne ?
<p>
Novell a une fonctionnalit&eacute; appel&eacute;e r&eacute;seau interne, qui est utilis&eacute;e pour
simplifier le routage lorsqu'une machine est connect&eacute;e &agrave; plus d'un p&eacute;riph&eacute;rique
r&eacute;seau. C'est utile dans le cas d'un serveur de fichiers connect&eacute; &agrave; plusieurs
r&eacute;seaux, en ce sens qu'une seule route doit &ecirc;tre utilis&eacute;e pour atteindre le
serveur, quel que soit le r&eacute;seau &agrave; partir duquel on op&egrave;re.

<p>
Dans le cas d'une configuration o&ugrave; vous ne fa&icirc;tes pas tourner un serveur
de fichiers mais seulement un routeur IPX, il n'est pas simple de r&eacute;pondre.
Des t&eacute;moignages rapportent que l'utilisation de IPX/PPP marche "mieux"
si vous utilisez &eacute;galement un r&eacute;seau interne.

<p>
Dans tous les cas, c'est facile &agrave; faire, mais cela peut n&eacute;cessiter de 
recompiler le noyau. Lorsque vous en &ecirc;tes au <tt>make config</tt>
du noyau, vous devez r&eacute;pondre Oui (<tt>y</tt>) &agrave; la question
<tt>Full internal IPX network</tt> comme suit :

<tscreen><verb>
      ...
      ...
      Full internal IPX network (CONFIG_IPX_INTERN) [N/y/?] y
      ...
      ...
</verb></tscreen>

Pour configurer le r&eacute;seau interne, utilisez la commande
<em>ipx_internal_net</em> d&eacute;j&agrave; d&eacute;crite dans la section outils IPX.
La principale pr&eacute;caution &agrave; prendre est de s'assurer que l'adresse IPX
r&eacute;seau que vous choisissez est unique sur votre r&eacute;seau et qu'aucune
autre machine ou r&eacute;seau ne l'utilise.

<sect><heading>Configurer votre machine Linux en client NCP

<p>

  Si vous &ecirc;tes un utilisateur d'un r&eacute;seau
h&eacute;t&eacute;rog&egrave;ne o&ugrave; les protocoles IP et
IPX sont utilis&eacute;s, il est probable que vous ayez &agrave; un moment ou &agrave; un autre,
besoin d'acc&eacute;der &agrave; partir de votre machine Linux, &agrave; des donn&eacute;es stock&eacute;es sur
un serveur de fichier Novell de ce r&eacute;seau. Novell a longtemps propos&eacute; un
ensemble logiciel NFS pour leurs serveurs de fichiers qui permettaient cet
acc&egrave;s. Cependant si le site auquel vous &ecirc;tes connect&eacute; est petit, le nombre de
personnes n&eacute;cessitant cet type d'acc&egrave;s ne justifie peut-&ecirc;tre pas l'achat de ces
outils logiciels commerciaux.
<p>
  Volker Lendecke <tt>&lt;lendecke@namu01.gwdg.de&gt;</tt> a &eacute;crit un module
 du syst&egrave;me de
fichiers du noyau Linux supportant un sous-ensemble limit&eacute; du protocole Novell
NCP qui permet de monter une partition Novell dans votre syst&egrave;me de
fichiers
Linux sans avoir recours &agrave; quelque produit additionnel sur votre
serveur de fichiers. 
<p>
  Volker a appel&eacute; cet ensemble <em>ncpfs</em>. Ce dernier a &eacute;t&eacute; 
r&eacute;alis&eacute; &agrave; partir des
informations tir&eacute;es principalement du livre "Netzwerkprogrammierung in C" de
Manfred Hill et Ralf Zessin (de plus amples informations sont donn&eacute;es dans le
fichier README contenu dans l'ensemble <em>ncpfs</em>). 
<p>
Ce logiciel permet &agrave; Linux d'&eacute;muler une station de travail Novell normale
pour ce qui concerne la partie fichiers. Un petit utilitaire d'impression
est &eacute;galement inclus pour vous permettre d'imprimer dans les queues 
d'impression Novell (ceci est document&eacute; plus loin dans la section client
d'impression). Le paquetage <em>ncpfs</em> fonctionne avec les serveurs
de fichier Novell version 3.x et sup&eacute;rieurs, il ne fonctionne pas avec les
serveurs de fichier Novell version 2.x . Le client <em>ncpfs</em> ne
fonctionne qu'avec les produits r&eacute;ellement compatibles Novell, mais
malheureusement, certains produits qui se disent compatibles ne le sont
pas suffisamment. Pour utiliser <em>ncpfs</em> avec Novell 4.x, 
il est pr&eacute;f&eacute;rable d'utiliser le serveur Novell en mode d'emulation
de <em/bindery/. Le support de la NDS est un ajout tr&egrave;s r&eacute;cent
de <em/ncpfs/ et est toujours en version bêta. De plus son utilisation
peut &ecirc;tre interdite dans votre pays en raison de l'inclusion
de technologie soumise &agrave; brevet. 
<p>
  
<sect1><heading> Comment r&eacute;cup&eacute;rer <bf><em>ncpfs</em></bf>
<p>
 L'ensemble <em>ncpfs</em> a &eacute;t&eacute; d&eacute;velopp&eacute; afin d'&ecirc;tre compil&eacute; avec les noyaux de
Linux version <tt>1.2.13</tt> ou plus r&eacute;cents que <tt>1.3.71</tt> (ce qui
inclut <tt>2.x.x</tt>). Si vous n'utilisez pas
un de ces noyaux vous devrez vous en procurer et l'utiliser. 
Le <url url="kernel-HOWTO.html" 
name="Kernel-HOWTO"> d&eacute;crit comment faire cela en d&eacute;tail.

<p>
 Vous pouvez vous procurer l'ensemble <em>ncpfs</em> par ftp anonyme sur le site
de Volker, <url url="ftp://ftp.gwdg.de/pub/ncpfs/" name="ftp.gwdg.de">, 
sur <url url="ftp://metalab.unc.edu/pub/Linux/system/Filesystems/ncpfs"
	name="metalab.unc.edu"> 
ou sur un site miroir. La version &agrave; jour au moment o&ugrave; j'&eacute;cris ces lignes est
<tt>ncpfs-2.0.11.tgz</tt> ou <tt/ncpfs-2.2.0.tgz/ pour le support de la NDS.

<sect1><heading> Compiler <bf><em>ncpfs</em></bf> pour les noyaux 1.2.13
   
<p>
<descrip>
<tag>
    Compiler un noyau Linux avec les supports d'Ethernet et IPX</tag>
	La premi&egrave;re chose que vous ayez &agrave; faire est de v&eacute;rifier que votre
	noyau a &eacute;t&eacute; compil&eacute; avec l'option IPX. Dans la version <tt>1.2.13</tt> du
	noyau, vous vous assurerez que la r&eacute;ponse &agrave; la question '<tt>The IPX
	Protocol</tt>' est <tt>Y</tt> (yes) comme illustr&eacute; :
<verb>
         ...
         ...
        Assume subnets are local (CONFIG_INET_SNARL) [y]
        Disable NAGLE algorithm (normally enabled) (CONFIG_TCP_NAGLE_OFF) [n]
        The IPX protocol (CONFIG_IPX) [n] y
        *
        * SCSI support
         ...
         ...
</verb>
  Vous devez aussi v&eacute;rifier que vous avez inclus le gestionnaire appropri&eacute;
  pour votre carte Ethernet. Si vous ne savez pas comment proc&eacute;der, je vous
  conseille de lire l'Ethernet-HOWTO
  <url url="Ethernet-HOWTO.html" name="Ethernet-HOWTO">.
<p>  
  Vous pourrez alors proc&eacute;der &agrave; la compilation. Je vous rappelle que le
  lancement de <em>lilo</em> pour installer le nouveau noyau est obligatoire une fois
  la compilation termin&eacute;e.

<tag>D&eacute;compresser les programmes <em>ncpfs</em></tag>
<verb>
        # cd /usr/src
        # tar xvfz ncpfs-2.0.11.tgz
	# cd ncpfs
</verb>
<tag>V&eacute;rifier le Makefile</tag>
Si vous avez l'intention d'utiliser <em>kerneld</em> pour charger automatiquement
le module noyau <em>ncpfs</em>, alors vous devez d&eacute;commenter la ligne du 
<tt>Makefile</tt> qui fait r&eacute;f&eacute;rence &agrave; <tt>KERNELD</tt>. Si vous n'&ecirc;tes pas
certain de comprendre tout ce que cela signifie, vous devriez lire le
  <url url="Kernel-HOWTO.html" 
name="Kernel-HOWTO"> pour vous familiariser avec la configuration des 
modules noyau.

<tag>Compiler les outils <em>ncpfs</em></tag>
	Le logiciel doit se compiler proprement sans qu'une configuration ne
	soit n&eacute;cessaire :
<verb>
	# make
</verb>

<tag>Copier les outils IPX &agrave; un endroit utile de votre arborescence</tag>
	Apr&egrave;s cette compilation, vous trouverez tous les outils dont vous
	aurez besoin dans le r&eacute;pertoire <tt>ncpfs/bin</tt>. 
Vous pouvez utiliser

<tscreen><verb>
	 # make install
</verb></tscreen>
pour installer les outils dans le choix de r&eacute;pertoires de Volker.
Si votre syst&egrave;me est bas&eacute; sur ELF, alors vous devrez taper <tt>ldconfig -v</tt>
pour vous assurer que la biblioth&egrave;que partag&eacute;e est accessible.

<tag>Copier le module <em>npfs.o</em> &agrave; un endroit appropri&eacute; si n&eacute;cessaire.</tag>
Apr&egrave;s la compilation d'un noyau <tt>1.2.x</tt>, vous trouverez aussi dans le 
r&eacute;pertoire <tt>ncpfs/bin</tt> le fichier <tt>ncpfs.o</tt>
	Il s'agit du module <em>ncpfs</em> du
	noyau. Je vous conseille de copier ce fichier &agrave; un endroit utile. Par
	exemple sur ma distribution <em>Debian</em> de Linux, je l'ai copi&eacute; 
dans le	r&eacute;pertoire <tt>/lib/modules/1.2.13/fs</tt> et j'ai ajout&eacute; ncpfs dans
le fichier <tt>/etc/modules</tt> de mani&egrave;re &agrave; ce qu'il soit automatiquement
	charg&eacute; lors du d&eacute;marrage de Linux. Si vous utilisez d'autres distributions,
	vous devrez trouver o&ugrave; les modules sont g&eacute;n&eacute;ralement plac&eacute;s et copier
	le fichier <tt>ncpfs.o</tt> &agrave; cet endroit, ou sinon, copiez-le dans le
r&eacute;pertoire <tt>/etc</tt>. Utilisez la commande suivante afin de charger le
	module en m&eacute;moire manuellement :
	<verb>
	# insmod ncpfs.o
        </verb>
</descrip>

<sect1><heading>Compiler <bf><em>ncpfs</em></bf> pour des noyaux 1.3.71++/2.0.*
<p>
Pour la derni&egrave;re version de <em>ncpfs</em>, vous devez utiliser un noyau 1.3.71 
ou sup&eacute;rieur, ce qui inclut les noyaux 2.0.* .
<p>
Le code noyau de <em>ncpfs</em> a &eacute;t&eacute; inclus dans la distribution noyau standard,
ainsi vous n'aurez qu'&agrave; r&eacute;pondre oui (<tt>Y</tt>)
&agrave; la question suivante
lors de la configuration de la compilation :
<tscreen><verb>
Networking options  --->
    ...
    ...
    <*> The IPX protocol
    ...
Filesystems  --->
    ...
    ...
    <*> NCP filesystem support (to mount NetWare volumes)
    ...
</verb></tscreen>

<p>
Vous devez suivre les instructions pour la compilation des noyaux <tt>1.2.*</tt>
afin de cr&eacute;er les outils IPX, mais il n'y aura pas de module &agrave; installer.


<sect1><heading>Configurer et utiliser <bf><em>ncpfs</em></bf>
<p>
<descrip>
<tag>Configurer les logiciels de r&eacute;seau IPX</tag>
	Deux moyens sont possibles pour configurer ceux-ci. Vous pouvez tout
faire manuellement ou vous pouvez laisser le logiciel d&eacute;terminer lui-m&ecirc;me 
ses param&egrave;tres en utilisant
<verb>
	# ipx_configure --auto_interface=on --auto_primary=on
</verb>
Cela devrait fonctionner dans la plupart des situations, mais si ce n'est
pas votre cas, lisez la section "les outils IPX" situ&eacute;e plus loin dans
ce document pour configurer manuellement les logiciels. Des probl&egrave;mes ont
&eacute;t&eacute; rapport&eacute;s concernant cette utilisation au sein de r&eacute;seaux
contenant des clients Windows95.

<tag>Tester la configuration</tag>
<p>
	Maintenant que votre r&eacute;seau IPX est configur&eacute;, vous devriez &ecirc;tre 
capable d'ex&eacute;cuter la commande <em>slist</em> qui vous renverra la liste 
de tous les serveurs de fichiers Novell de votre r&eacute;seau :

<verb>
	# slist
</verb>
	Si la commande slist affiche un message du type :
<tt>ncp_connect: Invalid argument</tt>, cela signifie que votre noyau ne 
supporte pas IPX. V&eacute;rifiez que vous
avez d&eacute;marr&eacute; votre ordinateur avec le noyau appropri&eacute;.
Au d&eacute;marrage du syst&egrave;me, vous devriez voir des messages concernant
"IPX" et "ncpfs".
Si la commande <em>slist</em> ne
renvoie pas la liste de tous les serveurs de fichiers, vous devrez utiliser la
m&eacute;thode de configuration manuelle.

<tag>Monter un volume ou un serveur Novell(tm)</tag>
	Si votre logiciel r&eacute;seau IPX fonctionne correctement, vous devriez
pouvoir monter un volume du serveur de fichiers dans votre syst&egrave;me
de fichiers Linux.
La commande <em>ncpmount</em> est utilis&eacute;e &agrave; ces fins et n&eacute;cessite que vous
sp&eacute;cifiez au moins les informations suivantes :
<enum>
<item>le nom du serveur de fichiers ;
<item>(&eacute;ventuellement) le r&eacute;pertoire du serveur de fichier &agrave; monter ;
<item>l'identifiant de login du serveur de fichiers. Dans le cas o&ugrave; il
a un mot de passe, vous devrez aussi le donner &agrave; cette commande ;
<item> le point de montage, c'est-&agrave;-dire l'endroit o&ugrave; vous voulez que le 
syst&egrave;me de fichiers du serveur Novell soit mont&eacute; dans votre syst&egrave;me de fichiers.
Ce doit &ecirc;tre un r&eacute;pertoire d&eacute;j&agrave; existant.
</enum>
De la m&ecirc;me mani&egrave;re, il existe une commande <em>ncpumount</em> pour d&eacute;monter
un syst&egrave;me de fichiers NCP mont&eacute;. Le syst&egrave;me de fichiers NCP sera d&eacute;mont&eacute;
proprement si vous &eacute;teignez votre machine normalement. Vous n'avez donc pas
&agrave; vous tracasser pour <em>ncpumount</em>er manuellement vos syst&egrave;mes de
fichiers avant un halt ou un shutdown.

Par exemple si l'on veut monter le serveur de fichiers <tt>ACCT_FS01</tt> sous
l'identifiant <tt>guest</tt> qui ne poss&egrave;de pas de mot de passe, dans le
r&eacute;pertoire <tt>/mnt/Accounts</tt>, la commande devrait ressembler &agrave; :
<verb>
     # ncpmount -S ACCT_FS01 /mnt/Accounts -U guest -n
</verb>
Notez que l'utilisation de l'option <tt>-n</tt> indique qu'aucun mot de passe
n'est n&eacute;cessaire pour se loguer. Le m&ecirc;me login avec le mot de
passe <tt>secret</tt> ressemblera &agrave; :
<verb>
     # ncpmount -S ACCT_FS01 /mnt/Accounts -U guest -P secret
</verb>
	Si vous ne sp&eacute;cifiez ni l'option <tt>-n</tt> ni l'option <tt>-P</tt>, 
	le syst&egrave;me vous demandera un mot de passe.

	
<tag>V&eacute;rifier le montage</tag>
	Si le montage est r&eacute;ussi, vous pourrez acc&eacute;der &agrave; tous les 
volumes auxquels l'utilisateur que vous avez sp&eacute;cifi&eacute; a acc&egrave;s. 
Cet acc&egrave;s se fait de mani&egrave;re
transparente comme si le volume se trouvait directement dans le r&eacute;pertoire
sp&eacute;cifi&eacute; lors du montage.  Vous devez &ecirc;tre capable de naviguer
au travers des r&eacute;pertoires de ce volume et d'y trouver des fichiers. 
Vous pouvez &eacute;galement utiliser l'option <tt/-V/ pour monter un seul volume.

NCP ne fournit pas d'identificateur d'utilisateur (uid) ni d'identificateur de
groupe (gid) pour les fichiers. Tous les fichiers auront les permissions
donn&eacute;es au r&eacute;pertoire de montage, restreints par les droits de permissions
sur le serveur Novell. Gardez ce point &agrave; l'esprit
lorsque vous partagerez des montages avec des utilisateurs Linux.


<tag>Configurer le montage automatique des volumes ncp</tag>
      Si vous avez besoin de monter de mani&egrave;re permanente vos partitions
ncp, vous aurez &agrave; mettre les commandes de configuration ci-dessus dans vos
fichiers <em>rc</em> de mani&egrave;re &agrave; ce que le montage soit op&eacute;r&eacute; &agrave; chaque 
d&eacute;marrage de Linux.
Si votre distribution ne fournit pas d&eacute;j&agrave; un moyen de configurer IPX comme
le propose Debian, alors je vous recommande de les placer dans le fichier 
<tt>/etc/rc.local</tt> si vous en avez un.
Vous devrez utiliser un script du type suivant :
<tscreen><verb>

          #
          # Démarrer le systéme de fichiers NCP
          /sbin/insmod /lib/modules/1.2.13/fs/ncpfs.o

          # Configurer le reseau IPX
          ipx_configure --auto_interface=on --auto_primary=on

          # Accéder au volume réservé à l'utilisateur guest sur le serveur de fichiers
          ncpmount -S ACCT_FS01 /mnt/Accounts -U guest -n

          
</verb></tscreen>
        Il existe un autre moyen de configurer les montages NCP. Cela se
fait au moyen du fichier <tt>&dollar;HOME/.nwclient</tt>. Ce fichier
contient les informations sp&eacute;cifiques &agrave; l'utilisateur qui seront
appliqu&eacute;es sur des montages NCP r&eacute;guliers. Vous pourrez
ainsi les monter sans avoir &agrave; sp&eacute;cifier tous les param&egrave;tres &agrave; chaque fois.
<p>
Le format de ce fichier est assez simple :
<tscreen><verb>
     # Le premier paramètre est le 'serveur préféré'
     # utilisé même si vous ne spécifiez pas de serveur lors du
     # lancement du script.
     #
     # L'utilisateur TERRY se loguant sur le serveur de fichiers DOCS_FS01 
     # avec le mot de passe 'password' 
     DOCS_FS01/TERRY password
     #
     # Login Guest sur le serveur de fichiers ACCT_FS01 sans mot de passe.
     ACCT_FS01/GUEST -
</verb></tscreen>
    Vous pourrez, par la suite,  utiliser :
<tscreen><verb>

          $ ncpmount /home/terry/docs

</verb></tscreen>

    afin de monter la partition <tt>DOCS_FS1</tt> avec le login 
<tt>TERRY</tt> sous le r&eacute;pertoire <tt>/home/terry/docs</tt>. 
Vous remarquerez que cette commande a &eacute;t&eacute;
choisie car aucun serveur de fichiers n'a &eacute;t&eacute; sp&eacute;cifi&eacute; dans la commande de
montage. Si la commande suivante avait &eacute;t&eacute; utilis&eacute;e :
<tscreen><verb>
          $ ncpmount -S ACCT_FS01 /home/terry/docs
</verb></tscreen>
    vous seriez entr&eacute; sur le serveur de fichiers <tt>ACCT_FS01</tt> avec le compte 
<tt>GUEST</tt>.
<p>
<bf>Note :</bf> Pour que ce m&eacute;canisme fonctionne, il faut que la permission de
<tt>&dollar;HOME/.nwclient</tt> soit de <tt>0600</tt>, vous devrez utiliser la commande suivante :
<tscreen><verb>
           $ chmod 0600 $HOME/.nwclient
</verb></tscreen>	   
	   
	   Si des utilisateurs non-root ont la permission
d'utiliser ce m&eacute;canisme, la commande <em>ncpmount</em> doit utiliser 
un Set Userid Root, vous aurez donc &agrave; donner ces permissions :
<tscreen><verb>
	# chmod 4755 ncpmount
</verb></tscreen>      

<tag>Tester l'utilitaire nsend</tag>
<em>nsend</em> est un utilitaire pour envoyer des messages &agrave; des utilisateurs
Novell qui est &eacute;galement inclus dans le paquetage. Il s'utilise de la
mani&egrave;re suivante :
<tscreen><verb>
        # nsend pierre coucou ici
</verb></tscreen>
qui va envoyer le message "coucou ici" &agrave; un utilisateur "pierre" d&eacute;j&agrave; logu&eacute;
sur votre serveur de fichiers "primaire" (le premier qui appara&icirc;t dans votre
fichier <tt>.nwclient</tt>). Vous pouvez sp&eacute;cifier un autre serveur de 
fichiers avec la m&ecirc;me syntaxe que la commande <em>ncpumount</em>.
</descrip>


<sect><heading>Configurer votre machine Linux en serveur NCP
<p>
            Il existe deux paquetages permettant &agrave; Linux de fournir les
fonctions d'un serveur de fichiers Novell. Tous deux permettent de partager
des fichiers de la machine Linux entre les utilisateurs utilisant un client
Novell Netware. Les utilisateurs peuvent attacher et utiliser des syst&egrave;mes de
fichiers Novell comme des volumes locaux &agrave; leurs machines juste comme s'ils
provenaient d'un serveur de fichiers Novell. Je vous propose d'essayer les deux
paquetages afin de voir celui qui correspond le mieux &agrave; vos besoins.


<sect1><heading>L'ensemble <bf><em>mars_nwe</em></bf>
<p>
Martin Stover <tt>&lt;mstover@freeway.de&gt;</tt> a d&eacute;velopp&eacute;
<em>mars_nwe</em> pour permettre &agrave;
Linux de fournir des services fichiers et impression pour des clients NetWare.
<p>
<em>mars_nwe</em> signifie "Martin Stover's Netware Emulator".

<sect2><heading>Possibilit&eacute;s offertes par <bf><em>mars_nwe</em></bf>

<p>
<em>mars_nwe</em> fournit un sous-ensemble de la sp&eacute;cification Novell NCP pour les
services fichiers, pour les connexions aux disques et aussi pour les services
d'impressions. Il est probable qu'il contient des bogues mais beaucoup de
personnes l'utilisent et le nombre de bogues diminue avec les nouvelles 
versions.

<sect2><heading>Obtenir <bf><em>mars_nwe</em></bf>

<p>
Vous pouvez r&eacute;cup&eacute;rer <em>mars_nwe</em> sur le serveur 
<url url="ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/" name="ftp.gwdg.de">. 
ou sur
<url url="ftp://metalab.unc.edu/pub/linux/filesystems/ncpfs/" name="metalab.unc.edu">. 
&nl
La version &agrave; jour lors de l'&eacute;criture de
ce document est : <tt>mars_nwe-0.99.pl10.tgz</tt>.

<sect2><heading>Compiler l'ensemble <em>mars_nwe</em>

<p>
<descrip>
<tag>Compiler un noyau Linux supportant Ethernet et IPX.</tag>
 Dans la version <tt>1.2.13</tt> du noyau, vous devrez juste v&eacute;rifier que vous
         avez r&eacute;pondu oui (<tt>Y</tt>) &agrave; '<tt>The
IPX Protocol</tt>' et non (<tt>N</tt>) &agrave; '<tt>Full internal IPX network</tt>'
comme illustr&eacute; :
<verb>
 ...
 ...
The IPX protocol (CONFIG_IPX) [n] y
 ...
 ...
Full internal IPX network (CONFIG_IPX_INTERN) [N/y/?] n
 ...
 ...
</verb>
	Pour les noyaux plus r&eacute;cents, un proc&eacute;d&eacute; similaire est utilis&eacute; lors de
        la construction du noyau. La question pos&eacute;e peut l&eacute;g&egrave;rement changer.
<p>	
	Assurez-vous aussi d'un choix appropri&eacute; pour votre carte Ethernet. Si
	vous ne savez pas comment proc&eacute;der, vous devriez lire
	l'Ethernet-HOWTO,
	<url url="Ethernet-HOWTO.html"
name="Ethernet-HOWTO">.
<p>	
	Vous pouvez maintenant proc&eacute;der &agrave; la compilation de votre
        noyau. Une fois cette &eacute;tape finie, n'oubliez pas de lancer
	<em>lilo</em> afin d'installer le nouveau noyau.

<tag>D&eacute;compresser le paquetage <em>mars_nwe</em>.</tag>
<tscreen><verb>
          # cd /usr/src
          # tar xvfz mars_nwe-0.99.pl10.tgz
</verb></tscreen>

<tag>Compiler <em>mars_nwe</em>.</tag>
Cette op&eacute;ration est tr&egrave;s simple.
La premi&egrave;re &eacute;tape consiste simplement &agrave; lancer <tt>make</tt>, cela va vous 
cr&eacute;er un fichier <tt>config.h</tt>. Ensuite, vous devez regarder et modifier
le fichier <tt>config.h</tt> si n&eacute;cessaire. Cela vous permet de configurer
des choses comme le r&eacute;pertoire d'installation ou le nombre maximum de
sessions et de volumes que le serveur pourra supporter. Les lignes importantes
&agrave; regarder sont :
<verb>
FILENAME_NW_INI       l'emplacement des fichiers d'initialisation
PATHNAME_PROGS        l'emplacement du programme exécutable
PATHNAME_BINDERY      l'endroit où iront les fichiers de la 'bindery'
PATHNAME_PIDFILES     le répertoire où les fichiers PID seront écrits
MAX_CONNECTIONS       le nombre maxi de connexions simultanées autorisées
MAX_NW_VOLS           le nombre maxi de volumes supportés par mars_nwe
MAX_FILE_HANDLES_CONN le nombre maxi de fichiers ouverts par connexion
WITH_NAME_SPACE_CALLS si vous voulez supporter les clients ncpfs
INTERNAL_RIP_SAP      si vous voulez que mars_nwe fasse le routage rip/sap
SHADOW_PWD            selon que vous utilisez les 'shadow passwords' ou non
</verb>
Les options par d&eacute;faut devraient vous convenir mais v&eacute;rifiez quand m&ecirc;me.

Une fois ceci termin&eacute; tapez :
<tscreen><verb>
          # make
          # make install
</verb></tscreen>

	  Ces commandes compileront les diff&eacute;rents serveurs et les
	  installeront dans un r&eacute;pertoire appropri&eacute;. Le script
	  d'installation installe aussi le fichier de configuration
	  <tt>/etc/nwserv.conf</tt>.

<tag>Configuration du serveur.</tag>
	Celle-ci est simple. Il faut &eacute;diter le fichier<tt>/etc/nwserv.conf</tt>.
	Le format de ce fichier peut vous sembler assez &eacute;nigmatique au
	 premier abord,
	mais il est en fait bel et bien ordonn&eacute;. Chaque ligne de ce fichier
	correspond &agrave; un point de configuration. Chacune de ces lignes est
	d&eacute;limit&eacute;e par le caract&egrave;re espace et d&eacute;bute par un nombre qui indique
le contenu de la ligne. Tous les
caract&egrave;res pr&eacute;c&eacute;d&eacute;s du caract&egrave;re '<tt>#</tt>' sont consid&eacute;r&eacute;s comme &eacute;tant un
	commentaire et de ce fait sont ignor&eacute;s. Martin fournit un fichier
	d'exemple de configuration dans son paquetage, cependant, je vous
	donne ce que je consid&egrave;re comme &eacute;tant une version simplifi&eacute;e de ce
	fichier, et ce, afin que vous puissiez mieux le comprendre. 
<tscreen><verb>

     # VOLUMES (max. 5)
     # Seul le volume SYS est obligatoire. Le répertoire contenant le volume
     # SYS doit contenir les répertoires : LOGIN, PUBLIC, SYSTEM, MAIL.
     # l'option 'i' ignore la casse (majuscules/minuscules)
     # l'option 'k' convertit toutes les requêtes de nom de fichier en 
     # minuscules
     # l'option 'm' indique que le volume est amovible (cdrom par ex.)
     # l'option 'r' positionne le volume en lecture seule
     # l'option 'o' indique le volume est un système de fichiers monté unique
     # l'option 'P' permet aux commandes d'être utilisées comme des fichiers
     # l'option 'O' permet l'utilisation de l'espace de noms (namespace) OS/2
     # l'option 'N' permet l'utilisation de l'espace de noms (namespace) NFS
     #
     # Par défaut les noms de fichiers sont en majuscules.
     # Syntaxe :
     #    1 <Nom du volume> <Chemin du volume>   <Options>

     1   SYS         /home/netware/SYS/                 # SYS
     1   DATA        /home/netware/DATA/   k 	        # DATA
     1   CDROM	     /cdrom                kmr          # CDROM

     # NOM DU SERVEUR
     # Si cette option n'est pas mise le nom du serveur Linux sera converti
     # en majuscule et utilisé
     # Syntaxe :
     #    2 <Nom du serveur>

     2   LINUX_FS01

     # ADRESSE DE RESEAU INTERNE 
     # l'adresse de réseau interne est une fonctionnalité qui simplifie
     # le routage IPX pour les machines reliées à plusieurs réseaux IPX.
     # Syntaxe :
     #    3 <adresse interne du réseau> [<Numéro de noeud>]
     # ou
     #    3 auto
     # si vous utilisez 'auto' alors l'adresse IP de la machine sera 
     # utilisée. NOTE : cela peut être dangereux, assurez-vous de prendre
     # un nombre unique sur votre réseau. Les adresses sont codées en
     # hexadécimal sur 4 octets (le préfixe 0x est obligatoire).
     3 0x49a01010 1

     # PERIPHERIQUES RESEAU
     # Cette option configure votre réseau IPX. Si votre réseau IPX est déjà
     # configuré, vous n'en aurez pas besoin.
     # Syntaxe
     #    4 <Numéro de reseau IPX> <Nom de périphérique> <Type de trame> [<ticks>]
     #                         Types de trames : ethernet_ii, 802.2, 802.3, SNAP

     4  0x39a01010  eth0  802.3  1

     # SAUVEGARDE DES ROUTES IPX APRES EXTINCTION DU SERVEUR.
     # Syntaxe :
     #    5 <drapeau>
     #       0 = ne pas sauver les routes, 1 = sauver les routes.

     5 0

     # VERSION DE NETWARE
     # Syntaxe :
     #    6 <version>
     #      0 = 2.15, 1 = 3.11

     6 1

     # GESTION DES MOTS DE PASSE
     # les clients DOS de Novell supportent une fonctionnalité qui chiffre
     # votre mot de passe (mdp) lorsque vous le changez. Vous pouvez
     # configurer votre serveur mars pour supporter cette fonctionnalité.
     # Syntaxe :
     #    7 <drapeau>
     # avec <drapeau> =
     #    0 force chiffrage du mdp (les clients ne peuvent pas changer de mdp).
     #    1 force chiffrage du mdp, permet les changements de mdp non chiffrés.
     #    7 permet les mdp non chiffrés mais pas les mdp nuls.
     #    8 permet les mdp non chiffrés ainsi que les mdp nuls.
     #	  9 seulement les mdp non chiffrés (ne marche pas avec OS/2).

     7 1

     # DROITS MINIMUM EN FONCTION DES GID ET UID
     # Les permissions qui sont appliquées lors de connexions sans login
     # Ces permissions seront utilisées pour les fichiers 
     # de votre serveur primaire.
     # Syntaxe :
     #    10 <gid>
     #    11 <uid>
     #    <gid> <uid> sont ceux donnés dans /etc/passwd et /etc/group

     10  200
     11  201

     # MOT DE PASSE DU SUPERVISEUR
     # Doit etre enlevé après le premier démarrage du serveur. Le serveur 
     # cryptera cette information dans le fichier de bindery après son     
     # lancement. Vous devriez éviter d'utiliser le compte 'root' et en choisir
     # un autre pour administrer le serveur mars.
     #
     # Cette entrée est lue et chiffrée dans le fichier de bindery du serveur,
     # elle n'a donc besoin d'être présente que la première fois que vous
     # démarrez le serveur, pour s'assurer que le mot de passe ne soit pas volé
     # Syntaxe :
     #    12 <Login du superviseur> <Nom d'utilisateur UNIX> [<mot de passe>]

     12  SUPERVISOR  terry  secret

     # COMPTES DES UTILISATEURS
     # Permet d'associer les comptes NETWARE aux comptes UNIX. Les mots de
     # passe sont en option.
     # Syntaxe :
     #    13 <Login utilisateur> <Nom d'utilisateur UNIX> [<mot de passe>]

     13  MARTIN martin
     13  TERRY  terry

     # ADMINISTRATION SYSTEME PARESSEUSE
     # Si vous avez beaucoup d'utilisateurs et ne pouvez/voulez utiliser
     # le champ 13 pour chaque utilisateur, vous pouvez faire correspondre
     # automatiquement les logins mars_nwe aux logins des utilisateurs Linux
     # MAIS il n'y a pour le moment aucun moyen d'utiliser les mots de passe
     # des comptes Linux si bien que tous les utilisateurs configurés de cette
     # façon devront utiliser le mot de passe fourni ici.
     # Je vous déconseille de l'utiliser à moins que la sécurité ne fasse pas
     # partie de vos préoccupations.
     # Syntaxe :
     #    15 <drapeau> <mot de passe commun>
     # avec <drapeau> :
     #    0  - ne configure aucun utilisateur automatiquement.
     #	  1  - configure automatiquement les utilisateurs non encore configurés.
     #	  99 - configure automatiquement tous les utilisateurs. 

     15 0 duzzenmatta

     # VERIFICATION SIMPLE
     # mars_nwe s'assurera automatiquement que certains répertoires existent
     # si vous positionnez ce drapeau.
     # Syntaxe :
     #    16 <drapeau>
     # avec <drapeau> à 0 pour non, ne fait rien et 1 pour oui, vérifie.

     16 0
     
     # QUEUES D'IMPRESSION
     # Permet d'associer des imprimantes Netware à des imprimantes UNIX. Les
     # répertoires de files d'impression doivent être crées manuellement
     # avant de tenter toute impression.
     # Syntaxe :
     #    21 <Nom de queue> <répertoire de queue> <commande d'impression UNIX>

     21  EPSON  SYS:/PRINT/EPSON lpr -h
     21  LASER  SYS:/PRINT/LASER lpr -Plaser

     # DRAPEAUX DE DEBOGAGE 
     # normalement, ils ne sont pas nécessaires, mais ils peuvent être utiles
     # pour la résolution de problèmes.
     # Syntaxe :
     #    <élément de débogage> <drapeau de debogage>
     #
     #    100 = IPX KERNEL
     #    101 = NWSERV
     #    102 = NCPSERV
     #    103 = NWCONN
     #    104 = démarrage NWCLIENT
     #	  105 = NWBIND
     #	  106 = NWROUTED
     #                 0 = supprime le débogage, 1 = active le débogage

     100 0
     101 0
     102 0
     103 0
     104 0
     105 0
     106 0

     # LANCER LE SERVEUR NETWARE EN TACHE DE FOND ET UTILISER UN FICHIER DE LOG
     # Syntaxe :
     #    200 <drapeau>
     #        0 = Lance NWSERV en avant-plan et pas de fichier de log
     #        1 = Lance NWSERV en tâche de fond et utiliser le fichier de log

     200  1

     # NOM DU FICHIER DE LOG
     # Syntaxe :
     #    201 <Fichier de log>

     201  /tmp/nw.log

     # AJOUT/ECRASEMENT DU FICHIER DE LOG
     # Syntaxe :
     #    202 <drapeau>
     #        0 = ajouter dans le fichier de log existant
     #        1 = écraser le fichier de log existant

     202  1

     # EXTINCTION DU SERVEUR
     # Ce point modifie le délai entre l'affichage d'extinction du serveur et
     # l'extinction réelle du serveur
     # Syntaxe :
     #    210 <temps>
     #        en secondes (par défaut 10)

     210  10

     # INTERVALLE ENTRE LES DIFFUSIONS DE ROUTAGE
     # la durée en secondes entre les diffusions (broadcast) de serveurs
     # Syntaxe :
     #    211 <temps>
     #        en secondes (par défaut : 60)
     
     211 60

     # INTERVALLE ENTRE LES LOGS DE ROUTAGE
     # configure le nombre de diffusions après lesquelles les informations
     # de routage sont écrites dans les fichiers de log.
     # Syntaxe :
     #    300 <nombre>

     300 5

     # FICHIER DE LOG DE ROUTAGE
     # configure le nom du fichier de log des informations de routage
     # Syntaxe :
     #    301 <nom de fichier>
     
     301 /tmp/nw.route

     # AJOUT/ECRASEMENT DU FICHIER DE LOG DE ROUTAGE
     # configure si vous voulez ajouter les nouveaux logs à la fin du
     # fichier existant ou bien le réecrire.
     # Syntaxe :
     #    302 <drapeau>
     #    avec <drapeau> à 0 pour l'ajout et à 1 pour création/écrasement

     302 1

     # MINUTAGE DU CHIEN DE GARDE (watchdog)
     # Configure les intervalles de temps entre les messages de garde pour
     # s'assurer que le réseau est toujours vivant. 
     # Syntaxe :
     #    310 <valeur>
     # avec <valeur> =
     #      0  - toujours envoyer des messages de garde.
     #	    <0 - ne jamais envoyer de message de garde.
     #      >0 - envoyer des messages quand le trafic réseau chute en dessous
     #           de 'n' ticks.

     310 7

     # FICHIER DE STATIONS
     # configure le nom du fichier qui détermine les machines pour lesquelles
     # ce serveur de fichiers sera le serveur primaire.
     # La syntaxe de ce fichier est décrite dans le répertoire 'examples'
     # du code source.
     # Syntaxe :
     #    400 <nom de fichier>

     400 /etc/nwserv.stations

     # OBTENTION DU SERVEUR DE FICHIERS LE PLUS PROCHE
     # Configure la manière dont sont gerées les requêtes SAP 'obtention
     # du serveur le plus proche' (Get Nearest Fileserver).
     # Syntaxe :
     #    401 <drapeau>
     # avec <drapeau> =
     #      0 : désactive cette requête
     #	    1 : le fichier de stations liste les stations à exclure
     #	    2 : le fichier de stations liste les station à inclure

     401 2

</verb></tscreen>

<tag>D&eacute;marrer le serveur</tag>
Si vous avez configur&eacute; le serveur de telle sorte que d'autres programmes
configurent le r&eacute;seau et/ou fournissent les fonctions de routage, alors
vous devez lancer ces programmes avant de d&eacute;marrer le serveur.
Si vous avez configur&eacute; le serveur pour qu'il configure vos interfaces
et fournisse des services de routage, alors pour d&eacute;marrer le serveur, 
il n'y a qu'&agrave; taper :

<tscreen><verb>		
	# nwserv
</verb></tscreen>

<tag>Tester le serveur</tag>
Pour tester le serveur vous devrez tout d'abord essayer de vous connecter et
entrer par login gr&acirc;ce &agrave; un client Netware sur votre r&eacute;seau. Vous pouvez
alors faire un <tt>CAPTURE</tt> &agrave; partir de votre client et essayer 
d'imprimer. Si ces
deux actions sont couronn&eacute;es de succ&egrave;s, votre serveur fonctionne.
</descrip>

<sect1><heading>L'ensemble <bf><em>lwared</em></bf>

<p>
	Ales Dryak <tt>&lt;A.Dryak@sh.cvut.cz&gt;</tt> a
d&eacute;velopp&eacute; <em>lwared</em> pour permettre &agrave;
Linux de fonctionner comme un serveur de fichiers bas&eacute; sur NCP.
<p>
	<em>Lwared</em> est l'abr&eacute;viation de <em>LinWare Daemon</em>.

<sect2><heading>Possibilit&eacute;s offertes par <bf><em>lwared</em></bf>

<p>
  Le serveur <em>lwared</em> est capable de fournir un sous-ensemble de 
services d'un
serveur Novell NCP. Le syst&egrave;me de messageries a &eacute;t&eacute; inclus mais il ne fournit pas
de facilit&eacute;s d'impression. De plus il ne fonctionne pas bien avec des clients
pour Windows 95 ou Windows NT. Ce serveur s'appuie sur des programmes
ext&eacute;rieurs pour construire et maintenir le routage IPX et les tables SAP. Le
mauvais comportement d'un client peut causer le "plantage" du serveur. Il est
aussi important de savoir que la retranscription des noms de fichiers
(minuscules/majuscules) n'a pas non plus &eacute;t&eacute; incluse.
<p>
Ce serveur fonctionne avec les shells Netware NETX et VLM.

<sect2><heading>R&eacute;cup&eacute;rer <bf><em>lwared</em></bf>

<p>
	Le paquetage <em>lwared</em> peut &ecirc;tre construit pour n'importe quel noyau
sup&eacute;rieur  &agrave; la version <tt>1.2.0</tt>, je vous recommande
d'utiliser la version <tt>1.2.13</tt> pour laquelle aucun patch sur le noyau
 n'est n&eacute;cessaire. Certaines fonctionnalit&eacute;s ont chang&eacute; avec
la version <tt>1.3.*</tt> du noyau, ce qui signifie que des patchs sont n&eacute;cessaires
pour ces versions afin de faire fonctionner ce serveur de mani&egrave;re
correcte. Des patchs appropri&eacute;s sont inclus pour les nouvelles versions de
noyau, ainsi si vous devez absolument utiliser un de ces noyaux, vous serez
toujours en mesure de faire fonctionner <em>lwared</em> correctement.
<p>
        On trouve <em>lwared</em> sur
	<url url="ftp://klokan.sh.cvut.cz/pub/linux/linware/"
    name="klokan.sh.cvut.cz">,
	<url url="ftp://metalab.unc.edu/pub/Linux/system/Network/daemons"
    name="Metalab">,
  ou sur un site miroir. La version &agrave; jour lors de l'&eacute;criture de ce document &eacute;tait :
<tt>lwared-0.95.tar.gz</tt>

<sect2><heading>Compiler et installer <bf><em>lwared</em></bf>

<p>
<descrip>
<tag>D&eacute;compresser l'ensemble <em>lwared</em></tag>
Ce qui devrait ressembler &agrave; :
<verb>
# cd /usr/src
# tar xvpfz lwared-0.95.tar.gz
</verb>

<tag>Compiler le noyau avec le support Ethernet et IPX</tag>
Si vous utilisez un noyau alpha <tt>1.3.*</tt> vous devriez essayer d'utiliser
la version <tt>1.3.17</tt> ou une plus r&eacute;cente car les patchs
fournis ont &eacute;t&eacute; faits
pour celles-l&agrave;. Les noyaux <tt>1.3.*</tt> plus anciens que
<tt>1.3.17</tt> n&eacute;cessiteront d'&ecirc;tre
modifi&eacute;s &agrave; la main pour pouvoir installer lwared (<em> quelques indications sur
la mani&egrave;re d'op&eacute;rer ce genre de modifications sont donn&eacute;es dans le fichier
<tt>INSTALL</tt> du paquetage</em>). Pour installer les patchs pour la
version <tt>1.3.17</tt> du
noyau ou plus r&eacute;cent, vous devrez essayer la commande suivante :
<verb>	
	# make patch
</verb>
<p>
La chose suivante que vous devrez faire apr&egrave;s avoir appliqu&eacute; le patch, le cas
&eacute;ch&eacute;ant, sera de v&eacute;rifier que votre noyau a bien &eacute;t&eacute; compil&eacute; avec le support
IPX actif. Dans la version <tt>1.2.13</tt>, vous n'aurez qu'&agrave;
r&eacute;pondre oui (<tt>Y</tt>) &agrave; la question
'<tt>The IPX protocol</tt>' de la mani&egrave;re suivante :
<verb>

      ...
      ...
     Assume subnets are local (CONFIG_INET_SNARL) [y]
     Disable NAGLE algorithm (normally enabled) (CONFIG_TCP_NAGLE_OFF) [n]
     The IPX protocol (CONFIG_IPX) [n] y
     *
     * SCSI support
      ...
      ...


</verb>
  Pour les noyaux plus r&eacute;cents, la question peut varier un peu, mais le
proc&eacute;d&eacute; reste fondamentalement le m&ecirc;me.
<p>
 Vous devrez &eacute;galement vous assurer du choix appropri&eacute; du pilote de votre carte 
 Ethernet. Si vous ne savez pas comment proc&eacute;der, je vous conseille vivement de
 vous reporter &agrave; 
 <url url="Ethernet-HOWTO.html"
name="Ethernet-HOWTO">.
<p>
Vous pouvez maintenant proc&eacute;der &agrave; la compilation de votre noyau. N'oubliez pas
de lancer <em>lilo</em> une fois la compilation finie, pour que le nouveau noyau soit
correctement install&eacute;.

<tag>Compiler et installer <em>lwared</em></tag>
	Pour compiler <em>lwared</em> vous devez en premier lieu v&eacute;rifier et &eacute;diter si
	n&eacute;cessaire le fichier <tt>server/config.h</tt>. Ce fichier contient les
	&eacute;l&eacute;ments n&eacute;cessaires pour piloter votre serveur et d&eacute;terminer son
	comportement lorsqu'il fonctionnera. Le fichier par d&eacute;faut est
	raisonnablement bien &eacute;crit mais vous pourrez tout de m&ecirc;me v&eacute;rifier si
	les r&eacute;pertoires de fichiers de log et le fichier de configuration
	conviennent &agrave; votre syst&egrave;me.
<verb>
        # make depend
        # make
        # make install
</verb>

Le '<tt>make depend</tt>' se plaint de ne pas trouver le fichier <tt>float.h</tt> sur
mon syst&egrave;me mais cela semble fonctionner tout de m&ecirc;me. J'ai aussi
d&eacute;couvert que lors des compilations avec gcc <tt>2.6.3</tt>, il fallait
modifier la ligne :
<verb>	
     #include <net/route.h>
</verb>
     en
<verb>
     #include <net/if_route.h>
</verb>

        dans le fichier <tt>lib/ipxkern.c</tt>. Ceci &eacute;tant d&ucirc; au fait que le fichier
	change parfois de nom.
<p>	
	Le '<tt>make install</tt>' tentera d'installer le serveur et les d&eacute;mons de
	routage dans le r&eacute;pertoire <tt>/usr/sbin</tt>, le programme
	<em>lwpasswd</em> dans le
	r&eacute;pertoire <tt>/usr/bin</tt>, les programmes utilitaires IPX seront copi&eacute;s dans
	le r&eacute;pertoire <tt>/sbin</tt> et les pages de manuel dans la structure de
	r&eacute;pertoire <tt>/usr/man</tt>. Si un de ces endroits ne correspond pas &agrave; votre
	syst&egrave;me, vous devrez &eacute;diter et modifier les fichiers
	<tt>Makefile</tt> correspondants.
</descrip>

<sect2><heading>Configurer et utiliser <bf><em>lwared</em></bf>

<p>
Voici la partie la plus amusante !

<descrip>
         <tag>Configurer le r&eacute;seau IPX</tag>
	 La premi&egrave;re chose &agrave; faire est de configurer vos cartes Ethernet
	 pour qu'elles puissent supporter les r&eacute;seaux IPX connect&eacute;s &agrave; votre 
serveur. Vous devez conna&icirc;tre les adresses
	 des r&eacute;seaux IPX pour chacun des segments du r&eacute;seau, quel
	 p&eacute;riph&eacute;rique Ethernet (<tt>eth0</tt>, <tt>eth1</tt>,
	 etc.) est en relation avec quel segment,
	 quel type de trame est utilis&eacute; pour chacun des segments (<tt>802.3</tt>,
	 <tt>EtherII</tt>, etc.) et quelle adresse de r&eacute;seau interne votre serveur
	 doit utiliser (ce qui est vraiment n&eacute;cessaire si votre serveur
	 doit fournir des services sur plusieurs segments). Par exemple, une
	 configuration plausible d'un serveur &eacute;tant sur deux segments IPX
	 ayant pour adresse r&eacute;seau <tt>23a91300</tt> et <tt>23a91301</tt> et ayant une adresse
	 de r&eacute;seau interne <tt>bdefaced</tt> ressemblera &agrave; :
<verb>	 
        # ipx_internal_net add BDEFACED 1
        # ipx_interface add eth0 802.3 23a91300
        # ipx_interface add eth1 etherii 23a91301
</verb>


<tag>D&eacute;marrer les d&eacute;mons de routage</tag>
           Le logiciel du noyau permet de faire du renvoi de paquet
	   IPX comme il le fait pour les paquets IP, cependant le noyau
	   requiert un programme additionnel pour g&eacute;rer la mise &agrave; jour des
	   tables de routage. Dans le cas d'IPX, deux d&eacute;mons sont
	   n&eacute;cessaires et tous deux sont fournis avec <em>lwared</em> :
	   <em>ipxripd</em> g&egrave;re l'information de routage IPX et 
	   <em>ipxsapd</em> g&egrave;re les
	   informations SAP. Pour faire d&eacute;marrer les d&eacute;mons vous n'aurez
	   qu'&agrave; sp&eacute;cifier l'endroit o&ugrave; vous voulez qu'ils &eacute;crivent les
	   messages de log :
	   <verb>
	   # ipxripd /var/adm/ipxrip
           # ipxsapd /var/adm/ipxsap
	   </verb>
	   
<tag>Configurer le serveur <em>lwared</em></tag>
	    Deux fichiers sont &agrave; configurer manuellement pour que les
	    utilisateurs puissent se loguer sur votre serveur. Il s'agit de :

<p>
<descrip>
<tag><tt>/etc/lwpasswd</tt></tag>
	    Il s'agit du fichier dans lequel les informations sur les
	    comptes utilisateurs de LinWare sont gard&eacute;es. Le programme
	    <em>lwpasswd</em>
	    permet de le maintenir &agrave; jour. Dans sa forme la plus simple, le
	    fichier <tt>/etc/lwpasswd</tt> ressemble &agrave; :
<verb>	    
            ales:
            terryd:
            guest:
</verb>	    
	    Son format est une simple liste de noms de login suivis du
	    caract&egrave;re ':' puis de la version encrypt&eacute;e du mot de passe de
	    login. Il faut cependant noter deux choses importantes : si les
	    mots de passe ne sont pas chiffr&eacute;s cela signifie qu'il n'y a
	    pas de mot de passe. D'autre part, les utilisateurs de <em>LinWare</em>
	    doivent avoir un compte Linux, c'est-&agrave;-dire que chaque utilisateur 
	    de <em>LinWare</em>
	    pr&eacute;sent dans <tt>/etc/lwpasswd</tt> doit aussi &ecirc;tre pr&eacute;sent dans
	    <tt>/etc/passwd</tt>. Seul l'utilisateur <tt>root</tt> peut changer 
	    le mot de
	    passe d'un autre utilisateur <em>LinWare</em>. Si vous &ecirc;tes logu&eacute; en tant
	    <tt>root</tt>, vous pourrez par exemple taper la commande suivante pour
	    changer le mot de passe d'un utilisateur :
<verb>	    
        # lwpasswd rodg
        Changing password for RODG
        Enter new password:
        Re-type new password:
        Password changed.
</verb>


<tag><tt>/etc/lwvtab</tt></tag>
         Il s'agit des tables des volumes LinWare o&ugrave; sont stock&eacute;es les
	 informations sur les r&eacute;pertoires &agrave; partager entre les utilisateurs
	 de  LinWare (ce fichier comporte des similitudes avec le fichier
	 <tt>/etc/exports</tt> pour NFS). Un exemple simple de son format est :
<verb>	 	 
           SYS             /lwfs/sys
           DATA            /lwfs/data
           HOME            /home
</verb>
         Ce format est simple : nom du volume puis le r&eacute;pertoire Linux &agrave;
	 exporter s&eacute;par&eacute;s par le caract&egrave;re espace. Vous devez avoir, 
<bf>au moins</bf>,
	 une entr&eacute;e dans ce fichier pour le volume <tt>SYS</tt> afin que le
	 serveur puisse d&eacute;marrer. Si vous voulez que vos utilisateurs 
	 DOS puissent acc&eacute;der &agrave; votre serveur LinWare  comme serveur primaire, 
	 vous devrez installer une arborescence de volume <tt>SYS</tt> standard
	 sous le r&eacute;pertoire que vous exportez comme volume <tt>SYS</tt>.
	 Les
	 fichiers devant &ecirc;tre pr&eacute;sents dans ces r&eacute;pertoires sont ceux de
	 Novell et sont soumis &agrave; leurs copyrights. Vous devez avoir une licence
pour les utiliser. Si vos utilisateurs
	 utilisent un serveur de fichiers Novell comme serveur primaire,
	 vous n'aurez pas besoin du volume <tt>SYS</tt>.
</descrip>	 

<tag>D&eacute;marrer le serveur <em>lwared</em>
<verb>         
	 # lwared
</verb>	 
	 Plut&ocirc;t simple n'est-ce pas ? Mais il reste une question.
	 Quel est le nom du serveur de fichiers ? Si vous
	 avez d&eacute;marr&eacute; le serveur LinWare  de la fa&ccedil;on expos&eacute;e ci-dessus, son 
	 nom sera celui retourn&eacute; par la commande <em>hostname</em> de Linux
 (le nom d'h&ocirc;te). Si vous voulez
	 un autre nom, il suffit de le sp&eacute;cifier dans
	 la ligne de lancement de lwared comme ci-dessous par exemple :
<verb>	 
	 # lwared -nlinux00
</verb>
         Ici le nom du serveur LinWare sera <tt>linux00</tt>.
	 
<tag>Tester le serveur <em>lwared</em></tag>
         La premi&egrave;re chose &agrave; faire est de v&eacute;rifier que votre serveur LinWare
	 appara&icirc;t bien dans une <em>slist</em> d'un client DOS sur votre r&eacute;seau. Le
 programme <em>slist</em> est stock&eacute; dans le volume <tt>SYS</tt> d'un serveur de
	 fichier Novell donc il vous faudra r&eacute;aliser cette op&eacute;ration &agrave;
	 partir d'une machine d&eacute;j&agrave; logu&eacute;e sur un serveur. Si &ccedil;a ne marche pas,
	  v&eacute;rifiez que
	 <em>ipxsapd</em> et <em>lwared</em> tournent en 
	 m&ecirc;me temps sur la machine Linux. Si la slist est bonne
	 vous pouvez essayer de connecter et de mapper un volume :
	 <verb>
	 C:> attach linux00/ales
         ...
         ...
         C:> map l:=linux00/data:
         C:> l:
	</verb>
         Vous devriez maintenant &ecirc;tre en mesure d'utiliser le nouveau volume
	 comme tout autre volume Novell. Les permissions des fichiers sont
	 bas&eacute;es sur celles donn&eacute;es par le serveur <em>Linux</em> en fonction de
	 votre compte utilisateur.
</descrip>


<sect><heading>Configurer votre machine Linux en client d'impression Novell
<p>

Le paquetage <em>ncpfs</em> inclut deux petits utilitaires qui vous permettent
d'imprimer depuis votre machine Linux sur une imprimante reli&eacute;e &agrave; un serveur
d'impression Novell.
La commande <em>nprint</em> vous permet d'imprimer un fichier vers une
queue d'impression NetWare. La commande <em>pqlist</em> liste les queues
d'impression disponibles sur un serveur NetWare.

<p>
Pour obtenir et installer ces commandes, vous n'avez qu'&agrave; suivre les
instructions relatives au client NCP d&eacute;crites pr&eacute;c&eacute;demment.

<p>
Ces deux commandes n&eacute;cessitent que vous fournissiez le nom d'utilisateur 
et le mot de passe. Vous devriez normalement penser &agrave; &eacute;crire des
scripts pour simplifier les t&acirc;ches d'impression.

<p>
Exemple :
<tscreen><verb>
# pqlist -S ACCT_FS01 -U guest -n
# nprint -S ACCT_FS01 -q LASER -U guest -n filename.txt
</verb></tscreen>
La syntaxe concernant le login est similaire &agrave; celle de la commande 
<em>ncpmount</em>. Les exemples ci-dessus font l'hypoth&egrave;se qu'un serveur
de fichiers <tt>ACCT_FS01</tt> a un compte <tt>guest</tt> sans mot de
passe, qu'une queue d'impression appel&eacute;e <tt>LASER</tt> existe et que
<tt>guest</tt> a le droit d'imprimer dessus.

Sur mes machines Linux, j'ai un court script en shell pour chaque imprimante Novell.
Il peut alors &ecirc;tre utilis&eacute; comme un filtre d'impression afin de pouvoir
imprimer en utilisant le spooler Linux standard.

<sect><heading>Configurer votre machine Linux en serveur d'impression Novell

<p>
Un programme permettant &agrave; votre machine Linux d'agir comme serveur d'impression
sur un r&eacute;seau NetWare est inclus dans le paquetage <em>ncpfs</em>. Pour
l'installer et le compiler, se reporter &agrave; la section 'client NetWare' 
au-dessus. Il y a &eacute;galement un autre support dans le paquetage <em/mars_nwe/.
<p>

<sect1><heading>Pr&eacute;requis
<p>
La configuration est relativement simple mais vous devez avoir une imprimante
compl&egrave;tement configur&eacute;e et fonctionnant sous Linux. Cette partie est couverte
dans le 
<url url="Printing-HOWTO.html" name="Printing-HOWTO"> en d&eacute;tail.

<sect1><heading>Configuration
<p>
Une fois que vous avez une configuration imprimante qui fonctionne et que
vous avez compil&eacute; et install&eacute; l'utilitaire <em>pserver</em>, vous 
devez ajouter des commandes dans vos fichiers <tt>rc</tt>.
<p>
La commande exacte &agrave; utiliser va d&eacute;pendre de ce que vous voulez exactement
qu'il fasse, mais dans sa fa&ccedil;on la plus simple, quelque chose comme cela
devrait fonctionner :

<tscreen><verb>
# pserver -S ACCT_01 -U LASER -P secret -q LASERJET
</verb></tscreen>

Cet exemple demande &agrave; l'utilitaire <em>pserver</em> de se loguer sur le 
serveur <tt>ACCT_O1</tt> avec le nom <tt>LASER</tt> et le mot de passe
<tt>secret</tt> et de r&eacute;cup&eacute;rer les travaux d'impression dans la queue
<tt>LASERJET</tt>. Lorsqu'un nouveau travail d'impression est re&ccedil;u, la
commande d'impression par d&eacute;faut de <em>lpr</em> sera utilis&eacute;e pour
fournir ce travail d'impression au d&eacute;mon d'impression Linux.
La queue d'impression doit &ecirc;tre d&eacute;j&agrave; d&eacute;finie sur le serveur
de fichiers et le nom d'utilisateur doit avoir les privil&egrave;ges du serveur
pour la queue.

<p>
Vous auriez pu, si vous aviez voulu, utiliser une autre commande Linux
pour accepter et imprimer les travaux d'impressions. l'argument <tt>-c</tt>
vous permet de sp&eacute;cifier la commande exacte &agrave; utiliser. Par exemple :

<tscreen><verb>
# pserver -S ACCT_01 -U LASER -P secret -q LASERJET -c "lpr -Plaserjet"
</verb></tscreen>

fera exactement la m&ecirc;me chose que l'exemple pr&eacute;c&eacute;dent sauf qu'il enverra
le travail d'impression &agrave; la configuration <em>printcap</em> <tt>laserjet</tt>
au lieu de celle par d&eacute;faut.

<sect><heading>Un aper&ccedil;u des commandes utilisateur et d'administration de
<em>ncpfs</em>

<p>
Les derni&egrave;res versions du paquetage <em>ncpfs</em> de Volker incluent toute
une s&eacute;rie de commandes d'utilisation et d'administration que vous pourriez
avoir envie d'utiliser. Ces outils sont compil&eacute;s et install&eacute;s dans le 
processus d'installation de <em>ncpfs</em>. Si vous ne l'avez pas encore
fait, suivez les instructions fournies dans la section sur le client Novell
au-dessus pour les compiler et les installer.

<p>
L'information d&eacute;taill&eacute;e est disponible dans les pages de <em>man</em>
fournies, mais voici un bref r&eacute;sum&eacute; des commandes.

<sect1><heading>Commandes utilisateur
<p>
<descrip>
<tag>ncopy</tag> Network Copy (copie r&eacute;seau) - permet de copier efficacement
des fichiers en utilisant une fonction NetWare plut&ocirc;t que de copier &agrave; travers
le r&eacute;seau.
<tag>nprint</tag> Network Print (impression r&eacute;seau) - permet d'imprimer un
fichier vers une queue d'impression Netware situ&eacute;e sur un serveur Netware.
<tag>nsend</tag> Network Send (envoi r&eacute;seau) - permet d'envoyer des messages
&agrave; d'autres utilisateurs connect&eacute;s &agrave; un serveur NetWare.
<tag>nwbols</tag> List Bindery Objects (liste les objets de la bindery) - permet
de lister le contenu de la bindery d'un serveur NetWare.
<tag>nwboprops</tag> List properties of a Bindery Object (liste les propri&eacute;t&eacute;s
d'un objet de la bindery) - permet de voir les propri&eacute;t&eacute;s d'un objet de la
bindery
<tag>nwbpset</tag> Set Bindery Property (Configure des propri&eacute;t&eacute;s de bindery) - 
permet de configurer les propri&eacute;t&eacute;s d'un objet de la bindery NetWare.
<tag>nwbpvalues</tag> Print Netware Bindery Objects Property Contents 
(affiche le contenu propri&eacute;t&eacute; des Objets de la Bindery) - permet d'afficher
le contenu d'une propri&eacute;t&eacute; d'une bindery Netware.
<tag>nwfsinfo</tag> Fileserver Information (information sur le serveur de
fichiers) - affiche un r&eacute;sum&eacute; d'informations sur un serveur Netware.
<tag>nwpasswd</tag> NetWare Password (mot de passe NetWare) - permet de changer
le mot de passe d'un utilisateur NetWare.
<tag>nwrights</tag> NetWare Rights (permissions NetWare) - affiche les droits
associ&eacute;s &agrave; un fichier ou r&eacute;pertoire particulier.
<tag>nwuserlist</tag> User List (liste d'utilisateurs) - liste les utilisateurs
actuellement logu&eacute;s sur un serveur de fichiers NetWare.
<tag>pqlist</tag> Print Queue List (Liste de queue d'impression) - affiche le
contenu d'une queue d'impression NetWare.
<tag>slist</tag> Server List (liste de serveurs) - affiche une liste de serveurs
de fichiers NetWare connus.
</descrip>

<sect1><heading>Outils d'administration
<p>
<descrip>
<tag>nwbocreate</tag> Create a Bindery Object (cr&eacute;er un objet de la bindery) - 
permet de cr&eacute;er un objet de la bindery.
<tag>nwborm</tag> Remove Bindery Object (enlever un objet de la bindery) - permet
d'effacer un objet de la bindery.
<tag>nwbpadd</tag> Add Bindery Property (ajouter une propri&eacute;t&eacute; &agrave; la bindery) - 
permet de positionner la valeur d'une propri&eacute;t&eacute; existante d'un objet d'une
bindery Netware.
<tag>nwbpcreate</tag> Create Bindery Property (cr&eacute;er une propri&eacute;t&eacute; de bindery) - 
permet de cr&eacute;er une nouvelle propri&eacute;t&eacute; pour un objet d&eacute;j&agrave; existant dans une
bindery NetWare.
<tag>nwbprm</tag> Remove Bindery Property (enlever une propri&eacute;t&eacute; de bindery) - 
permet d'enlever une propri&eacute;t&eacute; sur un objet d'une bindery NetWare.
<tag>nwgrant</tag> Grant Trustee Rights (attribuer les droits d'acc&egrave;s) - permet
 d'assigner les droits d'acc&egrave;s &agrave; un r&eacute;pertoire sur un serveur de fichiers
NetWare.
<tag>nwrevoke</tag> Revoke Trustee Rights (retirer les droits d'acc&egrave;s) - permet
de retirer les droits d'acc&egrave;s &agrave; un r&eacute;pertoire sur un serveur de fichiers NetWare.
</descrip>

<sect><heading>Configurer PPP pour le support d'IPX
<p>
Les nouvelles versions du d&eacute;mon PPP <em>pppd</em> pour Linux permettent de
transporter des paquets IPX &agrave; travers une liaison s&eacute;rie PPP. Il faut au moins
la version <tt>ppp-2.2.0d</tt> du d&eacute;mon. Voir le <url url="PPP-HOWTO.html"
name="PPP-HOWTO"> pour savoir o&ugrave; le trouver. Lorsque vous compilez <em>pppd</em>,
assurez-vous d'activer le support IPX en ajoutant les deux lignes suivantes au
fichier <tt>/usr/src/linux/pppd-2.2.0f/pppd/Makefile.linux</tt>
<tscreen><verb>
IPX_CHANGE = 1
USE_MS_DNS = 1
</verb></tscreen>

Le <tt>IPX_CHANGE</tt> est ce qui active le support d'IPX dans PPP. La d&eacute;finition
de <tt>USE_MS_DNS</tt> permet aux machines Microsoft Windows 95 de faire de
la recherche de nom (name lookup).

<p>
Le vrai truc pour arriver &agrave; le faire marcher, c'est de savoir le configurer.

<p>
Il y a plein de fa&ccedil;ons de faire mais je ne d&eacute;crirai que les deux sur lesquelles
j'ai re&ccedil;u des informations. Je n'ai encore jamais essay&eacute;, donc consid&eacute;rez cette
section comme exp&eacute;rimentale et si vous arrivez &agrave; faire marcher quelque chose, 
faites-le moi savoir s'il vous plait.

<sect1><heading>Configurer un serveur IPX/PPP
<p>
La premi&egrave;re chose &agrave; faire est de configurer votre machine Linux en serveur
IP/PPP. Pas de panique ! Ce n'est pas difficile. De nouveau, suivez les 
instructions dans le <url url="PPP-HOWTO.html" name="PPP-HOWTO"> et &ccedil;a 
devrait aller. Une fois que vous avez fait ceci, il y a quelques modifications
pour faire fonctionner IPX avec la m&ecirc;me configuration.

<sect2><heading>Premi&egrave;re &eacute;tape
<p>
Une des premi&egrave;res choses &agrave; faire est de configurer votre machine Linux en
routeur IPX de la fa&ccedil;on d&eacute;crite plus haut dans ce document. Vous n'avez pas
besoin d'utiliser la commande <em>ipx-route</em> pour l'interface <tt>PPP</tt>
car <em>pppd</em> les configure pour vous comme il le fait pour IP.
Lorsque le d&eacute;mon <em>ipxd</em> tourne, il d&eacute;tecte automatiquement toute
nouvelle interface IPX et propage les routes pour elle. Ainsi, vos machines
connect&eacute;es en dialup seront vues par les autres machines automatiquement
lors de la connexion.

<sect2><heading>Conception
<p>
Lorsque l'on tourne en tant que serveur, c'est normalement de sa responsabilit&eacute;
d'assigner des adresses r&eacute;seau &agrave; chacune des liaisons PPP lorsqu'elles sont
&eacute;tablies. Ceci est un point important, chaque liaison PPP sera un r&eacute;seau IPX
et aura une adresse r&eacute;seau IPX unique. Cela signifie que vous devez
d&eacute;cider comment vous allez allouer les adresses et quelles adresses utiliser.
Une convention simple est d'allouer une adresse r&eacute;seau IPX &agrave; chaque 
p&eacute;riph&eacute;rique s&eacute;rie qui supporte IPX/PPP. Vous pourriez allouer une adresse
r&eacute;seau IPX bas&eacute;e sur le login de l'utilisateur connect&eacute;, mais je ne vois
pas de raison particuli&egrave;re de faire ainsi.
<p>
Je vais supposer pour la suite que vous avez choisi la premi&egrave;re convention
et qu'il y a deux p&eacute;riph&eacute;riques r&eacute;seau (modems) que nous utiliserons.
Les adresses utilis&eacute;es dans cet exemple sont :

<tscreen><verb>
Periph. Adresse reseau IPX
------- -------------------
ttyS0   0xABCDEF00
ttyS1   0xABCDEF01
</verb></tscreen>

<sect2><heading>Configurer <em>pppd</em>
<p>
Configurez votre fichier <tt>/etc/ppp/options.ttyS0</tt> comme suit :
<tscreen><verb>
ipx-network 0xABCDEF00
ipx-node 2:0
ipxcp-accept-remote
</verb></tscreen>

et votre fichier <tt>/etc/ppp/options.ttyS1</tt> :
<tscreen><verb>
ipx-network 0xABCDEF01
ipx-node 3:0
ipxcp-accept-remote
</verb></tscreen>



Cela va demander &agrave; <em>pppd</em> d'allouer l'adresse r&eacute;seau IPX appropri&eacute;e
au lien lorsque la liaison est &eacute;tablie. Le num&eacute;ro de noeud local sera
positionn&eacute; &agrave; <tt>2</tt> ou <tt>3</tt> et le noeud distant pourra l'&eacute;craser
avec le num&eacute;ro de noeud qu'il pense &ecirc;tre le bon. Notez que toutes les 
adresses sont en hexad&eacute;cimal et que <tt>0x</tt> est obligatoire au d&eacute;but
de l'adresse r&eacute;seau mais pas n&eacute;cessaire au d&eacute;but de l'adresse de noeud.

<p>
Il y a d'autres endroits o&ugrave; l'on aurait pu stocker cette information.
Si vous avez seulement un modem pour les appels entrants, alors une
entr&eacute;e aurait pu &ecirc;tre ajout&eacute;e au fichier <tt>/etc/ppp/options</tt>. Cette
information aurait &eacute;galement pu &ecirc;tre pass&eacute;e sur la ligne de commande de
<em>pppd</em>.

<sect2><heading>Tester la configuration du serveur
<p>
Pour tester la configuration, vous aurez besoin d'un client fonctionnant
correctement. Quand l'utilisateur appelle, se logue et que <em>pppd</em> 
d&eacute;marre, celui-ci va attribuer l'adresse r&eacute;seau, avertir le client du
num&eacute;ro de noeud du serveur et n&eacute;gocier le num&eacute;ro de noeud du client.
Lorsque ceci est termin&eacute; et apr&egrave;s que <em>ipxd</em> a d&eacute;tect&eacute; la
nouvelle interface, le client doit pouvoir &eacute;tablir des connexions
IPX avec des h&ocirc;tes distants.

<sect1><heading>Configurer un client IPX/PPP
<p>
Dans une configuration client, le fait de configurer ou non votre machine
Linux en routeur IPX d&eacute;pend de votre volont&eacute; d'agir en routeur IPX
sur le r&eacute;seau local de la machine. Si vous avez une machine isol&eacute;e qui se
connecte &agrave; un serveur IPX/PPP alors vous n'avez pas besoin d'utiliser
<em>ipxd</em>. En revanche, si vous avez un r&eacute;seau local et souhaitez
que toutes les machines du r&eacute;seau puissent utiliser la route IPX/PPP
alors vous devez configurer et faire tourner <em>ipxd</em> comme d&eacute;crit.
Cette configuration est plus simple car vous n'avez qu'un seul 
p&eacute;riph&eacute;rique s&eacute;rie &agrave; configurer.

<sect2><heading>Configurer <em>pppd</em>
<p>
La configuration la plus simple est celle qui permet au serveur de fournir
toute l'information sur la configuration du r&eacute;seau IPX. Cette configuration
serait compatible avec la configuration du serveur d&eacute;crite au-dessus.

<p>
Vous avez &agrave; nouveau besoin d'ajouter des options dans votre fichier
<tt>/etc/ppp/options</tt> :

<tscreen><verb>
ipxcp-accept-network
ipxcp-accept-remote
ipxcp-accept-local
</verb></tscreen>

Les options indiquent &agrave; <em>pppd</em> d'agir de mani&egrave;re compl&egrave;tement passive
et d'accepter tous les d&eacute;tails de configuration fournis par le serveur.
Vous pouvez fournir ici des valeurs par d&eacute;faut pour les serveurs qui ne
fournissent pas ces d&eacute;tails en ajoutant des lignes <tt>ipx-network</tt>
et <tt>ipx-node</tt> similaires &agrave; la configuration du serveur.

<sect2><heading>Tester le client IPX/PPP
<p>
Pour tester le client, vous avez besoin d'un serveur &agrave; appeler connu pour
fonctionner correctement. Une fois que vous avez appel&eacute; et que <em>pppd</em>
a d&eacute;marr&eacute;, vous devriez voir les d&eacute;tails de votre configuration IPX sur
votre p&eacute;riph&eacute;rique <tt>ppp0</tt> lorsque vous utilisez la commande
<em>ifconfig</em>. Vous devriez &eacute;galement &ecirc;tre capable d'utiliser
<em>ncpmount</em>.

<p>
Je ne sais pas si vous devrez ajouter les routes IPX manuellement pour
atteindre des serveurs distants ou non. Il semblerait que oui. Si
quelqu'un qui a cette configuration pouvait me le dire, je lui en
serais reconnaissant.


<sect><heading>Tunnel IPX sur IP

<p>
    Beaucoup d'entre vous doivent &ecirc;tre dans la situation o&ugrave; deux r&eacute;seaux
    locaux IPX sont s&eacute;par&eacute;s par une simple connexion IP. Comment
    pourra-t-on dans ce cas jouer un deathmatch &agrave; DOOM pour DOS dans cette
    situation,
    demanderiez-vous ? Andreas Godzinap <tt>&lt;ag@agsc.han.de&gt;</tt> a une 
    r&eacute;ponse pour vous avec <em>ipxtunnel</em>.
    <p>
    <em>ipxtunnel</em> fournit une sorte de pont pour IPX en permettant &agrave; des 
    paquets IPX d'&ecirc;tre encapsul&eacute;s dans des paquets de donn&eacute;es TCP/IP de
    mani&egrave;re &agrave; ce qu'ils soient transport&eacute;s par une connexion TCP/IP. Ce 
    programme attend l'arriv&eacute;e de paquets IPX et lors de leur arriv&eacute;e, il 
    les enferme dans un paquet de donn&eacute;es TCP/IP et le route vers l'adresse 
    IP distante que vous aurez sp&eacute;cifi&eacute;e. Pour que cela fonctionne, la 
    machine qui re&ccedil;oit le paquet de donn&eacute;es
    encapsul&eacute; doit, elle aussi, faire tourner une version identique
    d'<em>ipxtunnel</em>.
    
<sect1><heading>R&eacute;cup&eacute;rer <em>ipxtunnel</em>

<p>
    Vous pouvez obtenir <em>ipxtunnel</em> sur
   <url url="ftp://metalab.unc.edu/pub/Linux/system/network/daemons"
        name="Metalab"> ou sur un site miroir.
    
<sect1><heading>Compiler <em>ipxtunnel</em>

<p>
 <em>ipxtunnel</em> se compile proprement chez moi en utilisant les commandes :
 <tscreen><verb>

       # cd /usr/src
       # tar xvfz .../ipxtunnel.tgz
       # cd ipxtunnel
       # make
</verb></tscreen>




<sect1><heading>Configurer <em>ipxtunnel</em>

<p>
La configuration d'<em>ipxtunnel</em> est ais&eacute;e. Admettons que la machine de
vos amis soit <tt>gau.somewhere.com</tt> et que votre machine soit appel&eacute;e
<tt>gim.sw.edu</tt>. <em>ipxtunnel</em> utilise un fichier de configuration appel&eacute;
<tt>/etc/ipxtunnel.conf</tt>. Ce fichier vous permet de sp&eacute;cifier le port UDP par 
d&eacute;faut &agrave; utiliser pour la connexion TCP/IP par laquelle les donn&eacute;es encapsul&eacute;es 
seront envoy&eacute;es ainsi que l'interface locale o&ugrave; ipxtunnel doit &eacute;couter et 
d&eacute;livrer les paquets IPX.
	<p>
      Un simple fichier de configuration ressemblera &agrave; :
<tscreen><verb>
       #
       # /etc/ipxtunnel.conf pour gim.sw.edu
       #
       # Le port UDP à utiliser                (par défaut 7666)
       port 7777
       #
       # Le nom de la machine distante où les paquets IPX doivent être envoyés
       remote gau.somewhere.com
       #
       # Les interfaces IPX locales à écouter (par défaut eth0)
       interface eth0
       interface eth1

</verb></tscreen>
       Évidemment l'autre machine aura un fichier de configuration similaire
       sp&eacute;cifiant votre machine comme h&ocirc;te distant (<tt>remote</tt>).
       
<sect1><heading>Tester et utiliser <em>ipxtunnel</em>
    
<p>    
      <em>ipxtunnel</em> se comporte <bf>comme</bf> un pont IPX, ainsi les 
r&eacute;seaux IPX &agrave; chaque extr&eacute;mit&eacute; de la liaison TCP/IP doivent probablement 
&ecirc;tre les m&ecirc;mes.
      Andreas n'a jamais test&eacute; <em>ipxtunnel</em> dans un environnement qui utilise
      r&eacute;ellement les serveurs de fichiers Novell, donc si vous l'essayez
      dans un tel environnement, donnez-en le r&eacute;sultat &agrave; Andreas pour qu'il
      sache si &ccedil;a marche ou pas.
      <p>
      Si <em>ipxtunnel</em> fonctionne, vous devriez &ecirc;tre en mesure de lancer DOOM
      sur les machines &agrave; chaque bout de la connexion utilis&eacute;e en mode IPX et
      vous devriez vous voir l'un l'autre.
      <p>
      Andreas n'a test&eacute; ce logiciel que sur de bonnes lignes rapides et ne
      garantit pas sa performance si votre liaison est &agrave; faible vitesse. Une
      fois de plus, dites-lui ce qui marche et ne marche pas.
      
<sect><heading>Support commercial IPX pour Linux
<p>
<sect1><heading>Caldera's Network Desktop
<p>

      Caldera Inc. commercialise une distribution Linux poss&egrave;dant de
      nombreuses fonctions et am&eacute;liorations. Elle inclut un support
      totalement fonctionnel d'un client Novell Netware. La distribution de
      base est la respect&eacute;e Red Hat Linux et Caldera y a ajout&eacute; son "Network
      Desktop". Le support Netware inclut un client Novell Netware poss&eacute;dant
      toutes les fonctionnalit&eacute;s requises, bâties sur une technologie
      licenci&eacute;e par Novell Corporation. Ce client fournit un acc&egrave;s total &agrave;
      des serveurs de fichiers Novell 3.x et 4.5 et inclut des
      fonctionnalit&eacute;s comme le "Netware Directoy Service" (NDS) et 
      l'encryptage RSA.
<p>
      Vous pourrez obtenir plus d'informations et de d&eacute;tails sur le serveur
web 
      <url url="http://www.caldera.com/" name="Caldera Inc">.
<p>
Si vous travaillez dans un environnement Netware 4.x et/ou NDS, alors le
client Netware de Caldera est la seule solution disponible.
<p>
      Si vous devez mettre en oeuvre une solution Novell pour Linux critique de 
      mani&egrave;re professionnelle, vous devriez regarder le produit de Caldera de pr&egrave;s.

<sect><heading>Foire Aux Questions
<p>
<descrip>
<tag>O&ugrave; puis-je trouver des logiciels IPX pour Linux fournis avec un support
commercial ?
</tag><em>Caldera Corp.</em> offre un client Netware 3.x et 4.x compl&egrave;tement
support&eacute; avec une licence compl&egrave;te. Pour de plus amples informations, consultez
le site web de <url url="http://www.caldera.com/" name="Caldera Inc">.
<tag>Est-ce que les logiciels IPX fonctionnent avec Arcnet/Token Ring/etc. ?
</tag>Les logiciels IPX pour Linux fonctionnent avec les interfaces Arcnet et
Token Ring. Je n'ai encore entendu personne essayer avec AX.25 . La configuration
se passe de la m&ecirc;me mani&egrave;re que pour l'Ethernet, sauf que vous devrez remplacer
'eth0' par le nom de p&eacute;riph&eacute;rique appropri&eacute; et mettre l'adresse mat&eacute;rielle
appropri&eacute;e lorsque n&eacute;cessaire.
<tag>Comment est-ce que je configure plus d'une interface IPX ?
</tag> Si vous avez plus d'une interface dans votre machine, vous devez utiliser 
la commande <em>ipx_interface</em> pour configurer manuellement chacune d'entre
elles. Vous ne devez pas utiliser la configuration "plug'n'play".
<tag>Comment est-ce que je choisis les adresses IPX ?
</tag> Les r&eacute;seaux IPX sont similaires mais non identiques aux r&eacute;seaux IP.
Une diff&eacute;rence majeure est la fa&ccedil;on dont les adresses sont utilis&eacute;es. IPX n'utilise
pas le concept de sous-r&eacute;seau. Le lien entre les adresses r&eacute;seau et les r&eacute;seaux
est diff&eacute;rent. Les r&egrave;gles sont relativement simples.
<itemize>
<item>Chaque adresse de r&eacute;seau IPX doit &ecirc;tre unique sur un r&eacute;seau &agrave; grande &eacute;chelle (WAN).
Ceci inclut les adresses de r&eacute;seau internes. Beaucoup d'organisations utilisant IPX
sur des r&eacute;seaux &agrave; grande &eacute;chelle ont une politique d'adressage que vous devriez suivre.
<item>Chaque adresse d'h&ocirc;te sur un r&eacute;seau particulier doit &ecirc;tre unique. Cela signifie
que tous les h&ocirc;tes sur chaque r&eacute;seau IPX doivent avoir une adresse assign&eacute;e unique.
Dans le cas d'un r&eacute;seau Ethernet, ce n'est pas difficile, car les cartes ont chacune
une adresse unique. Dans le cas d'IPX/PPP, cela signifie que vous devez vous assurer
d'allouer une adresse unique pour tous les h&ocirc;tes du r&eacute;seau, quel que soit le bout
de la (des) liaison(s) auquel ils sont connect&eacute;s. Les adresses des h&ocirc;tes n'ont pas
besoin d'&ecirc;tre uniques &agrave; travers un WAN car l'adresse du r&eacute;seau est combin&eacute;e &agrave;
l'adresse de l'h&ocirc;te pour identifier l'h&ocirc;te de mani&egrave;re unique.
</itemize>
<tag>Quels sont les types de trame que je devrais utiliser?
</tag>Il y a plusieurs types de trames au-dessus desquelles vous pouvez faire fonctionner
IPX. Les plus utilis&eacute;es sont d&eacute;crites dans la section 'termes utilis&eacute;s dans ce document'
(sous l'entr&eacute;e <tt>'type de trame'</tt>).
<p>
Si vous installez votre machine sur un r&eacute;seau existant, alors vous devrez utiliser ce
qui est d&eacute;j&agrave; utilis&eacute; pour vous permettre de communiquer avec les autres machines du
r&eacute;seau. En revanche, si vous installez un r&eacute;seau tout neuf, il y a toute une vari&eacute;t&eacute;
de protocoles pour transporter votre trafic IPX que vous pouvez utiliser. Si vous 
installez un r&eacute;seau tout neuf et que vous envisagez d'y faire passer de l'IPX et
de l'IP, je vous recommande des trames de type <tt>Ethernet_II</tt>.
<tag>Mes machines Windows95 brouillent la d&eacute;tection automatique du type de mes trames.
</tag>Apparement, ils y arrivent, ouais. Je pourrais faire des commentaires pas 
gentils, mais &agrave; la place, je vous sugg&eacute;rerais de configurer manuellement le type
de trames plut&ocirc;t que d'utiliser la configuration automatique. C'est probablement la
meilleure fa&ccedil;on en tout cas.
<tag>Pourquoi est-ce que j'obtiens le message 'invalid argument' quand je configure
IPX ?
</tag>Vous n'avez probablement pas un noyau qui supporte IPX. Soit vous recompilez
votre noyau pour qu'il le fasse, soit vous v&eacute;rifiez que vous avez bien utilis&eacute;
lilo pour installer et utiliser le nouveau noyau.
<tag>Pourquoi est-ce que j'obtiens le message 'package not installed' quand je
configure IPX ?
</tag>Vous n'avez probablement pas un noyau qui supporte IPX. Soit vous recompilez
votre noyau pour qu'il le fasse, soit vous v&eacute;rifiez que vous avez bien utilis&eacute;
lilo pour installer et utiliser le nouveau noyau.
<tag>Pourquoi est-ce que <em>pppd</em> m'envoie le message 'IPX support 
not in kernel' ?
</tag>Vous avez probablement compil&eacute; IPX comme un module et vous ne vous &ecirc;tes pas
assur&eacute; qu'il &eacute;tait charg&eacute; avant de d&eacute;marrer <em>pppd</em>.
<tag>Comment exporter en NFS un syst&egrave;me de fichiers NCP mont&eacute; ?
</tag>Pour utiliser NFS pour exporter un syst&egrave;me de fichiers NCP, vous devez
le monter en utilisant l'option <tt>-v</tt> de <em>ncpmount</em>. Cette option
permet de monter un seul volume d'un serveur de fichiers au lieu de les monter
tous. Lorsque vous fa&icirc;tes ainsi, le d&eacute;mon NFS vous permet d'exporter ce syst&egrave;me
de fichiers de la mani&egrave;re habituelle.
<tag>Pourquoi est-ce que slist ne marche pas quand j'ai un r&eacute;seau interne
avec <em>mars_nwe</em> ?
</tag>Vous devez avoir la requ&ecirc;te 'get nearest server' activ&eacute;e. L'entr&eacute;e 401
dans <tt>/etc/nwserv.conf</tt> doit &ecirc;tre 0, &agrave; moins que vous ayez une raison
pour ne pas r&eacute;pondre &agrave; ces requ&ecirc;tes. Si vous voulez simplement que <em>slist</em>
fonctionne et ne pas r&eacute;pondre &agrave; chaque requ&ecirc;te 'get nearest server', ajoutez
votre r&eacute;seau interne et num&eacute;ro de noeud dans <tt>/etc/nwserv.stations</tt>
et positionnez l'entr&eacute;e 401 de <tt>/etc/nwserv.conf</tt> &agrave; 2.
<tag>Est-ce que le paquetage ncpfs fonctionne avec mars_nwe ?
</tag>Les codes de Martin et Volkers commencent lentement &agrave; converger. Les
versions r&eacute;centes de <em>mars_nwe</em> ont une option pour lui permettre de
marcher avec <em>ncpfs</em>. Vous devez activer <tt>WITH_NAME_SPACE_CALLS</tt>
dans le fichier <tt>config.h</tt> de <em>mars_nwe</em>.
</descrip>

<sect><heading> Copyright
<p>

L'IPX-HOWTO est soumis au Copyright (c) 1995 Terry Dawson.
<p>
Cette documentation est libre, vous pouvez la redistribuer et/ou la
modifier selon les termes de la Licence Publique G&eacute;n&eacute;rale GNU publi&eacute;e
par la Free Software Foundation (version 2 ou bien toute autre
version ult&eacute;rieure choisie par vous).

Cette documentation est distribu&eacute;e car potentiellement utile, mais
<bF>SANS AUCUNE GARANTIE</bf>, ni explicite ni implicite, y compris
les garanties de <bf>commercialisation</bf> ou <bf>d'adaptation dans
un but sp&eacute;cifique</bf>. Reportez-vous &agrave; la Licence Publique G&eacute;n&eacute;rale
GNU pour plus de d&eacute;tails.

Vous pouvez obtenir une copie de la Licence Publique G&eacute;n&eacute;rale GNU en
&eacute;crivant &agrave; la <url url="http://www.fsf.org" name="Free Software
Foundation">, Inc., 675 Mass Ave, Cambridge, MA 02139, &Eacute;tats-Unis.

Les marques d&eacute;pos&eacute;es sont propri&eacute;t&eacute;s de leurs
propri&eacute;taires respectifs.

    
    
<sect><heading>Remerciements
<p>
Terry Dawson <tt/&lt;terry@perf.no.itg.telstra.com.au>/ pour le document initial.
<p>
David E. Storey <tt>&lt;dave@tamos.gmu.edu&gt;</tt> et
Volker Lendecke <tt>&lt;lendecke@namu01.gwdg.de&gt;</tt>
qui m'ont assist&eacute; grandement en me fournissant
des informations pour ce document.
Gilbert Callaghan <tt>&lt;gilbert@pokey.inviso.com&gt;</tt>, 
David Higgins <tt>&lt;dave@infra.com&gt;</tt> et
Chad Robinson <tt>&lt;chadr@brtgate.brttech.com&gt;</tt> pour leur 
contribution sur la configuration de IPX/PPP.
Bennie Venter <tt/&lt;bjv@Gil-galad.paradigm-sa.com>/ pour les informations
utiles sur les types de trames.
Christopher Wall <tt>&lt;vergil@idir.net&gt;</tt> pour ses suggestions utiles afin
d'am&eacute;liorer la lecture et l'agencement de ce document.
Axel Boldt <tt/&lt;boldt@math.ucsb.edu>/ pour ses suggestions utiles et le
retour d'informations.
Erik D. Olson <tt/&lt;eriko@wrq.com>/ pour son retour d'informations utile
et ses informations pour la configuration de PPP pour IPX.
Brian King <tt/&lt;root@brian.library.dal.ca>/ pour sa contribution &agrave; une
question de la section FAQ

<p>
     "NetWare" est une marque d&eacute;pos&eacute;e de <url url="http://www.novell.com/" name="Novell Corporation">.
	<p>
     "Caldera" est une marque d&eacute;pos&eacute;e de <url url="http://www.caldera.com/" name="Caldera Corporation">.
     
<p>     
     
   <tt>  Kevin Thorpe</tt>
   <p>
   <tt>&lt;kevin@pricetrak.com&gt;
   </tt>
   </article>
