9.5. Configuration générale du réseau

9.5.1. Création des fichiers de configuration d'interface réseau

Les interfaces activées et désactivées par le script réseau dépendent normalement des fichiers du répertoire /etc/sysconfig/. Ce répertoire devrait contenir un fichier par interface à configurer, tel que ifconfig.xyz, où « xyz » doit décrire la carte réseau. En général le nom d'interface (comme eth0) est suffisant. Dans ce fichier, se trouvent les attributs de cette interface, tels que son//ses adresse(s) IP, les masques de sous-réseau, etc. Il faut que le fichier ait pour nom ifconfig.

[Note]

Note

Si vous n'avez pas suivi la procédure de la section précédente, udev affectera un nom à l'interface de carte réseau en se basant sur les caractéristiques physiques du système comme enp2s1. Si vous n'êtes pas sûr du nom de votre interface, vous pouvez toujours lancer ip link ou ls /sys/class/net après avoir démarré votre système.

Les noms d'interface dépendent de l'implémentation et de la configuration du démon udev exécuté sur le système. Le démon udev de LFS (installé au Section 8.70, « Eudev-3.2.11 ») ne sera pas exécuté à moins de démarrer le système LFS. Il n'est donc pas fiable de déterminer les noms d'interface utilisés dans le système LFS en exécutant ces commandes sur la distribution hôte, même dans l'environnement chroot.

La commande suivante crée un fichier modèle pour le périphérique eth0 avec une adresse IP statique :

cd /etc/sysconfig/
cat > ifconfig.eth0 << "EOF"
ONBOOT=yes
IFACE=eth0
SERVICE=ipv4-static
IP=192.168.1.2
GATEWAY=192.168.1.1
PREFIX=24
BROADCAST=192.168.1.255
EOF

Les valeurs en italiques doivent être modifiées dans chaque fichier pour correspondre à la bonne configuration.

Si la variable ONBOOT est configurée à « yes », le script réseau de System V configurera la carte d'interface réseau (NIC) pendant le démarrage du système. S'il est configuré avec toute autre valeur que « yes », le NIC sera ignoré par le script réseau et ne sera pas configuré automatiquement. On peut démarrer et arrêter l'interface à la main avec les commandes ifup et ifdown.

La variable IFACE définit le nom de l'interface, par exemple, eth0. Elle est nécessaire dans tous les fichiers de configuration des périphériques réseaux. L'extension des fichiers doit correspondre à cette valeur.

La variable SERVICE définit la méthode utilisée pour obtenir l'adresse IP. Les scripts de démarrage LFS ont un format d'affectation d'IP modulaire. Créer les fichiers supplémentaires dans le répertoire /lib/services/ autorise d'autres méthodes d'affectation d'IP. Ceci est habituellement utilisé pour le DHCP, qui est adressé dans le livre BLFS.

La variable GATEWAY devrait contenir l'adresse IP par défaut de la passerelle, si elle existe. Sinon, mettez entièrement en commentaire la variable.

La variable PREFIX contient le nombre de bits utilisés dans le sous-réseau. Chaque octet dans une adresse IP est exprimé sur huit bits. Si le masque du sous-réseau est 255.255.255.0, alors il est en train d'utiliser les trois premiers octets (24 bits) pour spécifier le numéro du réseau. Si le masque réseau est 255.255.255.240, il utiliserait les 28 premiers bits. Les préfixes plus longs que 24 bits sont habituellement utilisés par les fournisseurs d'accès Internet ADSL et câble. Dans cet exemple (PREFIX=24), le masque réseau est 255.255.255.0. Ajustez la variable PREFIX en concordance avec votre sous-réseau spécifique. Si vous ne le mettez pas, PREFIX vaut 24 par défaut.

Pour plus d'informations, voir la page de manuel de ifup.

9.5.2. Créer le fichier /etc/resolv.conf

Le système aura besoin d'un moyen pour obtenir un résolveur DNS pour résoudre les noms de domaines Internet en adresse IP, et vice-versa. Ceci se fait en plaçant les adresses IP des serveurs DNS, disponibles auprès du FAI ou de l'administrateur système, dans /etc/resolv.conf. Créez ce fichier en lançant :

cat > /etc/resolv.conf << "EOF"
# Début de /etc/resolv.conf

domain <Votre nom de domaine>
nameserver <Adresse IP du DNS primaire>
nameserver <Adresse IP du DNS secondaire>

# Fin de /etc/resolv.conf
EOF

Le paramètre domain peut être omis ou remplacé par un paramètre search. Voir la page de manuel de resolv.conf pour plus de détails.

Remplacez <Adresse IP du DNS> par l'adresse IP du DNS le plus approprié pour la configuration. Il y aura souvent plus d'une entrée (les serveurs secondaires sont utiles en cas d'indisponibilité du premier). Si vous avez seulement besoin ou si vous voulez seulement un serveur DNS, supprimez la seconde ligne nameserver du fichier. L'adresse IP pourrait aussi être un routeur sur le réseau local.

[Note]

Note

Les adresses des DNS publiques IPV4 de Google sont 8.8.8.8 et 8.8.4.4.

9.5.3. Configurer le nom d'hôte du système

Pendant le processus de démarrage, le fichier /etc/hostname est utilisé pour donner un nom d'hôte au système.

Créez le fichier /etc/network et saisissez le nom du système en lançant :

echo "<lfs>" > /etc/hostname

<lfs> doit être remplacé par le nom de l'ordinateur. Ne saisissez pas le FQDN ici. Cette information sera saisie dans le fichier /etc/hosts.

9.5.4. Personnaliser le fichier /etc/hosts

Choisissez l'adresse IP, son nom de domaine pleinement qualifié (fully-qualified domain name, ou FQDN) et les alias possibles à déclarer dans le fichier /etc/hosts. La syntaxe est :

IP_address myhost.example.org aliases

Sauf si votre ordinateur doit être visible à partir d'Internet (c-à-d que c'est un domaine enregistré et un bloc d'adresses IP valide—la plupart des utilisateurs n'ont pas ceci), assurez-vous que l'adresse IP se trouve dans la plage d'adresses réservée aux réseaux privés. Les plages valides sont :

Plage d'adresses réseau privés      Préfixe normal
     10.0.0.1 - 10.255.255.254                    8
    172.x.0.1 - 172.x.255.254                    16
  192.168.y.1 - 192.168.y.254                    24

x peut être un nombre compris entre 16 et 31. y peut être un nombre compris entre 0 et 255.

Une adresse IP privée valide pourrait être 192.168.1.1. Un FQDN valide pour cette IP pourrait être lfs.example.org.

Même si vous ne possédez pas de carte réseau, un FQDN valide est toujours requis. Certains programmes en ont besoin pour fonctionner correctement.

Créez le fichier /etc/hosts en lançant :

cat > /etc/hosts << "EOF"
# Begin /etc/hosts

127.0.0.1 localhost.localdomain localhost
127.0.1.1 <FQDN> <HOSTNAME>
<192.168.1.1> <FQDN> <HOSTNAME> [alias1] [alias2 ...]
::1       localhost ip6-localhost ip6-loopback
ff02::1   ip6-allnodes
ff02::2   ip6-allrouters

# End /etc/hosts
EOF

Les valeurs <192.168.1.1>, <FQDN> et <HOSTNAME> doivent être remplacées suivant les contraintes et les besoins spécifiques (si la machine se voit affecter une adresse IP par un administrateur réseau/système et que cette machine est connectée à un réseau existant). Vous pouvez omettre le ou les noms d'alias facultatifs.