Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Modérateur
    Avatar de IP_Steph
    Homme Profil pro Steph
    Architecte réseau
    Inscrit en
    février 2012
    Messages
    1 854
    Détails du profil
    Informations personnelles :
    Nom : Homme Steph
    Localisation : France

    Informations professionnelles :
    Activité : Architecte réseau
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2012
    Messages : 1 854
    Points : 4 039
    Points
    4 039

    Par défaut Maquette 2 VM Host-only routées

    Que ce soit VMware ou VirtualBox, la connexion NAT d'un guest est plutôt facile à réaliser. Généralement, ça marche du premier coup. Ca en devient même ennuyeux Et comme ma license VMWare est arrivée à expiration, c'était l'opportunité d'installer et de tester quelques aspects networking de VirtualBox (que je n'avais pas encore eu l'occasion de manipuler).

    Je fais actuellement des tests sur des versions virtualisées de Ubuntu 12.0.4.1 et 12.10 et j'ai besoin de rester en routage IP pur pour passer le traffic entre mes 2 VM sans passer par un point de translation. En d'autres termes, utiliser le host (Kubuntu 11.10) comme simple point de routage **sans translation** entre les 2 VM.

    J'utilise donc la maquette suivante :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
                       +------------------+
                       |    Host Linux    |
                       |  Kubuntu 11.10   |
                       | VirtualBox 4.1.2 |
                       +------------------+
                     vboxnet0           vboxnet1
                       /.1                \.1
                      /                    \
    192.168.120.0/24 /                      \192.168.121.0
                    /                        \
                   /.120                      \.121
                 VM1                          VM2
          Kubuntu 12.0.4.1               Kubuntu 12.10
    Après avoir installé VirtualBox, mis à jour les paquets sur les 2 VM en mode NAT voici le mode opératoire à suivre (les VM étant éteintes bien sûr). A vous d'adapter !

    1) Création et configuration des interfaces vxboxnet du host

    Menu File du VirtualBox Manager
    Menu Preferences
    Menu Network

    Cliquer +, une interface vboxnet0 se crée. Faire Space ou sélectionner le petit tournevis puis renseigner l'IP 192.168.120.1/24.
    Cliquer +, une interface vboxnet1 se crée. Faire Space ou sélectionner le petit tournevis puis renseigner l'IP 192.168.121.1/24.
    Cliquer OK.

    2) Mapping des VM sur les interfaces du host

    Sélectionner la 1ère VM (Kubuntu 12.0.4.1 dans mon cas), cliquer sur Network dans le menu à droite.
    Cocher Enable Network Adapter.
    Sélectionner Attached To sur Host-only Adapter.
    Sélectionner Name sur vboxnet0.
    Cliquer OK.

    Même chose sur la 2ème VM en sélectionnant l'interface vboxnet1 comme Host-only Adapter.
    Démarrer les VM.

    3) Pendant que les VM démarrent, configurer les interfaces vboxnet du host et activer le routage.

    Code :
    1
    2
    3
    root@steph-ThinkPad-T400:/# ifconfig vboxnet0 192.168.120.1 netmask 255.255.255.0
    root@steph-ThinkPad-T400:/# ifconfig vboxnet1 192.168.121.1 netmask 255.255.255.0
    root@steph-ThinkPad-T400:/# echo 1 > /proc/sys/net/ipv4/ip_forward
    Petite vérif

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    root@steph-ThinkPad-T400:/# ifconfig -a
    vboxnet0  Link encap:Ethernet  HWaddr 0a:00:27:00:00:00  
              inet addr:192.168.120.1  Bcast:192.168.120.255  Mask:255.255.255.0
              inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:588 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:125538 (125.5 KB)
    
    vboxnet1  Link encap:Ethernet  HWaddr 0a:00:27:00:00:01  
              inet addr:192.168.121.1  Bcast:192.168.121.255  Mask:255.255.255.0
              inet6 addr: fe80::800:27ff:fe00:1/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:145 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:0 (0.0 B)  TX bytes:25820 (25.8 KB)
    Code :
    1
    2
    3
    4
    5
    root@steph-ThinkPad-T400:/# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    192.168.120.0   0.0.0.0         255.255.255.0   U     0      0        0 vboxnet0
    192.168.121.0   0.0.0.0         255.255.255.0   U     0      0        0 vboxnet1
    4) Reste plus qu'à configurer les IP et la default route sur les VM :

    Code :
    1
    2
    3
    4
    5
    6
    root@steph-VM-Kubuntu-12:~#ifconfig eth0 192.168.120.120 netmask 255.255.255.0
    root@steph-VM-Kubuntu-12:~#route add default gw 192.168.120.1
    root@steph-VM-Kubuntu-12:~#ping 192.168.120.1
    PING 192.168.120.1 (192.168.120.1) 56(84) bytes of data.
    64 bytes from 192.168.120.1: icmp_req=1 ttl=64 time=0.046 ms
    64 bytes from 192.168.120.1: icmp_req=2 ttl=64 time=0.037 ms
    Code :
    1
    2
    3
    4
    5
    6
    root@steph-VirtualBox~#ifconfig eth0 192.168.121.121 netmask 255.255.255.0
    root@steph-VirtualBox~#route add default gw 192.168.121.1
    root@steph-VirtualBox~#ping 192.168.121.1
    PING 192.168.121.1 (192.168.121.1) 56(84) bytes of data.
    64 bytes from 192.168.121.1: icmp_req=1 ttl=64 time=0.047 ms
    64 bytes from 192.168.121.1: icmp_req=2 ttl=64 time=0.035 ms
    5) Normalement, le routage est maintenant monté.

    Ping depuis VM1 vers VM2 :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    root@steph-VM-Kubuntu-12:~#ping 192.168.121.121
    PING 192.168.121.121 (192.168.121.121) 56(84) bytes of data.
    64 bytes from 192.168.121.121: icmp_req=1 ttl=64 time=0.675 ms
    64 bytes from 192.168.121.121: icmp_req=2 ttl=64 time=0.518 ms
    ^C
    --- 192.168.121.121 ping statistics ---
    2 packets transmitted, 2 received, 0% packet loss, time 1000ms
    rtt min/avg/max/mdev = 0.518/0.596/0.675/0.082 ms
    Ping depuis VM2 vers VM1 :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    root@steph-VirtualBox~#ping 192.168.120.120
    PING 192.168.120.120 (192.168.120.120) 56(84) bytes of data.
    64 bytes from 192.168.120.120: icmp_req=1 ttl=64 time=0.539 ms
    64 bytes from 192.168.120.120: icmp_req=2 ttl=64 time=0.354 ms
    64 bytes from 192.168.120.120: icmp_req=3 ttl=64 time=0.348 ms
    ^C
    --- 192.168.120.120 ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 1998ms
    rtt min/avg/max/mdev = 0.348/0.413/0.539/0.091 ms
    6) Pour donner un accès complet à l'Internet, il suffit alors de NATter sur l'interface de sortie du host et de mettre les DNS sur les VM. Par exemple dans mon cas de figure, sur le host :

    Code :
    1
    2
    3
    4
    5
    6
    root@steph-ThinkPad-T400:/# cat /etc/resolv.conf
    # Generated by NetworkManager
    nameserver 172.20.2.10
    nameserver 172.20.2.39
    
    root@steph-ThinkPad-T400:/# iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE
    Après avoir renseigné les DNS sur les VM (au travers de leur Network Manager respectif par exemple), j'aboutis à la maquette suivante :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
                       +------------------+
                       |    Host Linux    |ppp0 ------------------->
                       |  Kubuntu 11.10   |       DNS 172.20.2.10
                       | VirtualBox 4.1.2 |           172.20.2.39
                       +------------------+
                     vboxnet0           vboxnet1
                       /.1                \.1
                      /                    \
    192.168.120.0/24 /                      \192.168.121.0
                    /                        \
                   /.120                      \.121
                 VM1                          VM2
          Kubuntu 12.0.4.1               Kubuntu 12.10
    Si je fais un traceroute vers developpez.net depuis la VM1 :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    root@steph-VM-Kubuntu-12:~# traceroute developpez.net
    traceroute to developpez.net (87.98.128.200), 30 hops max, 60 byte packets
     1  steph-ThinkPad-T400.local (192.168.120.1) 0.409 ms 0.125 ms 0.158 ms
     2  10.62.61.177 (10.62.61.177)  426.813 ms  429.751 ms  429.732 ms
     3  * * *
     4  * * *
     5  * * *
     6  201.13.6.109.rev.sfr.net (109.6.13.201)  546.554 ms  527.566 ms  548.517 ms
     7  th2-5-6k.fr.eu (94.23.122.213)  548.501 ms  551.220 ms *
     8  th2-g1-a9.fr.eu (213.186.32.202)  237.815 ms  256.783 ms  557.775 ms
     9  rbx-g1-a9.fr.eu (91.121.131.209)  561.758 ms  561.742 ms rbx-g1-a9.fr.eu (91.121.215.133)  561.726 ms
    10  * rbx-s3-6k.fr.eu (213.186.32.140)  561.688 ms  620.642 ms
    11  developpez.net (87.98.128.200)  615.665 ms  620.610 ms  620.594 ms
    J'ai d'ailleurs posté ce message depuis VM1

    Bon amusement

    Steph
    ʇɥıs uǝʍ uʌıpıɐ pɹıʌǝɹ snɔʞs :-)

  2. #2
    Rédacteur
    Avatar de Viduc
    Homme Profil pro Tristan Fleury
    Technicien maintenance
    Inscrit en
    février 2009
    Messages
    1 343
    Détails du profil
    Informations personnelles :
    Nom : Homme Tristan Fleury
    Âge : 39
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Service public

    Informations forums :
    Inscription : février 2009
    Messages : 1 343
    Points : 2 495
    Points
    2 495

    Par défaut

    Merci à toi,

    c'est bien claire en tout cas je pense que ça servira a pas mal de monde

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •