Mise en r‚seau de FreeDOS - installation du pilote ODI

Vue d'ensemble

    (Image du modŠle ODI)
  Les pilotes "Open Datalink Interface" (ODI) ‚taient … l'origine
  n‚cessaires pour Novell NetWare. Mais cela ne signifie pas qu'ils ne
  peuvent pas ˆtre utilis‚s pour les applications TCP/IP fond‚es sur les
  pilotes de paquets. En fait, ils ont ‚t‚ utilis‚s pour cela depuis
  leur invention.
  Un pilote ODI est un bon choix si vous ne pouvez pas obtenir un pilote
  de paquets pour votre NIC. Comme NetWare ‚tait un systŠme populaire
  pendant les ann‚es 80 et 90 du siŠcle dernier, il y a de bonnes
  chances pour que le fabricant de votre carte r‚seau ait fourni un tel
  pilote ODI.

O— les trouver

  Recherchez un r‚pertoire appel‚ "netware", "nwclient", "ODI" ou "VLM"
  sur la disquette ou CD-ROM d'installation de votre carte. Les pilotes
  sont ex‚cutables, leurs noms ressemblent … "3C574.COM" ou "DFE670.COM".

Comment ils fonctionnent

  Dans le jargon de la sp‚cification ODI (voyez : http://developer.
  novell.com/ndk/doc/lancomp/dos_psta/dos_pstack.pdf (*01)) ces pilotes
  de la carte r‚seau sont appel‚s "Multiple Link Interface Driver"
  (MLID) c'est-…-dire "Pilote d'interface de liaison multiple".
  Comme vous le voyez sur l'image ci-dessus, le MLID communique
  directement avec le mat‚riel de la carte d'interface r‚seau. Le MLID
  re‡oit les paquets pour diverses piles de protocoles (kernels) dans le
  systŠme et transmet ces paquets … un second logiciel, la "Link Support
  Layer" (LSL), c'est-…-dire la "Couche de support de liaison".
  La LSL d‚termine alors quelle pile de protocole doit recevoir le
  paquet. Les deux, … savoir le MLID et la LSL composent
  l'architecture ODI. Nous avons donc besoin d'un fichier additionnel
  pour que l'ODI fonctionne : la LSL, qui est un fichier appel‚
  "LSL.COM". Ce fichier fait partie du "Client NetWare DOS", qui peut
  ˆtre t‚l‚charg‚ chez Novell (voyez:
  http://www.novell.com/coolsolutions/tools/downloads/dw271e.zip (*02)).
  Le site de t‚l‚chargement de Novell mentionne explicitement "LICENCE:
  GRATUIT" (voyez : http://www.novell.com/coolsolutions/tools/
  13555.html (*03)) pour ce logiciel. · la suite du t‚l‚chargement et
  de l'extraction, le fichier "LSL.COM" peut ˆtre trouv‚ dans le dossier
  "NIOS".

Le convertisseur/shim

    (Image de Webspyder)
  Comme nous voulons utiliser l'ODI avec les applications TCP/IP fond‚es
  sur les pilotes de paquets, nous devons t‚l‚charger un autre logiciel,
  un "convertisseur pilote de paquets vers l'ODI". Les convertisseurs
  sont aussi appel‚s des "wrappers" ou un "shim".
  Nous avons trois options :
    * ODIPKT.COM v3.1 par Dan Lanciani (cf. http://www.danlan.com (*04))
      … l'Universit‚ de Harvard. Le logiciel est dans le domaine public;
      sa licence permet la redistribution libre des binaires et de la
      source, et la modification de la source (assembleur). ODIPKT.COM
      fait partie de FreeDOS 1.0. Si vous avez install‚ les applications
      r‚seau depuis la distribution FullCD, il peut ˆtre trouv‚ dans
      C:\FDOS\BIN. C'est le logiciel que la plupart des utilisateurs
      choisiront.
    * PKT2ODI.EXE par Caldera. Ce fichier fait partie du logiciel DR
      "WebSpyder" un navigateur graphique pour DOS que Caldera a publi‚
      en 1998. WebSypder a ‚t‚ conc‚d‚ sous licence par xChaos/
      Arachne. Le logiciel peut ˆtre
      t‚l‚charg‚ ici (cf. http://lazybrowndog.net/webspyder (*05)).
      Sa licence permet son ‚valuation et sa redistribution libre tant
      que cela revˆt un but non commercial.
    * Si vous ex‚cutez d‚j… tout NetWare, vous pouvez utiliser
      IPXPKT.COM pour lancer un pilote de paquets sur IPX.COM.
      IPXPKT.COM est un logiciel libre par Crynwr et fait partie de leur
      collection de pilotes de paquets PKTD11.ZIP (cf. http://www.
      crynwr.com/drivers/pktd11.zip (*06)). Il s'agit l… d'un cas
      sp‚cial qui ne fera pas l'objet d'une enquˆte plus approfondie
      dans ce document.
  Avec le MLID, la LSL et le convertisseur nous avons la plupart des
  fichiers n‚cessaires. La seule piŠce manquante est le fichier de
  configuration "NET.CFG". Un exemple de fichier avec les r‚glages
  suppos‚s pour votre carte peut ˆtre trouv‚e sur le CD ou la disquette
  qui a ‚t‚ livr‚ avec la carte et devrait ˆtre dans le mˆme r‚pertoire
  que le pilote ODI.

Configuration de NET.CFG

  Maintenant, ‚ditons notre principal fichier de configuration NET.CFG.
  S'il n'existe pas, cr‚ez-le. Vous devez choisir un r‚pertoire - les
  emplacements par d‚faut de NET.CFG semblent ˆtre C:\NWCLIENT ou
  C:\NET. Dans tous les cas, l'emplacement devrait ˆtre dans le mˆme
  r‚pertoire o— LSL.COM et le pilote se trouvent. Un exemple de NET.CFG
  (voyez ci-dessous) qui a ‚t‚ livr‚ avec la 3Com 3C574 PC Card montre
  beaucoup de r‚glages de configuration qui sont n‚cessaires pour
  Novell NetWare et d'autres logiciels. Pour utiliser les applications
  TCP/IP fond‚es sur le pilote de paquets, les quatre lignes suivantes
  dans NET.CFG sont suffisantes :
      --- NET.CFG ---
      Link Support
        buffers 8 1600
      Link Driver 3C574
        Frame Ethernet_II
  Explication des paramŠtres :
      link support
  La ligne "Link Support" configure la LSL. Les options sont :
  "buffers", "max boards", "max stacks" et "mempool". Nous avons
  seulement besoin de d‚finir :
      buffers 8 1600
  Cela d‚termine le nombre et la taille des tampons de r‚ception de la
  LSL. Le num‚ro de communication par d‚faut pour TCP/IP est 8. L'auteur
  de ODIPKT, Dan Lanciani, recommande d'utiliser une taille de tampon de
  1600 octets pour ODIPKT. (cf. http://groups.google.de/group/comp.
  protocols.tcp-ip/msg/b8ba79ab39cacc4f/ (*07))
      Link Driver 3C574
  La ligne "Link Driver" configure le MLID (le pilote de votre
  carte r‚seau). Tout d'abord, le nom du pilote est sp‚cifi‚. Ci-dessus
  vous voyez l'exemple d'une 3Com 3C574 PC Card. Remplace-le par le nom
  de votre carte r‚seau.
  Puis nous configurons le "frame" ou le "type d'enveloppe" (les deux
  d‚clarations fonctionnent de la mˆme maniŠre et signifient la mˆme
  chose) utilis‚ par ce pilote :
      Frame Ethernet_II
  Il est possible de d‚finir plus d'un type de frame (trame) ici : Nous
  avons d‚j… entendu que l'ODI est un pilote multiprotocole, donc le
  MLID peut utiliser plus d'une trame et protocole avec la mˆme carte
  r‚seau mat‚rielle.
  Pour cela, il d‚finit des cartes logiques pour chaque trame d‚finie.
  Les trames possibles sont par exemple "ETHERNET_II" (protocole IP),
  "ETHERNET_802.2" ou "ETHERNET_802.3" (les deux utilisant le protocole
  IPX/SPX).
  Pour le convertisseur du pilote de paquets que nous voulons lancer
  plus tard, il est obligatoire de d‚finir au moins la trame Ethernet II
  ici. Vous devez ‚galement informer ODIPKT dans un paramŠtre de ligne
  de commande d'utiliser la carte avec la trame ETHERNET_II (voyez
  ci-dessous).
  Pour une documentation complŠte des paramŠtres dans NET.CFG voyez la
  "NetWare Client for DOS and MS Windows Technical Reference"
  (cf. http://www.docs.hp.com/en/J2771-90016/index.html (*08)).

Installation

  AprŠs avoir configur‚ NET.CFG nous pouvons d‚marrer les pilotes ODI
  dans AUTOEXEC.BAT durant le d‚marrage.
  La premiŠre chose que nous devons d‚marrer les la couche de support
  de liaison (Link Support Layer) :
      LH C:\NETWORK\NWCLIENT\LSL.COM /C C:\NETWORK\NET\NET.CFG
  Veuillez remplacer les chemins par ceux que vous utilisez sur votre
  systŠme. L'option "/C" indique … la LSL o— trouver NET.CFG.
  Cette option n'est n‚cessaire que si NET.CFG n'est pas dans le mˆme
  r‚pertoire que LSL.COM. Maintenant nous d‚marrons le MLID:
      LH C:\NETWORK\PCMCIA\3C574\ODI\3C574.COM
  En tant que derniŠre ‚tape, nous devons installer le convertisseur
  pilote de paquets vers ODI. Ici nous pouvons choisir entre ODIPKT ou
  le plus exotique PKT2ODI.
  La plupart des gens utiliseront le convertisseur libre ODIPKT.COM
  par Dan Lanciani qui peut ˆtre t‚l‚charg‚ ici : http://danlan.com/
  pdr_shim/odipkt/odipkt.zip (*09). Extrayez le fichier zip et
  chargez ODIPKT.COM avec une commande comme celle-ci dans AUTOEXEC.BAT:
    LH C:\NETWORK\NWCLIENT\ODIPKT.COM 0 96
  Le premier chiffre des paramŠtres ci-dessus ("0") d‚termine la carte
  qui utilise la trame ETHERNET_II. L'exemple suivant suppose que vous
  avez d‚fini diff‚rentes trames (aussi connues en tant que "envelope
  types", c'est-…-dire types d'enveloppe) dans NET.CFG:
      --- NET.CFG ---
      Link Driver 3C574
        FRAME ETHERNET_II
        FRAME ETHERNET_802.2
        FRAME ETHERNET_802.3
        FRAME ETHERNET_SNAP
  Puis vous devez indiquer … ODIPKT que le num‚ro de la carte logique
  qui prend en charge la trame Ethernet II. Comptez
  simplement les trames (frames) dans NET.CFG : Ethernet II est la
  premiŠre, la trame 802.2 est la seconde, la trame 802.3 est la
  troisiŠme, snap est la quatriŠme.
  Pour rendre les choses un peu plus difficiles, ODIPKT commence …
  compter avec "0" (comme le font les programmeurs). Cela signifie,
  selon l'exemple ci-dessus :
      ODIPKT.COM 0 | carte avec ETHERNET_II
      ODIPKT.COM 1 | ETHERNET_802.2 (ne fonctionnera pas)
      ODIPKT.COM 2 | ETHERNET_802.3 (ne fonctionnera pas)
      ODIPKT.COM 3 | ETHERNET_SNAP (ne fonctionnera pas)
  La seule option qui fonctionne pour ODIPKT est le num‚ro qui d‚finit
  la carte logique avec la trame Ethernet II, qui est "0" dans notre
  exemple. Maintenant nous regardons le second paramŠtre ("96") que nous
  utilisons pour lancer ODIPKT. Ce paramŠtre d‚finit le (vecteur)
  d'interruption logicielle utilis‚ par le pilote. Comme nous avons
  d‚j… entendu lors de la configuration du pilote de paquets,
  l'interruption logicielle la plus fr‚quemment utilis‚e, est 0x60 qui
  est la valeur hexad‚cimale de 60 (le "0x" nous dit simplement que
  le format est hexad‚cimal).
  Malheureusement ODIPKT ne comprend pas les valeurs hexad‚cimales, donc
  vous devez traduire ce paramŠtre en une valeur d‚cimale - qui est 96.
  Si vous voulez utiliser d'autres valeurs et vous n'ˆtes pas habitu‚ …
  l'hexad‚cimal, vous pouvez essayer une calculatrice hex-dec (voyez :
  http://www.langeneggers.ch/Nuetzliches/Hex_Dez.htm (*10)) ou bien
  utiliser la liste suivante :
        0x60 = 96
        0x61 = 97
        0x62 = 98
         ...
        0x69 = 105
        0x6A = 106
         ...
        0x7D = 125
        0x7E = 126

  Exemple de NET.CFG
    ; version 2.0
    ; max tasks = 60
    ; show dots = on
    link support
    buffers 8 1514
    ; mempool 4096
    ; CETTE SECTION EST POUR LA CONFIGURATION DES NOEUDS FINAUX
    ; GRABLES DE LINKWATCH (LINKWATCH MANAGEABLE END NODES)
    ;
    Protocol DME
    BIND #1
    ; remplacez avec vos informations sp‚cifiques … LinkWatch
    USER_NAME "Votre nom"
    NODE_NAME "Le nom de votre noeud"
    NODE_LOCATION "L'emplacement de votre noeud"
    ; d‚finissez le mot de passe selon les instructions de votre
    ; administrateur
    ; r‚seau
    ; NODE_PASSWORD "ABCDEFGH"
    PHONE_NUMBER "Votre num‚ro de t‚l‚phone"
    NOTES "Texte divers"
    NOTES "et plus de texte"
    LINK DRIVER 3C574
    INT 10
    ; PORT 300
    NO_AMP
    FRAME ETHERNET_802.2
    FRAME ETHERNET_802.3
    ; PROTOCOL IPX 0 ETHERNET_802.3
    FRAME ETHERNET_II
    FRAME ETHERNET_SNAP
    Netware DOS Requester
    FIRST NETWORK DRIVE = F
    NETWARE PROTOCOL = NDS BIND

Red‚marrage

  AprŠs un red‚marrage le pilote de paquets est install‚ et prˆt. Vous^
  pouvez utiliser une application pour tester si elle marche, par exemple
  la commande "ping" du paquet WATTCP.
  Bonne chance !
    (Image : messages d'amor‡age)

  (*01) OK
  (*02) OK
  (*03) OK
  (*04) https://web.archive.org/web/20110722171549/http:
        //www.danlan.com/
  (*05) OK
  (*06) http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/
        repositories/latest/net/crynwr.zip
  (*07) OK
  (*08) https://support.hpe.com/hpesc/public/docDisplay?docId=
        c02037554&docLocale=en_US
  (*09) https://web.archive.org/web/20110722171549/http://
        www.danlan.com/
  (*10) OK

  Copyright © 2007 Ulrich Hansen, Mainz (Allemagne), modifi‚ en 2010
  par W. Spiegl.
  Traduit en 2020 par Berki Yenign.

  Pour plus d'informations, voyez ici.

  La permission est accord‚e de copier, distribuer et/ou modifier ce
  document selon les termes de la licence de documentation libre GNU,
  version 1.2 ou toute version ult‚rieure publi‚e par la Free Software
  Foundation.
  Une copie de la licence est incluse dans la section intitul‚e
  "GNU Free Documentation License 1.2".