Vous êtes sur la page 1sur 7

Configuration du réseau

Ubuntu est fournie avec de nombreux utilitaires graphiques pour la configuration des périphériques réseau. Ce
document s'adresse aux administrateurs de serveurs et se focalisera sur la gestion de votre réseau en ligne de
commande.
1. Interfaces Ethernet
2. Adressage IP
3. Résolution de noms
4. Pont réseau
5. Ressources
Interfaces Ethernet
Le système identifie les interfaces Ethernet à l'aide de la convention ethX, la valeur X étant un chiffre. La
première interface Ethernet porte le nom eth0, la deuxième porte le nom eth1, et ainsi de suite.
Repérer les interfaces Ethernet
Pour repérer rapidement toutes les interfaces Ethernet disponibles, vous pouvez utilisez la
commande ifconfig comme indiqué ci-après.
ifconfig -a | grep eth
eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a
Une autre application capable d'identifier toutes les interfaces réseau disponibles sur votre système est la
commande lshw. Dans l'exemple ci-dessous, lshw affiche une seule interface Ethernet avec le nom
logique eth0 suivi de plusieurs détails sur le bus, le pilote et les fonctionnalités prises en charge.
sudo lshw -class network
*-network
description: Ethernet interface
product: BCM4401-B0 100Base-TX
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:03:00.0
logical name: eth0
version: 02
serial: 00:15:c5:4a:16:5a
size: 10MB/s
capacity: 100MB/s
width: 32 bits
clock: 33MHz
capabilities: (snipped for brevity)
configuration: (snipped for brevity)
resources: irq:17 memory:ef9fe000-ef9fffff

Noms logiques de l'interface Ethernet


La configuration des noms logiques des interfaces s'effectue à l'aide du fichier /etc/udev/rules.d/70-
persistent-net.rules. Si vous voulez attribuer un nom logique particulier à une certaine interface,
trouvez la ligne correspondant à son adresse MAC physique et modifiez la valeur de NAME=ethX afin de lui
donner le nom logique désiré. Redémarrez le système pour appliquer les changements.
Paramètres de l'interface Ethernet
ethtool est une application qui permet d'afficher et de changer les paramètres de la carte Ethernet comme l'auto-
négociation, la vitesse des ports, le mode duplex et le « Wake-on-LAN ». Elle n'est pas installée par défaut, mais
elle est disponible à l'installation dans les dépôts.
sudo apt install ethtool
Ce qui suit est un exemple de la façon de voir les fonctions prises en charge et les paramètres configurés d'une
interface Ethernet.
sudo ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
Link detected: yes

Les modifications effectuées avec la commande ethtool sont temporaires et seront perdues au prochain
redémarrage. Si vous souhaitez conserver ces paramètres, ajoutez simplement la commande ethtool sur une
ligne pre-up du fichier de configuration de l'interface /etc/network/interfaces.
Vous trouverez ci-après la manière dont l'interface, identifiée comme eth0, peut être configurée de manière
permanente avec une vitesse de port égale à 1000Mb/s en mode full duplex.
auto eth0
iface eth0 inet static
pre-up /sbin/ethtool -s eth0 speed 1000 duplex full

Bien que l'exemple ci-dessus montre l’interface configurée utilisant la méthode statique, cela fonctionne
également avec les autres méthodes, comme DHCP. L'exemple a uniquement pour but de démontrer le
placement approprié de l'élément pre-up en relation avec le reste de la configuration d'interface.
Adressage IP
La section qui suit décrit le processus de configuration de l'adresse IP et de la passerelle par défaut de votre
système afin de le connecter à un réseau local et à Internet.

Assignation d'une adresse IP temporaire


Pour les configurations réseau temporaires, vous pouvez utiliser les commandes standard telles
que ip, ifconfig et route, qui sont également présentes sur la plupart des systèmes d'exploitation GNU/Linux.
Elles vous permettront de configurer les paramètres de façon à ce que les changements s'appliquent
immédiatement, mais ces derniers seront perdus après un redémarrage.
Pour configurer temporairement une adresse IP, vous pouvez utiliser la commande ifconfig de la manière
suivante. Modifiez simplement l'adresse IP et le masque de sous-réseau en fonction des besoins de votre réseau.
sudo ifconfig eth0 10.0.0.100 netmask 255.255.255.0

Afin de vérifier la configuration d'adresse IP de eth0, vous pouvez utiliser la commande ifconfig de la manière
suivante.
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a
inet addr:10.0.0.100 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::215:c5ff:fe4a:165a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:466475604 errors:0 dropped:0 overruns:0 frame:0
TX packets:403172654 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2574778386 (2.5 GB) TX bytes:1618367329 (1.6 GB)
Interrupt:16

Afin de configurer une passerelle par défaut, vous pouvez utiliser la commande route. Modifiez l'adresse de la
passerelle par défaut en fonction de vos pré-requis réseau.
sudo route add default gw 10.0.0.1 eth0

Afin de vérifier la configuration de votre passerelle par défaut, vous pouvez utiliser la commande route de la
manière suivante.
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use
Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 1 0 0
eth0
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0
eth0
If you require DNS for your temporary network configuration, you can add DNS server IP addresses in the
file /etc/resolv.conf. In general, editing /etc/resolv.conf directly is not recommanded, but this is
a temporary and non-persistent configuration. The example below shows how to enter two DNS servers
to /etc/resolv.conf, which should be changed to servers appropriate for your network. A more lengthy
description of the proper persistent way to do DNS client configuration is in a following section.
nameserver 8.8.8.8
nameserver 8.8.4.4

Si vous n'avez plus besoin de cette configuration et que vous souhaitez supprimer toutes les configurations d'IP
d'une interface, vous pouvez utiliser la commande ip avec l'option de purge comme indiqué ci-dessous.
ip addr flush eth0

Le nettoyage de la configuration IP en utilisant la commande ip n'efface pas les contenus


de /etc/resolv.conf. Vous devez supprimer ou modifier ces entrées manuellement, ou redémarrer, ce qui
devrait faire également que /etc/resolv.conf, qui est en fait maintenant un lien symbolique
vers /run/resolvconf/resolv.conf, sera réécrit.
Attribution dynamique d'adresse IP (client DHCP)
Afin de configurer votre serveur pour qu'il utilise DHCP pour l’attribution dynamique d'adresse, ajoutez la
méthode dhcp à la condition de famille d'adresse inet pour l'interface appropriée dans le
fichier /etc/network/interfaces. L'exemple ci-dessous suppose que vous configurez votre première
interface Ethernet identifiée comme eth0.
auto eth0
iface eth0 inet dhcp

En ajoutant une configuration d'interface comme démontré ci-dessus, vous pouvez activer manuellement
l'interface grâce à la commande ifup qui amorce le processus DHCP via dhclient.
sudo ifup eth0

Afin de désactiver manuellement l'interface, vous pouvez utiliser la commande ifdown, qui vous permettra
d'amorcer l'annulation du processus DHCP et l'extinction de l'interface.
sudo ifdown eth0

Attribution statique d'adresse IP


Afin de configurer votre système pour utiliser l'attribution statique d'adresse IP, ajoutez la méthode static à la
condition de famille d'adresse inet pour l'interface appropriée dans le fichier /etc/network/interfaces.
L'exemple ci-dessous suppose que vous configurez votre première interface Ethernet identifiée comme eth0.
Modifiez l'adresse, le masque réseau, et la passerelle en fonction des pré-requis de votre réseau.
auto eth0
iface eth0 inet static
address 10.0.0.100
netmask 255.255.255.0
gateway 10.0.0.1

En ajoutant une configuration d'interface comme démontré ci-dessus, vous pouvez activer manuellement une
interface grâce à la commande ifup.
sudo ifup eth0

Pour désactiver manuellement l'interface, vous pouvez utiliser la commande ifdown.


sudo ifdown eth0

Interface loopback
L'interface de boucle locale est identifiée par le système par lo, et possède l'adresse IP par défaut « 127.0.0.1 ».
Elle est visible via la commande ifconfig.
ifconfig lo
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2718 errors:0 dropped:0 overruns:0 frame:0
TX packets:2718 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:183308 (183.3 KB) TX bytes:183308 (183.3 KB)
Par défaut, il devrait y avoir deux lignes dans /etc/network/interfaces responsables de la configuration
automatique de votre interface de boucle locale. Il est recommandé de conserver les paramètres par défaut, sauf
si vous avez une raison spécifique de les modifier. un exemple des deux lignes par défaut est montré ci-dessous.
auto lo
iface lo inet loopback

Résolution de noms
La résolution de noms dans le domaine des réseaux IP est le processus de cartographie d'adresses IP en noms
d'hôtes, facilitant l’identification des ressources sur un réseau. La section suivante expliquera comment
configurer correctement votre système pour la résolution de noms en utilisant les enregistrements de noms d'hôte
DNS et statiques.

Configuration de client DNS


Traditionally, the file /etc/resolv.conf was a static configuration file that rarely needed to be changed or
automatically changed via DCHP client hooks. Nowadays, a computer can switch from one network to another
quite often and the resolvconf framework is now being used to track these changes and update the resolver's
configuration automatically. It acts as an intermediary between programs that supply nameserver information
and applications that need nameserver information. Resolvconf gets populated with information by a set of hook
scripts related to network interface configuration. The most notable difference for the user is that any change
manually done to /etc/resolv.conf will be lost as it gets overwritten each time something triggers
resolvconf. Instead, resolvconf uses DHCP client hooks, and /etc/network/interfaces to generate a list
of nameservers and domains to put in /etc/resolv.conf, which is now a symlink:
/etc/resolv.conf -> ../run/resolvconf/resolv.conf

To configure the resolver, add the IP addresses of the nameservers that are appropriate for your network in the
file /etc/network/interfaces. You can also add an optional DNS suffix search-lists to match your
network domain names. For each other valid resolv.conf configuration option, you can include, in the stanza, one
line beginning with that option name with a dns- prefix. The resulting file might look like the following:
iface eth0 inet static
address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com
dns-nameservers 192.168.3.45 192.168.8.10

L'option de recherche peut également être utilisée avec plusieurs noms de domaine, de cette façon, les requêtes
DNS seront ajoutées dans l'ordre dans lequel elles sont saisies. Par exemple, votre réseau peut avoir plusieurs
sous-domaines à rechercher ; un domaine parent de example.com, et deux sous-
domaines, sales.example.com et dev.example.com.
Si vous souhaitez rechercher plusieurs domaines, votre configuration pourrait ressembler à ce qui suit :

iface eth0 inet static


address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com ventes.example.com dev.example.com
dns-nameservers 192.168.3.45 192.168.8.10

Si vous effectuez un ping sur l'hôte ayant le nom du server1, votre système interrogera automatiquement le DNS
afin d'obtenir son nom de domaine complètement qualifié (FQDN) dans l'ordre suivant :
1. server1.exemple.com
2. server1.ventes.exemple.com
3. server1.dev.exemple.com
Si aucun résultat n'est trouvé, le serveur DNS fournira un résultat de notfound, et la requête DNS échouera.
Noms d'hôte statiques
Les noms d'hôte statiques sont des cartographies noms d'hôte-à-IP définies localement et situés dans le
fichier /etc/hosts. Les entrées du fichier hosts ont par défaut priorité sur le DNS. Cela signifie que si
votre système essaye de résoudre un nom d'hôte et qu'il correspond à une entrée de /etc/hosts, il ne tentera pas de
trouver un enregistrement dans le DNS. Dans certaines configurations, particulièrement lorsque l'accès Internet
n'est pas requis, les serveurs communiquant avec un nombre limité de ressources peuvent être paramétrés avec
commodité afin d'utiliser des noms d'hôtes statiques au lieu du DNS.
Ce qui suit est un exemple de fichier hosts où un nombre de serveurs locaux ont été identifiés par de simples
noms d'hôtes, alias et leurs noms de domaine complètement qualifiés équivalents (FQDN).
127.0.0.1 hôte_local
127.0.1.1 serveur-ubuntu
10.0.0.11 serveur1 serveur1.exemple.com vpn
10.0.0.12 serveur2 serveur2.exemple.com mél
10.0.0.13 serveur3 serveur3.exemple.com www
10.0.0.14 serveur4 serveur4.exemple.com fichier
Dans l'exemple ci-dessus, notez que chaque serveur a reçu un alias en complément de son nom propre et FQDN.
Le Serveur1 a été défini par vpn, tandis que le serveur2 est défini par mail, le serveur3 par www, et
le serveur4 par file.
Configuration du service de changement de nom
L'ordre dans lequel votre système sélectionne la méthode de résolution des noms d'hôtes en adresses IP est
contrôlé par le fichier de configuration du service de changement de nom (NSS) /etc/nsswitch.conf.
Comme mentionné dans la section précédente, les noms d'hôtes statiques définis dans le fichier
système /etc/hosts ont l'ascendant sur les noms résolus par le DNS. Suivant, un exemple de la ligne
responsable de cet ordre de recherche de noms d'hôtes dans le fichier /etc/nsswitch.conf.
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

1. files essaie en premier lieu de résoudre les noms d'hôtes statiques situés dans le
fichier /etc/hosts.
2. mdns4_minimal tente de résoudre le nom utilisant la multidiffusion DNS.
3. [NOTFOUND=return] signifie que n'importe quelle réponse de notfound par le processus
précédent mdns4_minimal devrait être considérée comme autorité et que le système devrait
arrêter de chercher une réponse.
4. dns représente une requête legacy monodiffusion DNS.
5. mdns4 représente une requête multidiffusion DNS.
Afin de modifier l'ordre de la méthode de résolution de noms mentionnée ci-dessus, vous pouvez simplement
modifier la ligne hosts: par la valeur de votre choix. Par exemple, si vous préférez utiliser la mono-diffusion
legacy DNS plutôt que la multidiffusion DNS, vous pouvez modifier /etc/nsswitch.conf comme
expliqué ci-dessous.
hosts: files dns [NOTFOUND=return] mdns4_minimal mdns4

Pont réseau
Ponter plusieurs interfaces est une configuration plus élaborée, mais elle est très utile dans beaucoup de cas. Un
premier scénario est de créer un pont avec plusieurs interfaces réseaux, puis d'utiliser un pare-feu pour filtrer le
trafic entre les deux segments de réseau. Un autre scénario est d'utiliser un pont sur un système avec une seule
interface pour autoriser plusieurs machines virtuelles à accéder au réseau extérieur. L'exemple suivant couvre ce
dernier scénario.
Avant de configurer un pont, vous devez installer le paquet bridge-utils. Pour l'installer, tapez dans un
terminal :
sudo apt install bridge-utils
Ensuite, configurez le pont en modifiant /etc/network/interfaces :
auto lo
iface lo inet loopback

auto br0
iface br0 inet static
address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off

Saisissez les valeurs appropriées pour votre réseau et votre interface physique.
Now bring up the bridge:

sudo ifup br0

La nouvelle interface de pont doit maintenant être active et fonctionnelle. L'application brctl fournit des
informations utiles à propos de l'état du pont ; contrôle quelle interface fait partie du pont ; etc. Consultez man
brctl pour plus d'informations.

Ressources

Vous aimerez peut-être aussi