Présentation du document : les outils de l'administrateur réseau
Ce document présente les principaux fichiers de configuration d'une machine en réseau, et les commandes d'administration réseau.
Il est composé de 6 parties:
- Les fichiers de configuration réseau
- La commande ifconfig
- La commande arp
- La commande route
- La commande netstat
- La commande traceroute
Les fichiers de configuration
Le fichier /etc/hosts
Le fichier hosts donne un moyen d'assurer la résolution de noms, de donner un nom FQDN à un hôte
127.0.0.1 localhost localhost.localdomain
192.168.1.1 uranus.foo.org uranus
Le fichier /etc/networks
Il permet d'affecter un nom logique à un réseau
localnet 127.0.0.1
foo-net 192.168.1.0
Cette option permet par exemple d'adresser un réseau sur son nom, plutôt que sur son adresse.route add foo-net au lieu de route add -net 192.168.1.0.
Le fichier /etc/host.conf
Il donne l'ordre dans lequel le processus de résolution de noms est effectué. Voici un exemple de ce que l'on peut trouver dans ce fichier :
order hosts,bind
La résolution est effectuée d'abord avec le fichier hosts, en cas d'échec avec le DNS.
Le fichier /etc/resolv.conf
Il permet d'affecter les serveurs de noms.Exemple:
Nameserver 192.168.1.1
Nameserver 192.168.1.2
Nameserver 192.168.1.3
Ici le fichier déclare le nom de domaine et les 3 machines chargées de la résolution de noms.
Les fichiers de configuration des interfaces réseau
Vous trouverez ces fichiers dans /etc/network/interfaces. Voici un exemple qui contient 3 interfaces.
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# The loopback interface
# automatically added when upgrading
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 192.168.90.1
netmask 255.255.255.0
network 192.168.90.0
broadcast 192.168.90.255
gateway 192.168.90.1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
Les outils de l'administrateur réseau
La commande ifconfig
a commande ifconfig permet la configuration locale ou à distance des interfaces réseau de tous types d'équipements (unité centrale, routeur). Sans paramètres, la commande ifconfig permet d'afficher les paramètres réseau des interfaces.La ligne de commande est :
ifconfig interface adresse [parametres]
Exemple d'utilisation:
ifconfig eth0 192.168.1.2
cette commande affecte l'adresse 192.168.1.2 à la première interface physique
Voici les principaux arguments utilisés :
interface logique ou physique, il est obligatoire,
up active l'interface
down désactive l'interface
mtu définit l'unité de transfert des paquets
netmask affecter un masque de sous-réseau
broadcast définit l'adresse de broadcast
arp ou -arp activer ou désactiver l'utilisation du cache arp de l'interface
metric paramètre utilisé pour l'établissement des routes dynamiques, et déterminer le “ coût ” (nombre de sauts ou “ hops ”) d'un chemin par le protocole RIP.
multicast active ou non la communication avec des machines qui sont hors du réseau.
promisc ou -promisc ctiver ou désactiver le mode promiscuité de l'interface. En mode promiscuous, tous les paquets qui transitent sur le réseau sont reçus également par l'interface. Cela permet de mettre en place un analyseur de trame ou de protocole.
Description du résultat de la commande ifconfig eth0 :-
1.
eth0 Link encap:Ethernet HWaddr 00:80:C8:32:C8:1E
2. inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
3. UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
4. RX packets:864 errors:0 dropped:0 overruns:0 frame:0
5. TX packets:654 errors:0 dropped:0 overruns:0 carrier:0
6. collisions:0
7. Interrupt:10 Base address:0x6100
Ligne 1: l'interface est de type Ethernet. La commande nous donne l'adresse MAC de l'interface.
Ligne 2 : on a l'adresse IP celle de broadcast, celle du masque de sous-réseau
Ligne 3 : l'interface est active (UP), les modes broadcast et multicast le sont également, le MTU est de 1500 octets, le Metric de 1
Ligne 4 et 5 : RX (paquets reçus), TX (transmis), erreurs, suppressions, engorgements, collision
Mode d'utilisation : Ce paragraphe décrit une suite de manipulation de la commande ifconfig.
Ouvrez une session en mode console sur une machine.
- Relevez les paramètres de votre machine à l'aide de la commande ifconfig. Si votre machine n'a qu'une interface physique, vous devriez avoir quelque chose d'équivalent à cela.
- Désactivez les 2 interfaces lo et eth0
- Tapez les commandes suivantes :
- Activez l'interface de loopback et tapez les commandes suivantes :
- Activez l'interface eth0 et tapez les commandes suivantes :
- Réalisez les manipulations suivantes, nous allons voir le comportement de la commande ping sur les interfaces.
- le MTU (Message Transfert Unit) détermine l'unité de transfert des paquets.
Lo Link encap:Local Loopback
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
RX packets:146 errors:0 dropped:0 overruns:0 frame:0
TX packets:146 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
eth0 Link encap:Ethernet HWaddr 00:80:C8:32:C8:1E
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:864 errors:0 dropped:0 overruns:0 frame:0
TX packets:654 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
Interrupt:10 Base address:0x6100
ifconfig lo down
ifconfig eth0 down
ping localhost
ping 192.168.1.1
telnet localhost
Aucune commande ne fonctionne, car même si la configuration IP est correcte, les interfaces sont désactivées.
ifconfig lo up
/* activation de l'interface de loopback */
ping localhost
/* ça ne marche toujours pas */
route add 127.0.0.1
/* on ajoute une route sur l'interface de loopback */
ping 192.168.1.1
/* ça ne marche pas car il manque encore une route*/
On peut déduire que :
Voici le rôle de l'interface loopback. Elle permet de tester un programme utilisant le protocole IP sans envoyer de paquets sur le réseau. Si vous voulez écrire une application réseau, (telnet, ftp, ou autre), vous pouvez la tester de cette façon.Pour chaque interface il faudra indiquer une route au protocole.
dans la configuration actuelle, aucun paquet ne va jusqu'à la carte, donc ne sort sur le réseau.
ifconfig eth0 up
/* activation de l'interface */
route add 192.168.1.1
ifconfig
/* l'information Tx/Rx de l'interface eth0 vaut 0 */
/* Aucun paquet n'est encore passé par la carte.*/
ping 127.0.0.1
ifconfig
/* on voit que l'information Tx/Rx de lo est modifiée */
/* pas celle de eth0, on en déduit que les paquets */
/* à destination de lo ne descendent pas jusqu'à l'interface physique */
ping 192.168.1.1
/* test d'une adresse locale */
ifconfig
/* Ici on peut faire la même remarque. Les paquets ICMP */
/* sur une interface locale, ne sortent pas sur le réseau */
/* mais ceux de l'interface lo sont modifiés*/
ping 192.168.1.2
/* test d'une adresse distante */
ifconfig
/* Ici les paquets sont bien sortis. Les registres TX/RX de eth0 */
/* sont modifiés, mais pas ceux de lo */
Sur la machine tapez la commande:
192.168.1.1 ifconfig
/* relevez les valeurs des registres TX/RX */
192.168.1.2 ping 192.168.1.1
192.168.1.1 ifconfig
/* relevez les nouvelles valeurs des registres TX/RX */
/* il y a bien eu échange Réception et envoi de paquets*/
192.168.1.2 ping 192.168.1.3
192.168.1.1 ifconfig
/* On voit que le registre Rx est modifié mais */
/* le registre Tx n'est pas modifié. La machine a bien reçu*/
/* le paquet mais n'a rien renvoyé */
192.168.1.2 ping 192.168.1.2
192.168.1.2 ifconfig
/* aucun registre n'est modifié, donc les paquets */
/* ne circulent pas jusqu'à l'interface physique avec un ping*/
/* sur l'interface locale */
Vous allez, sur la machine 192.168.1.1 modifier le MTU par défaut à 1500, pour le mettre à 300, avec la commande
ifconfig eth0 mtu 300
Sur la machine d'adresse 192.168.1.2, vous allez ouvrir une session ftp et chronométrer le temps de transfert d'un fichier de 30 MO. Relevez le temps et le nombre de paquets transmis ou reçus (commande ifconfig, flags TX/RX).Restaurez le paramètre par défaut sur la première machine.
Refaites le même transfert et comparez les chiffres. La différence n'est pas énorme sur le temps car le volume de données est peu important. Par contre la différence sur le nombre de paquets, elle, est importante.

