TP-2 Configuration réseau sous VMware

Transcription

TP-2 Configuration réseau sous VMware
L3 Informatique, 15 mars 2016
TP-2 Configuration réseau sous VMware-linux
But du TP
Mettre en place un LAN (virtuel) comprenant deux machines virtuelles. Une des deux, la passerelle
Ubuntu9-GNS3, a deux interfaces réseau. L’interface principale est connectée en nat sur la carte réseau
de la machine physique au moyen d’une interface réseau virtuelle de la machine physique (vmnet8). L’interface secondaire est reliée à la seconde interface réseau virtuelle de la machine physique (vmnet1) sur
un réseau de type host-only. La seconde machine, My_dsl, qui joue le rôle du client, est reliée à l’interface
virtuelle vmnet1. Pour comprendre la différence entre ces différents modes d’émulation de réseau :
en.kioskea.net/faq/1166-vmware-the-different-modes-of-vmware-network.
Le but du TP est de router le trafic internet du réseau de vmnet1 sur le réseau physique en utilisant la
passerelle pour forwarder les paquets tcp/ip et pour faire du nat au moyen d’iptables, le firewall
du noyau linux.
1
Démarrage des machines
Ouvrir la machine virtuelle (située dans /home/VM/Reseau/Ubuntu9-GNS3). par vmplayer. Vérifier qu’une interface réseau est en NAT et l’autre en Host Only avant d’appuyer sur “Play”. Une fois
démarrée, taper la commande sudo setxkbmap fr pour avoir un clavier français. Pour l’utiliser, il
faudra accepter le message “take ownership” proposé par vmplayer et ne pas télécharger les outils
VMware.
Démarrez ensuite la machine virtuelle (située dans /home/VM/Reseau/My_dsl) en lui fournissant
l’option de boot dsl lang=fr pour utiliser un clavier français.
À la fin du TP, éteignez les machines virtuelles proprement, comme si c’était une vraie machine ! ! !
2
Activer le réseau de la passerelle
La machine Ubuntu9-GNS3 est connectée au réseau au moyen du mode nat de VMware, probablement
sur le réseau d’adresse 172.16.22.0 via une de ses interfaces réseau. On peut le vérifier en regardant
le fichier de configuration de VMware (dans /etc/vmware/networking). Il donne la configuration
réseau et les interfaces utilisées par VMware. L’adresse du réseau peut être vérifiée au moyen de la commande /sbin/ifconfig. Vous noterez au passage l’adresse du réseau en mode HOSTONLY. Une fois
l’accès au réseau correctement établi, il faudra configurer l’autre interface.
Pour configurer l’autre carte, le plus simple est d’utiliser la commande ifconfig et d’attribuer une
adresse IP du réseau de vmnet à l’interface secondaire de la machine virtuelle, si celle-ci n’a pas déjà
obtenu une adresse par dhcp. Vérifiez auparavant qu’une adresse sur le réseau HOSTONLY n’a pas déjà
été attribuée.
Exemple de mariner d’IP fixe 134.59.2.182 et de nom DNS : mariner.unice.fr. L’interface
principale eth0 de la machine virtuelle hébergée Ubuntu9-GNS3 sera 172.16.22.128 (attribuée
automatiquement). La seconde interface de la machine virtuelle hébergée Ubuntu9-GNS3 va permettre
de définir un réseau local sur vmnet1 d’IP 192.168.241.0/24 (définie par vmnet1 1 .). On définit
ainsi un réseau de classe C virtuellement à l’intérieur de mariner. Pour le moment, l’autre machine
virtuelle My_dsl, connectée sur l’interface secondaire, ne peut pas encore accéder au réseau (physique,
naté). Il faut la configurer. Son IP devient celle d’une machine du réseau local, 192.168.241.129 et
de masque 255.255.255.0. Vérifiez auparavant qu’une adresse sur le réseau HOSTONLY ne vous a pas
été attribuée auparavant. Il faut également spécifier le routage par défaut qui doit obligatoirement passer
par l’IP de la passerelle.
La partie réseau est normalement convenablement paramétrée. Vérifiez des commandes ping. Il reste à
activer l’IP forwarding pour que le client puisse accéder à Internet. La suite des commandes devra être
saisie avec les droits de root.
1. Attention ! le sous-réseau de vmnet1 peut être différent selon la machine que vous utilisez. Il faut le mettre en accord avec le
sous-réseau tel qu’affiché par la commande ifconfig de mariner
1
2.1
Activer l’IP forwarding
Il faut activer l’IP forwarding par : echo "1">/proc/sys/net/ipv4/ip_forward. Le client ne
peut pas encore voir le réseau externe ; il faut mettre en place les règles d’IP masquerading.
3
IP-masquerade en bref
IP-masquerade est une fonctionnalité de linux. Si un hôte linux L est connecté à Internet avec l’IPmasquerade, tous les ordinateurs du LAN peuvent également atteindre Internet via L
Cela permet à un ensemble de machines d’accéder de manière invisible à Internet, derrière L qui agit alors
comme une passerelle entre le réseau local et Internet.
3.1
Mise en place de IP-masquerade
On met en place les règles d’IP masquerading au moyen d’iptables avec la règle :
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.241.0/24 -j MASQUERADE
en supposant que eth0 soit l’interface externe (sur le réseau en nat) de la machines Ubuntu9-GNS3.
La masquerade fait appel à une caractéristique des iptables, la traduction d’adresses du réseau (ou
NAT). Dans le routage d’un paquet depuis sa source (My_dsl) jusqu’à sa destination (www.unice.fr
d’IP 134.59.1.71) il traverse différents points de routage qui ne font que retransmettre le paquet.
Si un des points de routage faisait du NAT, il pourrait altérer la source ou la destination du paquet. C’est ce
qui est utilisé pour faire la masquerade et cacher votre réseau local. Ce que la passerelle doit faire en plus
c’est se rappeler le paquet qui a été masqué pour rediriger convenablement la réponse.
ACCEPT|DROP
prerouting
ACCEPT|DROP
d cision
routage
ACCEPT|DROP
décision
routage
postrouting
ACCEPT|DROP
output
ACCEPT|DROP
input
forward
ACCEPT|DROP
output
processus
local
processus
local
Fig 1. :Traversée des règles de NAT
Fig 2. :Traversée des chaînes iptables
Il y a deux types de NAT : de source (SNAT) et de destination (DNAT). Le premier permet de modifier
l’adresse de source du paquet et, respectivement, le second permet de modifier l’adresse de destination. Là
encore, on fait appel à des chaînes. Elles se nomment PREROUTING et POSTROUTING. Elles permettent
respectivement de faire du DNAT et du SNAT (cf Fig.1 et Linux NAT HOWTO).
4
Tests et manipulations
(1) Vous avez sûrement remarqué que la résolution de nom de la machine client ne fonctionne pas.
Pouvez-vous expliquer pourquoi et pouvez-vous remédier au problème ?
(2) Changez l’ip de la machine My_dsl (sur le même réseau) et vérifiez que tout fonctionne encore.
(3) Remarquez également au cours du temps le changement des tables arp des machines.
(4) Observez et commentez les tables de routage de Ubuntu9-GNS3.
(5) Téléchargez sur My_dsl l’utilitaire netcat à l’adresse http://distro.ibiblio.org/
damnsmall/mydsl/net/netcat.dsl. Ajoutez-le à la distribution au moyen de l’icone MyDSL,
bouton Load local MyDSL extension et établissez une communication client-serveur sur
le port 12345 au moyen de la commande nc.
(6) Utilisez la commande tcpdump pour visualiser les connexions entre vos deux machines et celles
vers l’extérieur.
2

Documents pareils