Pédants Principes PPP
Précédent |  | Suivant

# 3. Configuration du système FreeBSD

Il y a trois informations à fournir au système FreeBSD avant de le relier au réseau local de notre exemple:

- Son nom de machine (`hostname`), ``Curly'' dans notre exemple,

- La configuration de son interface réseau,

- Le fichier `/etc/hosts` (qui liste les noms et les adresses IP des autres machines du réseau).

Si vous avez installé FreeBSD via une connexion réseau, il est possible que certaines de ces informations soient déjà définies.

Même si vous pensez que votre système FreeBSD a déjà été correctement configuré au moment de l'installation, il vous mieux vous assurer de la validité de chacune de ces informations pour vous éviter des ennuis par la suite.

## 3.1. Contrôler le nom de la machine FreeBSD

Il est possible que le nom de la machine FreeBSD ait été défini et enregistré lors de l'installation du système. Pour le vérifier, entrez, à l'invite du système, la commande suivante:

``#` hostname`

Le nom de la machine FreeBSD sera affiché sur une seule ligne. Si ce nom paraît correct (c'est très subjectif :-), vous pouvez passer au paragraphe Contrôler la configuration de l'interface Ethernet.

Dans notre exemple, le résultat de la commande `hostname` devrait être ``curly.my.domain'' si le nom de la machine a été correctement défini à l'installation, ou ensuite. (A ce stade, ne vous préoccupez pas du suffixe ``.my.domain'', nous verrons cela par la suite. Ce qui compte maintenant est le nom qui précède le premier ``.'')

Si le nom de machine n'a pas été défini à l'installation, la réponse de `hostname` sera probablement ``myname.my.domain''. Vous devez alors éditer le fichier `/etc/rc.conf` pour définir le nom du système.

### 3.1.1. Définir le nom de la machine FreeBSD

> Note : Vous devez être en session sous ``root'' pour éditer les fichiers de configuration du système.

> Note : Si vous introduisez des erreurs dans les fichiers de configuration, il y a de fortes chances que votre système ne redémarre pas correctement! Soyez prudents !

Le nom de machine du système FreeBSD est défini au démarrage par le fichier `/etc/rc.conf`. Utilisez l'éditeur par défaut (``ee'') pour éditer ce fichier.

Sous une session ``root'', visualisez le fichier dans l'éditeur avec la commande:

``#` ee /etc/rc.conf`

Avec les touches flèches, allez jusqu'à la ligne qui définit le nom de machine du système FreeBSD. Par défaut, vous y trouvez:

---
### Basic network options: ###
hostname="myname.my.domain" # Set this !
---

Remplacez ces lignes, par exemple, par:

---
### Basic network options: ###
hostname="curly.my.domain" # Set this !
---

Une fois la modification faite, appuyez sur la touche Echap pour aller dans le menu de commandes de l'éditeur. Choisissez ``leave editor'' (quitter l'éditeur) et sélectionnez bien l'option ``save changes'' (enregistrer les modifications) quand la question vous est posée.

## 3.2. Contrôler la configuration de l'interface Ethernet

Rappelons nos hypothèses : l'interface Ethernet de la machine s'appelle ``ed0''. C'est la valeur par défaut pour les contrôleurs NE-1000, NE-2000, WD/SMC modèles 8003, 8013 et Elite Ultra (8216).

Les fichiers d'interface d'autres modèles de contrôleurs peuvent avoir d'autres noms sous FreeBSD. Si vous n'êtes pas certain du nom correspondant à votre contrôleur, consultez les Questions Fréquemment Posées à propos de FreeBSD (``FAQ'') et substituez la bonne valeur dans les exemples qui suivent.

De la même façon que pour le nom de la machine, l'interface Ethernet du système FreeBSD a peut-être été configurée à l'installation.

Pour consulter la configuration des interfaces (Ethernet et autres) de votre système FreeBSD), utilisez la commande suivante:

    # ifconfig -a

Soit en clair: "Donnes-moi la CONFIGuration des InterFaces de mes périphériques réseau."

Par exemple:

    # ifconfig -a
    ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
    ether 01:02:03:04:05:06
    lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
    tun0: flags=8050<POINTOPOINT,RUNNING, MULTICAST> mtu 1500
    l0: flags=c010<OINTOPOINT,LINK2,MULTICAST> mtu 552
    ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    inet 127.0.0.1 netmask 0xff000000
    #

Sur cet exemple, les périphériques suivants sont reconnus :

- `ed0`: l'interface Ethernet,

- `lp0`: l'interface parallèle (que nous n'utiliserons pas ici),

- `tun0`: l'interface SLIP (IP sur ligne série, que nous n'utiliserons pas ici),

- `ppp0`: un autre interface PPP (pour le module `ppp` intégré au noyau, que n'utiliserons pas ici),

- `lp0`: l'interface "en boucle" - "loopback" - que nous n'utiliserons pas non plus).

Dans l'exemple, l'interface ``ed0'' est active (``UP'') et fonctionne (``RUNNING''). Les indications importantes sont:

1. L'interface est active (``UP''),

2. Elle a une adresse Ethernet (``inet''), dans notre cas: 192.168.1.1,

3. Elle a un masque de sous-réseau (``netmask''; 0xffffff00 qui équivaut à 255.255.255.0) correct,

4. Elle a une adresse de diffusion (``broadcast''; ici, 192.168.1.255) valide.

Si la ligne décrivant l'interface Ethernet mentionne quelque chose comme:

    ed0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
    ether 01:02:03:04:05:06

c'est que cette interface n'est pas encore configurée.

Si l'interface Ethernet est déjà configurée, vous pouvez passer directement au paragraphe Renseigner la liste des autres machines du réseau. Sinon, continuez en séquence.

### 3.2.1. Configurer votre interface Ethernet

> Note : Vous devez être en session sous ``root'' pour éditer les fichiers de configuration du système.

> Note : Si vous introduisez des erreurs dans les fichiers de configuration, il y a de fortes chances que votre système ne redémarre pas correctement! Soyez prudents !

Les paramètres de configuration des interfaces réseau sont définis au démarrage par le fichier `/etc/rc.conf`. Utilisez l'éditeur par défaut (``ee'') pour éditer ce fichier.

Sous une session ``root'', visualisez le fichier dans l'éditeur avec la commande:

``#` ee /etc/rc.conf`

Vers la vingtième ligne environ du fichier, se trouve la section qui définit quelles interfaces réseau doivent être mises en service au démarrage. Le fichier de configuration par défaut contient la ligne :

    network_interfaces="lo0"        # List of network interfaces (lo0 is loopback)

que vous devrez modifier pour dire à FreeBSD que vous voulez ajouter un autre périphérique, en l'occurence l'interface ``ed0'', en:

    network_interfaces="lo0 ed0"    # List of network interfaces (lo0 is loopback)

(Faites attention à l'espace entre la définition de l'interface en boucle ``lo0'' et l'interface Ethernet ``ed0''.)

> Note : Si le nom correspondant à votre interface n'est pas ``ed0'',n'oubliez pas de mettre la valeur adéquate à la place.

Si vous avez installé FreeBSD via une connexion réseau, la ligne ```network_interfaces`'' comporte peut-être déjà un référence à votre carte Ethernet. Dans ce cas, assurez vous que son nom soit correct.

Les lignes qui suivent celles où sont listées les interfaces à mettre en service décrivent les paramètres de chacune de ces interfaces. Dans le fichier `/etc/rc.conf` par défaut, il n'y a qu'un seule ligne qui dit:

    ifconfig_lo0="inet 127.0.0.1"   # default loopback device configuration

Vous devrez ajouter une ligne qui définisse les caractéristiques de votre interface ``ed0''.

Si vous avez installé FreeBSD via une connexion réseau, la ligne ```ifconfig_ed0=`'' existe peut-être déjà. Vérifiez alors qu'elle contienne bien les bonnes valeurs.

En nous référant à notre exemple, nous insérerons la ligne suivante, immédiatement après la définition de l'interface ``en boucle'':

    ifconfig_ed0="inet 192.168.1.1 netmask 255.255.255.0"

Après modification, cette section du fichier `/etc/rc.conf` doit ressembler à:

    ---
    network_interfaces="lo0 ed0"    # List of network interfaces (lo0 is loopback)
    ifconfig_lo0="inet 127.0.0.1"   # default loopback device configuration
    ifconfig_ed0="inet 192.168.1.1 netmask 255.255.255.0"
    ---

Un fois que vous avez fait toutes les modifications nécessaires, appuyez sur la touche Echap pour aller dans le menu de commandes de l'éditeur. Choisissez ``leave editor'' (quitter l'éditeur) et sélectionnez bien l'option ``save changes'' (enregistrer les modifications) quand la question vous est posée.

## 3.3. Autoriser la transmission de paquets

Par défaut, FreeBSD n'active pas le transmission de paquets entre les différentes interfaces réseau d'une machine. En d'autres termes, les fonctions de routage (aussi appelées de passerelle) ne sont pas disponibles.

Si vous voulez utiliser le programme `ppp` comme poste Internet autonome et non comme passerelle entre le réseau local et votre fournisseur d'accès à Internet, vous pouvez passer directement au paragraphe Renseigner la liste des autres machines du réseau.

Si vous voulez utiliser le programme `ppp` pour connecter à la fois votre machine FreeBSD (pour servir de routeur) et les autres postes du réseau local, vous devez autoriser la transmission de paquets IP.

Pour cela, vous devez éditer le fichier `/etc/rc.conf`. Visualisez le fichier dans l'éditeur avec la commande:

``#` ee /etc/rc.conf`

Vers la quatre-vingt-cinquième ligne environ, vous trouverez la section qui contrôle la transmission de paquets. Elle ressemblera a ceci:

---
gateway_enable="NO" # Set to YES if the host will be a gateway
---

Modifiez-la en:

---
gateway_enable="YES" # Set to YES if the host will be a gateway
---

et quittez l'éditeur (en enregistrant vos modifications!).

> Note : Cette ligne contient peut-être déjà `gateway_enable="YES"` si la transmission de paquets IP a été autorisée au moment de l'installation du système FreeBSD.

## 3.4. Renseigner la liste des autres machines du réseau (`/etc/hosts`)

La dernière étape de la configuration du réseau local vu de la machine FreeBSD consiste à créer la liste des noms et des adresses TCP/IP des différentes machines raccordées au réseau local. Cette liste est définie dans le fichier `/etc/hosts`.

Par défaut, ce fichier ne contient qu'une ligne: le nom et l'adresse de l'interface ``en boucle''. Par convention, ce nom est toujours ``localhost'' et son adresse 127.0.0.1. (Reportez-vous à l'exemple de configuration des interfaces au paragraphe Contrôler la configuration de l'interface Ethernet.)

Pour éditer le fichier `/etc/hosts`, tapez la commande:

``#` ee /etc/hosts`

Allez jusqu'à la fin du fichier (en lisant au passage les commentaires, ce sont des informations utiles!) et ajoutez (toujours dans le cas du réseau de notre exemple) les noms et les adresses IP suivantes:

    192.168.1.1   curly   curly.my.domain # machine FreeBSD
    192.168.1.2   larry   larry.my.domain # machine Windows 95
    192.168.1.3   moe     moe.my.domain   # machine Windows for Workgroups
    192.168.1.4   shemp   shemp.my.domain # machine Windows NT

(Vous ne devez pas modifier la ligne ```127.0.0.1 localhost`''.)

Une fois que vous avez ajouté ces lignes, appuyez sur la touche Echap pour aller dans le menu de commandes de l'éditeur. Choisissez ``leave editor'' (quitter l'éditeur) et sélectionnez bien l'option ``save changes'' (enregistrer les modifications) quand la question vous est posée.

## 3.5. Tester le système FreeBSD

Félicitations! Une fois que vous en êtes arrivé là, votre machine FreeBSD est maintenant une machine UNIX connectée au réseau! Si vous avez dû modifier votre fichier `/etc/rc.conf`, il faut redémarrer votre machine FreeBSD. Cela va faire deux choses importantes:

- Appliquer les modifications de configuration des interfaces, et:

- Vérifier que le système redémarre sans erreur de configuration flagrante.

### 3.5.1. Vérifier le bon fonctionnement de l'interface ``en boucle''

Pour vérifier que l'interface ``en boucle'' est correctement configurée, ouvrez une session sous ``root'' et tapez:

``#` ping localhost`

Vous devriez voir défiler des messages du type:

``#` ping localhost`

    PING localhost.my.domain. (127.0.0.1): 56 bytes
    64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.219 ms
    64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.200 ms
    64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.187 ms
    [...]

jusqu'à ce que vous tapiez Ctrl-C pour arrêter ce délire.

### 3.5.2. Vérifier le bon fonctionnement de l'interface Ethernet

Pour vérifier que l'interface Ethernet est correctement configurée, tapez:

``#` ping curly`

Vous devriez voir:

``#` ping curly`

    PING curly.my.domain. (192.168.1.1): 56 bytes
    64 bytes from 192.168.1.1: icmp_seq=0 ttl=255 time=0.219 ms
    64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.200 ms
    64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=0.187 ms
    [...]

L'information importante dans ces deux exemples est que les noms (``localhost'' et ``curly'') correspondent bien à leurs adresses IP (127.0.0.1 et 192.168.1.1). Cela confirme que le fichier `/etc/hosts` est correct.

Si les noms et les adresses apparaissent correctement dans les résultats de la commande `ping` mais que des messages d'erreur sont affichés, quelque chose ne va pas dans la configuration des interfaces. Retournez au paragraphe Contrôler le nom de la machine FreeBSD et vérifiez de nouveau votre configuration.

Si maintenant, tout va bien, passez à la section suivante.

Précédent | Sommaire | Suivant
Mise en oeuvre du réseau local |  | Configurer la liaison PPP vers l'extérieur

Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.

Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.