Avant de pouvoir utiliser ou configurer les outils réseau, vous devez vous assurer que votre noyau contient les parties nécessaires. La meilleure façon de s'en assurer est de compiler le vôtre en sélectionnant les options que vous voulez.
En supposant que vous ayez obtenu et désarchivé un noyau puis appliqué les
patches dont vous avez besoin pour supporter des options non-standards, tout ce
que vous avez à faire est d'éditer
/usr/src/linux/drivers/net/CONFIG
. Ce fichier contient beaucoup de
commentaires pour vous guider. En général vous n'aurez pas besoin de le
modifier beaucoup il contient des valeurs par défaut quasi-universelles. Dans
mon cas je n'ai pas besoin de l'éditer du tout. Ce fichier est nécessaire si
votre carte est inhabituelle ou si elle n'est pas détectée par le pilote
ethernet. Ceci permet de coder en dur certains éléments de matériel ethernet.
Par exemple, si votre carte ethernet est proche, mais n'est pas un clone exact
d'une WD-8013, vous pourrez configurer les adresses de la mémoire partagée pour
être sûr que le pilote détecte bien la carte et qu'il sait la gérer correctement.
Référez-vous à
/http:/sunsite.unc.edu/mdw/HOWTO/Ethernet-HOWTO pour plus
d'informations sur ce fichier et ses effets sur les cartes ethernet. Ce fichier contient aussi des
paramètres pour PLIP, mais les valeurs par défaut devraient être bonnes sauf si
vous avez une machine particulièrement lente.
Quand vous serez satisfait de votre fichier CONFIG, vous pourrez construire le noyau. La première étape est d'éditer le fichier Makefile au début pour être sûr que le noyau correspondra à votre configuration VGA puis vous pourrez lancer le programme de configuration du noyau :
# cd /usr/src/linux
# make config
On vous posera une série de questions. Il y a quatre sections traitant du code
réseau. Ce sont les sections General setup
, Networking
options
, Network device support
et Filesystems
. La plus
difficile à configurer est la partie Network device support
. Cette
partie vous permet de choisir les pilotes des périphériques que vous voudrez
configurer. Dans l'ensemble, vous pouvez choisir les options par défaut pour
les autres parties sans risque. Voici un exemple du déroulement des
opérations :
*
* General setup
*
...
...
Networking support (CONFIG_NET) [y] y
...
...
Dans la section General setup
vous dites simplement si vous
désirez le support réseau ou non. Naturellement vous répondez yes.
*
* Networking options
*
TCP/IP networking (CONFIG_INET) [y]
IP forwarding/gatewaying (CONFIG_IP_FORWARD) [n]
IP multicasting (CONFIG_IP_MULTICAST) [n]
IP firewalling (CONFIG_IP_FIREWALL) [n]
IP accounting (CONFIG_IP_ACCT) [n]
*
* (it is safe to leave these untouched)
*
PC/TCP compatibility mode (CONFIG_INET_PCTCP) [n]
Reverse ARP (CONFIG_INET_RARP) [n]
Assume subnets are local (CONFIG_INET_SNARL) [y]
Disable NAGLE algorithm (normally enabled) (CONFIG_TCP_NAGLE_OFF) [n]
The IPX protocol (CONFIG_IPX) [n]
*
La seconde partie de Networking options
vous permet de sélectionner ou
d'inhiber des options spéciales. Vous pouvez sans problème accepter les valeurs par
défaut sauf si vous savez vraiment pourquoi vous voulez les changer. Elles sont décrites plus loin si vous êtes intéressés.
*
* Network device support
*
Network device support? (CONFIG_NETDEVICES) [y]
Dummy net driver support (CONFIG_DUMMY) [n]
SLIP (serial line) support (CONFIG_SLIP) [y]
CSLIP compressed headers (CONFIG_SLIP_COMPRESSED) [y]
16 channels instead of 4 (SL_SLIP_LOTS) [n]
PPP (point-to-point) support (CONFIG_PPP) [y]
PLIP (parallel port) support (CONFIG_PLIP) [n]
Do you want to be offered ALPHA test drivers (CONFIG_NET_ALPHA) [n]
Western Digital/SMC cards (CONFIG_NET_VENDOR_SMC) [y]
WD80*3 support (CONFIG_WD80x3) [y]
SMC Ultra support (CONFIG_ULTRA) [n]
AMD LANCE and PCnet (AT1500 and NE2100) support (CONFIG_LANCE) [n]
3COM cards (CONFIG_NET_VENDOR_3COM) [n]
Other ISA cards (CONFIG_NET_ISA) [n]
EISA, VLB, PCI and on board controllers (CONFIG_NET_EISA) [n]
Pocket and portable adaptors (CONFIG_NET_POCKET) [n]
*
Cette section est la plus importante. C'est l'endroit où vous sélectionnez les
périphériques que vous voulez utiliser. Vous pouvez voir que j'ai choisi le
support SLIP avec les en-têtes compressés, PPP, le pilote WD80*3 et rien
d'autre. Répondez simplement `y'
à tout ce qui vous intéresse et
`n'
au reste.
*
* Filesystems
*
...
...
/proc filesystem support (CONFIG_PROC_FS) [y]
NFS filesystem support (CONFIG_NFS_FS) [y]
...
...
Si vous voulez utiliser un client NFS, vous devrez choisir le système de
fichier NFS. Vous devez aussi inclure le système de fichier /proc
parce qu'un certain nombre d'utilitaires l'utilisent.
Une fois que vous aurez terminé, il ne vous reste plus qu'à compiler le noyau :
# make dep
# make
N'oubliez pas de faire un make zlilo
pour que votre nouveau noyau fonctionne
correctement.
Les noyaux récents offrent un grand nombre d'options quand vous faites
make config
. En général vous n'avez pas besoin de les changer, mais ce peut être utile dans certains cas.
Cette option est évidente, elle choisit si vous optez pour l'ensemble tcp/ip dans votre noyau. Il y a des chances pour que, si vous lisez ceci, vous répondiez oui.
Ceci a été ajouté pour permettre aux utilisateurs de SLIP et PPP de configurer une adresse sur leur machine linux indépendante de la liaison série lorsqu'elle est établie. C'est un moyen commode pour donner à votre machine deux adresses.
Ceci détermine ce que fera le noyau quand il recevra un datagramme ayant une adresse de destination qui n'appartient pas à l'un de ses propres périphériques. Vous devez choisir cette option si vous voulez que votre noyau agisse en tant que routeur IP. La plupart des serveurs SLIP et PPP ont besoin de cette option.
C'est un support au niveau test alpha pour le multilcasting IP, permettant d'utiliser des services tels que `Internet Talk Radio' et la video en direct. Vous avez besoin de programmes additionnels pour utiliser cette fonctionnalité, ce n'est que le support noyau.
Cette option permet de vous fournir des options de sécurité faciles à utiliser sur votre machine linux. Vous pouvez activer/désactiver la possibilité d'accès à vos ports tcp/ip dans des domaines d'adresses que vous aurez choisies. Ceci nécessite également des programmes additionnels pour fonctionner.
Cette option est pour ceux qui veulent utiliser leur machine pour fournir des connexions Internet aux autres à titre onéreux. Cela permet de compter et d'enregistrer par port et par adresse les octets qui entrent et qui sortent. Avec l'aide d'un logiciel adéquat ceci vous permet de répartir les frais d'utilisation pour chaque personne utilisant vos capacités réseau.
Cette option fournit une solution pour un bogue qui engendre des problèmes quand on utilise des programmes PC/TCP pour dialoguer avec votre machine. Il y a un bogue dans PC/TCP qui provoque des difficultés et cette option permet d'éviter une catastrophe. Normalement vous la laissez désactivée, mais si vous avez des utilisateurs sur votre réseau qui tournent avec PC/TCP vous activez cette option pour éviter les problèmes.
Cette option vous permet de configurer le protocole RARP dans votre noyau. Cette option a été ajoutée pour permettre le lancement des systèmes SUN 3. Ce n'est cependant pas très utile.
Cette option permet de choisir si vous considérez que tout votre sous-réseau est directement connecté à votre machine linux, ou bien si il peut être relié ou subdivisé sur une couche inférieure. En pratique, il y aura peu de différences si vous laissez l'option par défaut.
C'est un option de temps qui détermine le moment où un datagramme doit être envoyé. Le réglage par défaut donne le meilleur rendement dans la plupart des cas et doit être laissé tel quel, sa désactivation risquant de dégrader le rendement. On peut changer cette option si on utilise un programme avec option socket , mais il vaut mieux la garder.
Cette option permet d'inclure le support protocole IPX dans votre noyau. Le protocole IPX est un protocole inter-réseau similaire au protocole IP. Ce protocole est un de ceux utilisés dans l'ensemble Novell.
Cette option permet de choisir si vous compilez avec l'ensemble radio-amateur AX25. Si vous le choisissez, alors une nouvelle classe de sockets réseau est disponible pour la programmation. Le protocole AX.25 est utilisé principalement par les radio-amateurs pour le packet-radio.