Ce LinuxLabs est orienté sur la configuration des interfaces et de quelques services réseaux de base. Accessoirement, il est proposé de transformer sa machine virtuelle en simple passerelle.
Lectures préalables.
Objectifs.
- Configurer une interface Ethernet.
- Configurer l’adressage IP
- Configurer la résolution de nom.
- Configurer une seconde interface Ethernet.
- Apprendre à utiliser le gestionnaire de paquets APT.
- Installer et configurer le service DHCP.
- Installer et configurer le service NTP.
- Accessoirement, monter une passerelle.
- Installer le service DNS et le lier à DHCP.
Exercice 1. Configuring Ethernet Interfaces
1. Identifier les interfaces Ethernet.
To quickly identify all available Ethernet interfaces, you can use the ifconfig command as shown below.
ifconfig -a | grep eth eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a
ou encore :
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
2. Noms logiques des interfaces.
Les noms logiques des interfaces sont configurés dans /etc/udev/rules.d/70-persistent-net.rules. pour déterminer quel interface correspond à un nom logique, il faut trouver l’adresse MAC correspondante et modifier le nom logique. Un redémarrage est alors nécessaire.
cat /etc/udev/rules.d/70-persistent-net.rules | more
Exercice 2. IP Addressing
The following section describes the process of configuring your systems IP address and default gateway needed for communicating on a local area network and the Internet.
1. Attribution temporaire.
On peut configurer une interface jusqu’au prochain redémarrage.
ifconfig eth0 10.0.0.100 netmask 255.255.255.0
Pour vérification.
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
Pour ajouter une passerelle par défaut temporaire.
route add default gw 10.0.0.1 eth0
Pour vérification.
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
Pour configurer les serveurs DNS, il faut éditer le fichier /etc/resolv.conf, comme dans l’exemple.
nameserver 8.8.8.8 nameserver 8.8.4.4
Effacer ces changements s’exécute de la sorte.
ip addr flush eth0
Attention, les serveurs DNS configurés dans le fichier /etc/resolv.conf ne sont pas éliminés après cette commande.
2. Attribution dynamique
Dans le fichier /etc/network/interfaces, modifier les lignes suivantes.
auto eth0 iface eth0 inet dhcp
Pour redemander les paramètres DHCP, activer/désactiver l’interface.
ifdown eth0
ifup eth0
3. Attribution statique.
Editer le fichier /etc/network/interfaces.
auto eth0 iface eth0 inet static address 10.0.0.100 netmask 255.255.255.0 gateway 10.0.0.1
Pour que les paramètres soient pris en compte, désactiver/activer l’interface.
ifdown eth0
ifup eth0
4. Interface Loopback.
L’interface Loopback appartient au système et elle adressée par défaut en 127.0.0.1/8.
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)
Les deux lignes suivantes dans /etc/network/interfaces montent automatiquement cette interface. Il est peu recommandé de les modifier.
auto lo iface lo inet loopback
Exercice 3. Configuration de la résolution de nom.
La résolution de noms est le processus de correspondance entre des adresses IP et des noms de machines, rendant plus aisée l’identification des ressources sur un réseau.
1. Configuration du client DNS
Il est recommandé de ne plus toucher au fichier /etc/resolv.conf, car il sert surtout en tant que lien symbolique au service DHCP comme le suggère la commande suivante.
ls -l /etc/resolv.conf
/etc/resolv.conf -> ../run/resolvconf/resolv.conf
Toute configuration DNS d’une interface se définit désormais dans le fichier /etc/network/interface.
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
A quoi sert l’option « dns-search » ?
2. Noms de machines statiques
Il peut être toujours utile d’établir des résolutions locales statiques. Il faut alors éditer le fichier /etc/hosts. On remarque la correspondance entre une adresse et de nom locaux en alias, en nom de machine ou en Fully Qualified Domain Names (FQDN’s).
127.0.0.1 localhost 127.0.1.1 ubuntu-server 10.0.0.11 server1 vpn server1.example.com 10.0.0.12 server2 mail server2.example.com 10.0.0.13 server3 www server3.example.com 10.0.0.14 server4 file server4.example.com
3. Name Service Switch
Les entrées statiques sont prioritaires sur la résolution dynamique. pour changer ce comportement, il faut modifier le fichier /etc/nsswitch.conf.
hosts: files dns
- où « files » indique la résolution statique
- où « dns » représente une requête unicast DNS.
Exercice 4. Configurer un seconde carte réseau.
1. Arrêter la machine virtuelle (et la copier).
2. Ajouter une interface supplémentaire en mode NAT.
3. Redémarrer la machine virtuelle.
4. Créer une entrée dans le fichier /etc/network/interface.
auto eth1 iface eth1 inet dhcp
4. Démarrer l’interface.
ifup eth1
Dans une classe de cours il est temps dedier une machine servant de proxy apt : http://doc.ubuntu-fr.org/apt-cacher-server.
Exercice 5. Installer et configurer le service DHCP.
Pour des informations sur DHCP, consulter l’article http://cisco.goffinet.org/s1/dhcp.
Suivre les indications sur http://doc.ubuntu-fr.org/dhcp3-server.
Exercice 6. Installer et configurer le service NTP.
NTP est un protocole applicatif (couche 7) important dans un réseau géré. Il permet la synchronisation des dates et des heures sur le réseau entre des machines dans une relation habituellement client/server.
Ubuntu utilise les logiciels ntpdate et ntpd.
1. ntpdate
Le serveur Ubuntu dispose déjà du client NTP déjà installé.
ntpdate -s ntp.ubuntu.com
Quel est le serveur de ntp.org le plus proche de chez vous ?
2. ntpd
Suivre le guide d’installation http://doc.ubuntu-fr.org/ntp.
Références
- See the Ubuntu Time wiki page for more information.
- http://fr.wikipedia.org/wiki/Network_Time_Protocol
- ntp.org, home of the Network Time Protocol project
Exercice 7. Monter une passerelle.
1. Activer le routage dans le noyau.
De manière temporaire.
echo 1 > /proc/sys/net/ipv4/conf/all/forwarding
De manière permanente.
net.ipv4.conf.default.forwarding=1
2. Adapter ses machines virtuelles et son réseau virtuel pour « router » du trafic à travers l’interface « eth1″.
Exercice 8. Configuration du service DNS
La topologie de base propose un serveur DNS pour la zone locale qui répond aux caractéristiques d’une configuration hybride : serveur cache pour les clients du LAN et serveur maître pour une zone locale .intra à l’aide de http://doc.ubuntu-fr.org/bind9. Effectuez vos test à partir de votre machine hôte en changeant sa configuration DNS et avec le logiciel dig et les logs sur le serveur.
Références
Exercice 9. DHCP et DNS dynamique.
Voir aussi le chapitre 38 du Tutoriel sur les serveurs et plus rapidement http://www.semicomplete.com/articles/dynamic-dns-with-dhcp/, mais aussi http://www.debuntu.org/how-to-set-a-lan-gateway-with-dhcp-dynamic-dns-and-iptables-debian-etch-page-2-dns-server.


Redémarrage des paramètres d’interfaces :
Redémarrage manuel
ifup/ifdownservice networking restart
/etc/init.d/networking restart
Release DHCP et Renew DHCP:
dhclient3 -r eth0
dhclient3 -v eth0
default-lease-time 600;
max-lease-time 7200;
subnet 172.16.0.0 netmask 255.255.0.0 {
range 172.16.10.10 172.16.10.20;
option routers 172.16.1.1;
option domain-name-servers 195.238.2.21;
option domain-name "goffinet.intra";
option ntp-servers 172.16.10.254;
}
service isc-dhcp-server restart
tail /var/log/syslog