« Virtualbox : Créer un Réseau Local Virtuel » : différence entre les versions

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
mAucun résumé des modifications
Ligne 56 : Ligne 56 :
et configurer comme suit :
et configurer comme suit :


<strong class="text-strong">Interface</strong><br>
'''Interface'''
<ul>
 
<li>IPv4 : <span class="c2">10.0.0.1</span></li>
* IPv4 : <code>10.0.0.1</code>
<li>Masque IPv4 : <span class="c2">255.255.255.0</span></li>
* Masque IPv4 : <code>255.255.255.0</code>
<li>IPv6 : <em class="text-italics">laisser la valeur
* IPv6 : ''laisser la valeur pré-assignée''
pré-assignée</em></li>
* longueur préfixe : <code>64</code>
<li>longueur préfixe : <span class="c2">64</span></li>
 
</ul>
'''Server DHCP'''
<strong class="text-strong">Server DHCP</strong>
'
<ul>
* Cocher <code>Activer</code>
<li>Cocher <span class="c2">Activer</span></li>
* Adresse serveur : <code>10.0.0.100</code>
<li>Adresse serveur : <span class="c2">10.0.0.100</span></li>
* Masque serveur : <code>255.255.255.0</code>
<li>Masque serveur : <span class="c2">255.255.255.0</span></li>
* Limite inférieure : <code>10.0.0.101</code>
<li>Limite inférieure : <span class="c2">10.0.0.101</span></li>
* Limite supérieure : <code>10.0.0.254</code>
<li>Limite supérieure : <span class="c2">10.0.0.254</span></li>
 
</ul>
puis '''<em class=
puis <strong class="text-strong"><em class=
"text-italics">Appliquer'''''
"text-italics">Appliquer</em></strong>


ce qui donne les captures suivantes :
ce qui donne les captures suivantes :

Version du 11 décembre 2019 à 18:19

Cette page est une adaptation du postage sur le forum

But

Créer un réseau local virtuel
entre l'Hôte (notre PC qui fait tourner Virtualbox)
et les VM (machines virtuelles)

Cela p.ex pour utiliser des VM "serveur"
afin de simuler un hébergement distant
pour développer des sites web
dans des conditions assez similaires à la réalité
— sur un vrai serveur (distant) connecté à Internet.

Principe de la mise en place du réseau

ATTENTION : Cette notion est capitale !

Virtualbox (plateforme de virtualisation)
permet de créer sur le PC (hôte) physique des cartes réseau virtuelles.

C'est à dire que l'on rajoute une interface réseau (virtuelle) à notre PC.

Cette nouvelle interface va être utilisée pour connecter le PC aux machines virtuelles
qui auront été configurées pour ce réseau local virtuel.

Le réseau virtuel est donc composé du PC et d'au moins une VM

Voilà pour le principe de base.

Cela reste à tester, mais il doit être possible de créer plusieurs réseaux virtuels distincts,
car Virtualbox supporte la création de plusieurs de ces interface virtuelles.

Mise en pratique

Tout ce qui suit, sera réalisé dans l'interface graphique de Virtualbox
mais cela doit être également réalisable en ligne de commande.


Voici le réseau qui va être mis en place :

Schéma : Réseau local virtuel (virtualbox) composé de l'hôte (10.0.0.1) utilisant l'interface vboxnet0 connecté à 2 machines virtuelles VM1 (10.0.0.2) et VM2 (10.0.0.3) connectées via leurs interfaces enp0s8


Création de l'interface virtuelle sur le PC (hôte)

Dans l'interface graphique de Virtualbox

Ouvrir le Gestionnaire de réseau hôte ([Ctrl+H]) => bouton : "Créer"

Si c'est la 1ère interface créée, elle est nommée : vboxnet0

Cocher : Configurer manuellement

et configurer comme suit :

Interface

  • IPv4 : 10.0.0.1
  • Masque IPv4 : 255.255.255.0
  • IPv6 : laisser la valeur pré-assignée
  • longueur préfixe : 64

Server DHCP '

  • Cocher Activer
  • Adresse serveur : 10.0.0.100
  • Masque serveur : 255.255.255.0
  • Limite inférieure : 10.0.0.101
  • Limite supérieure : 10.0.0.254

puis Appliquer

ce qui donne les captures suivantes :

Capture : Virtualbox Gestionnaire de réseau hôte Créer interface vboxnet0 et configuration

Capture : Virtualbox Gestionnaire de réseau hôte config DHCP interface vboxnet0


à ce stade l'interface est créée,
les commandes :

$ sudo ifconfig -a

et

ls /proc/net/dev_snmp6/

montre bien :

vboxnet0

Ajouter les VM au réseau

Ici les 2 VM (serveurs web) ont déjà été créées

  • debwebserv1
  • debwebserv2

VM arrêtée

La configuration se fait par l' interface de configuration de la VM sélectionnée dans la liste :

Configuration ( [Ctrl+S] ) >> Réseau

Interface 1

Par défaut est déjà configurée en : Réseau NAT ; elle permet l'accès à Internet

Capture : VM - Configuration : Réseau > Interface 1 : Réseau NAT

Normalement cela fonctionne dès la création de la VM,
donc on ne devrait pas y toucher.

Interface 2

Va servir d'Accès au réseau virtuel basé sur : vboxnet0

pour cela :

  • Cocher : Activer
  • Sélectionner le mode : Réseau privé
  • dans ce mode on choisit (Nom) : vboxnet0
  • Type d'interface : PCnet-FAST III (recommandée pour Linux ; mais les autres types doivent aussi fonctionner)
  • Promiscuité : indifférente (à vérifier)
  • MAC : par défaut ou nouvelle aléatoire si nécessaire
  • Câble branché : coché

ça donne :

Capture : VM - Configuration : Réseau > Interface 2 : Réseau privé hôte : vboxnet0

Les 2 VM sont configurées à l'identique avec des MAC différentes

VM configuration "interfaces"

Lancer les VM
et
configurer leurs interfaces réseau avec p.ex :

$ sudo nano /etc/network/interfaces

pour obtenir quelque-chose dans ce genre :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug enp0s3
iface enp0s3 inet dhcp


# Carte réseau N°2 activée par toto
auto enp0s8
iface enp0s8 inet static
        address 10.0.0.2
        netmask 255.255.255.0

la commande :

ls /proc/net/dev_snmp6/

permet de vérifier le nom des interfaces existantes.

Dans le schéma du réseau joint au début de cet exemple les IP du réseau sont :

  • 10.0.0.1 pour le PC → vboxnet0
  • 10.0.0.2 pour la VM 1 → debwebserv1
  • 10.0.0.3 pour la VM 2 → debwebserv2

Ici on a opté pour des IP static car c'est ce qui semble le plus simple d'utilisation.

Une fois le fichier /etc/network/interfaces enregistré,
il faudra redémarrer le service réseau pour que la config soit prise en compte,
avec :

$ sudo systemctl restart networking.service

On refait la même opération sur la VM 2 en lui assignant : 10.0.0.3

Maintenant, si tout s'est bien passé,
les VM devraient être accessibles depuis le PC avec respectivement :

  • 10.0.0.2 pour la VM 1 → debwebserv1
  • 10.0.0.3 pour la VM 2 → debwebserv2

p.ex avec :

$ ssh toto@10.0.0.2

ou

$ lynx 10.0.0.3

à condition que le serveur SSH soit fonctionnel sur VM 1
et qu'un serveur HTTP soit opérationnel sur VM 2

Accès aux sites web sur VM

Pour finir, si on veut pouvoir accéder depuis un navigateur du PC
aux sites web servis par les VM,

alors on pourra éditer sur le PC : /etc/hosts

en ajoutant des lignes correspondant aux domaines des sites,
p.ex :

# VM de VirtualBox
#  Utiliser 10.0.0.2 pour tous les domaines sur debwebserv1
10.0.0.2        debwebserv1.virt        debwebserv1
10.0.0.2        forum1.virt     forum1
10.0.0.2        forum2.virt     forum2

#  Utiliser 10.0.0.3 pour tous les domaines sur debwebserv2
10.0.0.3        debwebserv2.virt        debwebserv2
10.0.0.3        site-perso.virt site-perso

Ce qui permet de passer ces adresses directement dans le navigateur,
p.ex:

$ lynx http://site-perso.virt

pour avoir un aperçu du résultat de notre site perso en projet.


Catégorie:Logiciels Catégorie:Virtualisation