Vous êtes sur la page 1sur 5

TP RESEAUX

SRC Semestre 1
ROUTAGE
OBJECTIF :
Configurer une machine Debian en tant que routeur.
Dcoupage d'un rseau IP.
MATERIEL :
1 Machine Virtuelle fonctionnant sous Debian (er!eur"#outeur$
1 Machine Virtuelle fonctionnant sous %P (Client$
&e er!eur '(P de la alle ) l'adresse 1*+.1,.-.1
INTRODUCTION :
.ous allons e/ploiter dans ce (P une fonctionnalit de la !irtualisation sous Virtual01% 2 le mode
Rse! I"ter"e. Ce mode d'acc3s rseau permet de crer sur la machine ph4sique un rseau 5!irtuel5 qui n'est
accessible que par les machines !irtuelles e/cutes sur ce poste. Dans la seconde partie du (P6 !ous reliere7
entre eu/ tous ces rseau/ !irtuels en utilisant !otre machine Debian comme ro!te!r. .ous e/ploiterons alors
une autre fonctionnalit de Virtual01% 2 mettre #l!s$e!rs $"ter%&es rse! sur une m8me machine.
PARTIE 1 : CREATION DU RESEAU INTERNE
Crt$o" d! rse! $"ter"e : 1'()1*+)N), -N t"t .otre "/ de t0le1
M&2$"e De0$" :
Dans Virtual01% (Configuration"#seau$6 paramtre7 le mode d'acc3s rseau en 2 Rse! $"ter"e
Dmarre7 ensuite !otre machine !irtuelle et modifie7 sa configuration IP 2
IP 2 19+.1,:.N.+
Masque 2 +;;.+;;.+;;.- (Classe C$
Pas de ser!eur D.
Pas de Passerelle
Procde7 de m8me a!ec !otre m&2$"e XP en utilisant la configuration sui!ante 2
IP 2 19+.1,:.N.<
Masque 2 +;;.+;;.+;;.- (Classe C$
Pas de ser!eur D.
Pas de Passerelle
Vrifie7 la communication entre !os deu/ machines ) l'aide de la commande #$"3
R#o"de4 !5 6!est$o"s s!$."tes : -A &26!e %o$s #o!r XP et #o!r De0$"1
=uelles commandes utilise7>!ous pour !rifier !otre configuration IP ?
&ors d'un 5ping56 quelle est la !aleur du ((& ?
=uels messages d'erreur obtene7>!ous lorsque !ous faites un ping !ers le ser!eur '(P de la alle (1*+.1,.-.1$?
=uels messages d'erreur obtene7>!ous lorsque !ous faites un ping !ers une machine d'une autre table ?
=uels messages d'erreur obtene7>!ous lorsque !ous faites un ping !ers une adresse 19+.1,:.N.1-- ?
PARTIE ( : AJOUT D7UNE CARTE RESEAU
Votre rseau fonctionne6 mais comme !ous a!e7 du le constater6 il n'est accessible que par les machines !irtuelles
dmarres (en mode d'acc3s rseau interne$ sur !otre poste et bien entendu a4ant une IP dans le m8me rseau.
.ous allons donc e/ploiter une des possibilits de Virtual01% pour faire de notre ser!eur Debian6 un routeur
capable de communiquer entre !otre rseau interne (19+.1,:...-$ et le rseau de la salle (1*+.1,.-.-$.
Comme"8o"s #r r9o!ter !"e &rte rse! d"s "otre m&2$"e .$rt!elle De0$" 2
@rr8te7 !otre machine !irtuelle
@lle7 dans Configuration " #seau
A&t$.er l &rte rse! "/ ( e" mode d7&&:s #r #o"t)
.ote7 les adresses M@C de !os deu/ cartes (clique7 sur @!anc$.
#edmarre7 !otre machine !irtuelle.
R#o"de4 !5 6!est$o"s s!$."tes : -so!s De0$" !"$6!eme"t1
=uelles sont les adresses M@C utilises par !os deu/ interfaces ?
&orsque !ous interroge7 !otre configuration IP6 quel changement constate7>!ous ?
Pou!e7>!ous communiquer a!ec le ser!eur '(P de la alle ?
Comme !ous a!e7>!ous le constater en rpondant au/ deu/ derni3res questions6 rien n'a chang dans !otre
configuration et la communication a!ec le reste de la salle est touAours impossible. .ormal6 ) ce stade nous
n'a!ons fait que raAouter une interface rseau dans la machine6 il faut maintenant la configurer pour qu'elle puisse
fonctionner sous Debian.
Vrifions d'abord que notre seconde interface a bien t !ue par Debian.
Pour cela nous allons !isualiser le fichier 2 /etc/udev/rules.d/70-persistent-net.rules
Ce fichier qui est mis ) Aour ) chaque dmarrage de la machine contient les r3gles de fonctionnement pour
chacune des interfaces rseau/ connues par le s4st3me. Bn toute logique6 !ous de!e7 donc !oir + interfaces a!ec
pour chacune son adresse M@C (@((#CaddressD$ et surtout le nom que lui ) attribu le s4st3me (.@MBE5eth-5
ou .@MBE5eth15$. .ous !o4ons donc ici que notre seconde interface se nomme et21)
Pour attribuer une adresse IP ) cette interface6 nous procdons comme pour l'interface eth- en modifiant le
fichier 2 /etc/network/interfaces. Modifie7 ce fichier pour qu'il prenne en compte !otre interface eth1
(Duplique7 les lignes de l'interface eth-$ et configure7 l) comme suit 2
IP 2 1*+.1,.N.+
Masque 2 +;;.+;;.-.- (Classe 0$
Pas de ser!eur D.
Pas de Passerelle

.'oublie7 pas de redmarre7 !otre machine !irtuelle pour prendre en compte les modifications.
Vrifie7 !otre configuration ) l'aide la commande $%&o"%$3. Vous de!e7 !oir !os deu/ interfaces et2, et et21
a!ec leurs adresses IP respecti!es 2 19+.1,:.N.+ et 1*+.1,.N.+.
Dans le cas contraire6 !rifie7 !otre fichier interfaces.
R#o"de4 !5 6!est$o"s s!$."tes :
Par dfaut6 comment se nomme la seconde interface rseau sous Debian ?
&e ser!eur Debian peut>il communiquer a!ec le ser!eur '(P de la alle ?
&e ser!eur Debian peut>il communiquer a!ec le poste %P ?
&e poste %P peut>il communiquer a!ec le ser!eur '(P de la alle ? Pourquoi ?
Bffecti!ement6 le poste %P ne peut touAours pas dialoguer a!ec le ser!eur '(P. Il faut lui indiquer une adresse de
passerelle (routeur$ pour qu'il puisse atteindre le rseau de la salle.
Cette adresse est l'adresse de !otre ser!eur Debian 2 19+.1,:.N.+
Modifie7 la configuration du poste %P et ressa4e7 de communiquer a!ec le ser!eur '(P.
R#o"de4 !5 6!est$o"s s!$."tes :
&e poste %P peut>il communiquer a!ec le ser!eur '(P de la alle ? Pourquoi ?
Fa ne fonctionne touAours pas GG #assure7>!ous6 ) ce stade de la configuration de notre routeur c'est normal.
Bn effet6 il ne suffit pas de mettre deu/ cartes rseau/ dans une machine pour en faire automatiquement un
routeur. Par dfaut6 nos deu/ cartes ne communiquent pas entre>elles6 il faut acti!er la fonctionnalit de routage
pour que les paquets IP puissent passer d'une interface ) l'autre.
PARTIE ; : ACTI<ATION DU ROUTAGE
Sous Debian, le routage utilise une fonctionnalit rseau que l'on nomme
l'ip_forwarding. Il faut activer cette fonctionnalit pour que les diffrentes cartes
rseaux puissent communiquer entre-elles et transfrer (forward) les diffrents paquets
I d'un rseau ! l'autre"
our activer cette fonctionnalit de mani#re permanente, modifions le fic$ier %
/etc/sysctl.conf
&etc&s'sctl"conf - (onfiguration file for setting s'stem variables
) See &etc&s'sctl"d& for additonal s'stem variables
) See s'sctl"conf (*) for information"
)
+
) ,ncomment t$e next line to enable pac-et forwarding for Iv.
net.ipv4.ip_forward=1
our activer l'ip forwarding, il suffit de dcommenter (enleve/ le )) la ligne
net.ipv4.ip_forward=1
0edmarre/ votre mac$ine pour prendre en compte la modification"
1este/ de nouveau la communication entre le poste 2 et le Serveur 31"
R#o"de4 !5 6!est$o"s s!$."tes : -So!s XP !"$6!eme"t1
&e poste %P peut>il communiquer a!ec le ser!eur '(P de la alle ?
&ors du 5ping5 !ers le ser!eur '(P 6 quelle est la !aleur du ((& ?
&ors du 5ping5 !ers le ser!eur Debian6 quelle est la !aleur du ((& ?
Pourquoi les deu/ !aleurs sont>elles diffrentes ?
Pou!e7>!ous communiquer a!ec les autres postes %P (19+.1,:.%.<$ de la salle ?
Pou!e7>!ous communiquer a!ec les autres ser!eurs Debian (19+.1,:.%.+$ de la salle ?
PARTIE = : CONFIGURATION DU ROUTAGE
Btat des lieu/ 2 uite ) l'acti!ation de l'IpH'orIarding sur !otre ser!eur !oila ce qui doit fonctionner 2
@ partir du Poste Debian 2
ping !ers ser!eur '(P de la alle (1*+.1,.-.1$
ping !ers un autre ser!eur Debian (1*+.1,.X.+$ > % tant le nJ de l'autre table.
ping !ers n'importe quelle adresse du rseau 1*+.1,.-.-
ping !ers !otre poste %P (19+.1,:.N.<$
@ partir du Poste %P 2
ping !ers ser!eur '(P de la alle (1*+.1,.-.1$
ping !ers !otre poste Debian (19+.1,:.N.+$
ping !ers !otre poste Debian (1*+.1,.N.+$
Pourquoi le poste %P peut>il dialoguer a!ec le ser!eur '(P (1*+.1,.-.1$6 mais pas a!ec les autres ser!eurs
Debian (1*+.1,...+$ qui pourtant se trou!e sur le m8me rseau (1*+.1,.-.-$ ?
&a rponse est dans les t0les de ro!t3e. Ce sont ces tables (prsentes sur chaque machine$ qui indiquent les
chemins (routes$ ) emprunter pour aller d'un rseau ) l'autre. @ffichons le contenu de ces tables 2
So!s XP 2 la commande route -n nous ren!oie la table sui!ante 2
Itinraires actifs%
Destination 0seau 4asque 0seau 5dr"asserelle 5dr"Interfaces 4trique
6"6"6"6 6"6"6"6 789"7:;"N"9 789"7:;.N"< 96
789"7:;"N"6 9**"9**"9**"6 789"7:;"N"< 789"7:;.N"< 96
79="6"6"6 9**"6"6"6 79="6"6"7 79="6"6"7 7
asserelle par dfaut % 789"7:;"N"9
Ce 6!7$l %!t &om#re"dre $&$ :
Pour atteindre le rseau 19+.1,:.N.- (le notre$ on passe par l'interface qui ) l'adresse 19+.1,:.N.< (notre IP$
Pour atteindre tous les autres rseau/ (sauf 1+*.-.-.-$ on passe par la passerelle 19+.1,:.N.+ (Debian$ en
utilisant l'interface 19+.1,:.N.< (notre IP$
So!s De0$" 2 la commande route n nous ren!oie les informations sui!antes 2
1able de routage I du >o'au%
Destination asserelle ?en4as- 4etrique Iface
789"7:;"N"6 6"6"6"6 9**"9**"9**"6 6 et$6
7=9"7:"6"6 6"6"6"6 9**"9**"6"6 6 et$7
Ce 6!7$l %!t &om#re"dre $&$ :
Pour atteindre le rseau 19+.1,:.N.- (le notre$ on utilise l'interface eth- (19+.1,:.N.+$
Pour atteindre le rseau 1*+.1,.-.- (le notre aussi$ on utilise l'interface eth1 (1*+.1,.N.+$
Il "7> !&!"e e"tre d"s &ette t0le $"d$6!"t !"e ro!te .ers les !tres rse!5 1'()1*+)X), ??
.otre ser!eur ne peut donc pas 5router5 un paquet !ers une machine ne se trou!ant pas sur un de nos + rseau/.
Mais alors comment fait le ser!eur '(P (1*+.1,.-.1$ pour rpondre ) la machine %P ?
#egardons sa table de routage 2
1able de routage I du >o'au%
Destination asserelle ?en4as- 4etrique Iface
7=9"7:"6"6 6"6"6"6 9**"9**"6"6 6 et$6
789"7:;"7"6 7=9"7:"7"9 9**"9**"9**"6 6 et$6
789"7:;"9"6 7=9"7:"9"9 9**"9**"9**"6 6 et$6
789"7:;"<"6 7=9"7:"<"9 9**"9**"9**"6 6 et$6
789"7:;"."6 7=9"7:"."9 9**"9**"9**"6 6 et$6
+
789"7:;"7:"6 7=9"7:"7:"9 9**"9**"9**"6 6 et$6
Bh oui G Il connait les adresses de tous les routeurs de la salle6 il est donc capable d'atteindre tous les rseau/ en
19+.1,:.%.- en passant par le rseau 1*+.1,.-.-.
R#o"de4 !5 6!est$o"s s!$."tes :
Pourquoi ne peut>on pas utiliser cette machine (1*+.1,.-.1$ comme passerelle sous %P ?
=ue faudrait>il acti!er sur cette machine pour l'utiliser comme passerelle pour nos ser!eurs Debian ?
PARTIE = : AJOUT D7UNE ROUTE
@ ce stade6 A'esp3re que !ous a!e7 compris pourquoi on ne peut pas utiliser le ser!eur '(P (1*+.1,.-.1$ comme
passerelle malgr le fait que sa table de routage soit compl3te. (i ce n'est pas le cas6 relise7 le (P$
Il !a donc falloir indiquer ) nos routeurs ou se trou!e les autres rseau/ 19+.1,:.%.- de la salle.
Bncore une fois6 tout se passe dans le fichier /etc/network/interfaces)
@!ant de modifier le fichier 2
R#o"de4 !5 6!est$o"s s!$."tes : -S!r l m&2$"e De0$"1
Pour aller !ers un rseau 19+.1,:.%.-6 !ous alle7 passer par quel ser!eur Debian ? =uelle est son IP ?
=uelle adresse IP poss3de ce ser!eur Debian ? @dresse accessible directement sans routage ?
@!ec quelle interface (eth- ou eth1$ puis>Ae atteindre cette adresse ?
i !ous 8tes capable de rpondre ) ces trois questions6 !ous pou!e7 dtermine7 la route ) entrer dans la table de
routage. Kdite7 le contenu du fichier /etc/network/interfaces et aAoute7 une ligne a!ec la s4nta/e
sui!ante 2
up route add net 1!".1#$.%.0/"4 gw 17".1#.%."
Il faut aAouter la ligne ) la suite de l'interface permettant d'atteindre la passerelle
&'adresse IP de la passerelle (gI$ est donc une adresse IP situe dans le m8me rseau IP que l'interface )
modifier.
&e rseau (>net$ dsigne le rseau ) atteindre le "+L prcise le masque (ici +;;.+;;.+;;.- soit +L bits$
@Aouter autant de lignes que de rseau/ ) atteindre.
#edmarre7 !otre machine
ContrMle7 !otre table de routage6 elle doit ressembler ) ceci (B/emple pour un poste Debian +-$
1able de routage I du >o'au%
Destination asserelle ?en4as- 4etrique Iface
789"7:;"96"6 6"6"6"6 9**"9**"9**"6 6 et$6
7=9"7:"6"6 6"6"6"6 9**"9**"6"6 6 et$7
789"7:;"7"6 7=9"7:"7"9 9**"9**"9**"6 6 et$7
789"7:;"9"6 7=9"7:"9"9 9**"9**"9**"6 6 et$7
789"7:;"<"6 7=9"7:"<"9 9**"9**"9**"6 6 et$7
789"7:;"."6 7=9"7:"."9 9**"9**"9**"6 6 et$7
+
i tout est correct6 !ous pou!e7 maintenant communiquer a!ec toutes les machines de la alle (Debian ou %P$6 )
condition que la machine destinataire poss3de une route lui permettant de !ous rpondre.
R#o"de4 !5 6!est$o"s s!$."tes : -So!s XP !"$6!eme"t1
&e poste %P peut>il communiquer a!ec le ser!eur '(P de la alle ?
&ors du 5ping5 !ers le ser!eur '(P 6 quelle est la !aleur du ((& ?
&ors du 5ping5 !ers !otre ser!eur Debian6 quelle est la !aleur du ((& ?
&ors du 5ping5 !ers un autre ser!eur Debian6 quelle est la !aleur du ((& ?
&ors du 5ping5 !ers un autre poste %P6 quelle est la !aleur du ((& ?
#emplacer la commande #$"3 par la commande tr&ert@ que constate7>!ous ?
PARTIE A : TEST DE FONCTIONNEMENT
i !ous ne l'a!e7 pas fait dans le (P prcdent6 installe7 le ser!eur '(P sur la machine Debian.
Installe7 aussi le ser!eur Neb @P@COB ) l'aide de la commande 2 #tB3et $"stll #&2e(
Cre7 une page $"de5)2tml dans le dossier C.rCDDD)
i tout fonctionne6 !ous de!rie7 8tre capable ) partir du poste %P d'atteindre n'importe quel ser!eur '(P ou NB0
de la salle en utilisant son adresse 2 19+.1,:.%.+