Cette section s'applique seulement si une carte réseau doit être configurée.
À partir de la version 209, systemd contient un démon de
configuration réseau nommé systemd-networkd qui peut être
utilisé pour la configuration basique du réseau. De plus, depuis la
version 213, la résolution de nom DNS peut être prise en charge par
systemd-resolved au
lieu d'un fichier /etc/resolv.conf
statique. Ces deux services sont activés par défaut.
Les fichiers de configuration pour systemd-networkd (et systemd-resolved) peuvent être
placés dans /usr/lib/systemd/network
ou /etc/systemd/network
. Les fichiers
dans /etc/systemd/network
ont une
priorité supérieure à ceux dans /usr/lib/systemd/network
. Il existe trois types
de fichiers de configuration : .link
, .netdev
et
.network
. Pour une description
détaillée et des exemples de contenu de ces fichiers de
configuration, consultez des pages de manuel systemd-link(5)
, systemd-netdev(5)
et systemd-network(5)
.
Udev assigne normalement des noms d'interface basés sur les caractéristiques physiques comme enp2s1. Si vous n'êtes pas sûr de votre nom d'interface, vous pouvez toujours lancer ip link après avoir lancé votre système.
Pour la plupart des systèmes, il n'y a qu'une interface réseau pour chaque type de connexion. Par exemple, le nom classique pour une connexion filaire est eth0. Une connexion sans fil aura souvant pour nom wifi0 ou wlan0.
Si vous préférez utiliser les noms d'interfaces réseau classiques ou personnalisés, il y a trois manières de procéder :
Masquez le fichier .link d'udev pour la politique par défaut :
ln -s /dev/null /etc/systemd/network/99-default.link
Créez une convention de nommage manuelle, par exemple en nommant les interface comme « internet0 », « dmz0 » ou « lan0 ». Pour cela, créez des fichiers .link dans /etc/systemd/network/, qui choisissent un nom explicite ou une meilleure convention de nommage pour vos interfaces. Par exemple :
cat > /etc/systemd/network/10-ether0.link << "EOF"
[Match]
# Changez l'adresse MAC comme il faut pour votre périphérique réseau
MACAddress=12:34:45:78:90:AB
[Link]
Name=ether0
EOF
Voir la page de manuel de systemd.link(5) pour plus d'informations.
Dans /boot/grub/grub.cfg, passez l'option net.ifnames=0 sur la ligne de commande du noyau.
La commande suivante crée un fichier de configuration basique pour la configuration d'une adresse ip statique (en utilisant systemd-networkd et systemd-resolved) :
cat > /etc/systemd/network/10-eth-static.network << "EOF"
[Match]
Name=<network-device-name>
[Network]
Address=192.168.0.2/24
Gateway=192.168.0.1
DNS=192.168.0.1
Domains=<Your Domain Name>
EOF
Vous pouvez ajouter plusieurs entrées DNS si vous avez plus d’un
serveur DNS. Ne rajoutez pas d’entrée DNS ou Domains si vous
voulez utiliser un fichier /etc/resolv.conf
statique.
Si le système a besoin d'être connecté à Internet, il aura besoin
d'un 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
.
Si vous utilisez un autre moyen pour configurer vos interfaces
réseaux (par exemple ppp, etc), ou si vous utilisez un
résolveur local (par exemple bind, dnsmasq, unbound, etc), ou
tout autre logiciel générant un fichier /etc/resolv.conf
(par exemple un programe
resolvconf autre
que celui fournit par systemd), le service systemd-resolved ne devrait
pas être utilisé.
Lorsque vous utilisez systemd-resolved pour
configurer le DNS, il crée le fichier /run/systemd/resolve/resolv.conf
. Créez un lien
symbolique dans /etc
pour utiliser
le fichier généré :
ln -sfv /run/systemd/resolve/resolv.conf /etc/resolv.conf
Si un fichier statique /etc/resolv.conf
est désiré, créez-le en
lançant la commande suivante :
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 votre 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. Une autre
possibilité est d'utiliser le service DNS public de Google avec
les adresse IP suivantes comme serveurs de noms.
Les adresses des DNS publiques de Google sont 8.8.8.8
et 8.8.4.4
en IPv4 et 2001:4860:4860::8888
et
2001:4860:4860::8844
en
IPv6. Autrement, vous pouvez aussi utiliser les résolveurs de
FDN: 80.67.169.12
et
80.67.169.40
en IPv4 et
2001:910:800::12
et
2001:910:800::40
en
IPv6.
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
.
Choisissez un nom de domaine pleinement qualifié (fully-qualified domain
name, ou FQDN) et les alias possibles à déclarer dans
le fichier /etc/hosts
. Si vous
utilisez des adresses statiques, vous devrez aussi choisir une
adresse IP. La syntaxe d’une entrée du fichier hosts 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, comme les MTA, en ont besoin pour fonctionner correctement.
Créez le fichier /etc/hosts
avec la
commande suivante :
cat > /etc/hosts << "EOF"
# Begin /etc/hosts
127.0.0.1 localhost.localdomain localhost
127.0.1.1 <FQDN>
<HOSTNAME>
<192.168.0.2>
<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.0.2>
, <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,
et la ligne <192.168.0.2
si vous utilisez
une connexion configurée avec DHCP ou l'autoconfiguration IPv6.
L'adresse ::1 est l'équivalent en IPv6 à 127.0.0.1 et représente l'interface de rebouclage IPv6. 127.0.1.1 est une entrée de rebouclage réservée spécifiquement pour le FQDN.