Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
virtualbox_reseau [Le 08/03/2014, 19:28] 176.186.10.26 [Donner un accès internet aux machines virtuelles présentes dans un réseau interne] |
virtualbox_reseau [Le 11/09/2022, 12:01] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>virtualbox réseau}} | + | {{tag>virtualisation réseau À_RECYCLER}} |
---- | ---- | ||
- | {{applications:virtualbox.png|}} | + | {{ :applications:virtualbox.png?70|}} |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
====== VirtualBox et le réseau ====== | ====== VirtualBox et le réseau ====== | ||
Cette page n'est qu'une annexe destinée à alléger la page principale de [[:VirtualBox]] et permettant de vous présenter la façon de mettre en œuvre la mise en réseau de l'hôte //(host interface networking)//. | Cette page n'est qu'une annexe destinée à alléger la page principale de [[:VirtualBox]] et permettant de vous présenter la façon de mettre en œuvre la mise en réseau de l'hôte //(host interface networking)//. | ||
- | <note important>Attention si l'hôte (le système qui exécute VirtualBox) est connecté à votre réseau par wifi : beaucoup de cartes wifi **ne supportent pas bridge**, malheureusement les deux exemples donnés ci-dessous utilisent **bridge**. Plus d'information : [[http://www.linux-foundation.org/en/Net:Bridge#It_doesn.27t_work_with_my_Wireless_card.21|It doesn't work with my Wireless card!]] | + | <note important>Cette page est assez ancienne et est donc à prendre avec précautions, n'hésitez pas à consulter le chapitre 6 de la doc officielle (fr) :\\ [[http://download.virtualbox.org/virtualbox/UserManual_fr_FR.pdf]]\\ |
- | Cependant, un workaround avec iptables et le nat peut permettre à virtualbox de se connecter au réseau même si l'interface wifi ne supporte pas le bridge. | + | et à amender cette page</note> |
+ | |||
+ | <note important>Attention si l'hôte (le système qui exécute VirtualBox) est connecté à votre réseau par wifi : beaucoup de cartes wifi **ne supportent pas bridge**, malheureusement les deux exemples donnés ci-dessous utilisent **bridge**. Plus d'information : [[http://www.linux-foundation.org/en/Net:Bridge#It_doesn.27t_work_with_my_Wireless_card.21|It doesn't work with my Wireless card!]] | ||
+ | Cependant, un workaround avec iptables et le nat peut permettre à VirtualBox de se connecter au réseau même si l'interface wifi ne supporte pas le bridge. | ||
</note> | </note> | ||
- | <note tip><del>Un nouveau tutorial est disponible pour faire fonctionner le bridge avec une carte wifi : [[http://www.scub.net/blog/index.php?2008/11/25/46-installer-un-pont-reseau-wifi-avec-virtualbox-bridged-networking-wireless|Installer un pont réseau wifi avec Virtualbox (Bridged Networking Wireless)]].</del> **Lien Mort**</note> | + | |
- | <note> | + | |
Pour la rédaction de cet article, les options suivantes ont été utilisées dans la configuration réseau de VirtualBox: | Pour la rédaction de cet article, les options suivantes ont été utilisées dans la configuration réseau de VirtualBox: | ||
* **Adapter Type**: //''PCnet-FAST III (Am 79C973)''// | * **Adapter Type**: //''PCnet-FAST III (Am 79C973)''// | ||
* **Adresse MAC**: Laisser la valeur par défaut, ou ''Générer''. | * **Adresse MAC**: Laisser la valeur par défaut, ou ''Générer''. | ||
- | </note> | + | |
<note tip> | <note tip> | ||
- | Sous Jaunty avec la version des dépots (version 2.1.4 OSE) il suffit d'installer [[apt://bridge-utils]] et de configurer l'adaptateur réseau sur "attaché à: Adapteur réseau Hote" pour la machine virtuelle. Si vous etes en DHCP le tour est joué, la machine virtuelle est accessible directement sur le réseau local sans plus de configuration. | + | Sous [[Jaunty]] avec la version des dépôts (version 2.1.4 OSE) il suffit d'installer **[[apt>bridge-utils]]** et de configurer l'adaptateur réseau sur "attaché à: Adaptateur réseau Hôte" pour la machine virtuelle. Si vous êtes en DHCP le tour est joué, la machine virtuelle est accessible directement sur le réseau local sans plus de configuration. |
</note> | </note> | ||
- | + | ===== NAT ===== | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ===== 1. NAT ===== | + | |
Sélectionner simplement l'option //''NAT''// du menu **attaché à** dans la configuration réseau de la machine virtuelle. | Sélectionner simplement l'option //''NAT''// du menu **attaché à** dans la configuration réseau de la machine virtuelle. | ||
- | ===== 2. Adaptateur réseau hôte ===== | + | ===== Adaptateur réseau hôte ===== |
- | [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] **[[apt://bridge-utils|bridge-utils]]**, **[[apt://uml-utilities|uml-utilities]]** (attention, ces paquets sont dans le dépôt **Universe**). | + | [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] **[[apt>bridge-utils,uml-utilities|bridge-utils uml-utilities]]** (attention, ces paquets sont dans le dépôt **Universe**). |
- | + | ==== Création du pont ==== | |
- | + | ||
- | + | ||
- | + | ||
- | ==== 2.1 Création du pont ==== | + | |
Nous créons le pont quelle que soit la méthode utilisée (permanente ou dynamique), car il est nécessaire aux deux. | Nous créons le pont quelle que soit la méthode utilisée (permanente ou dynamique), car il est nécessaire aux deux. | ||
Ligne 50: | Ligne 37: | ||
Le fait que le pont soit permanent nous permet, pour la méthode dynamique, d'ajouter les interfaces virtuelles sans couper la connection réseau de l'hôte. | Le fait que le pont soit permanent nous permet, pour la méthode dynamique, d'ajouter les interfaces virtuelles sans couper la connection réseau de l'hôte. | ||
- | Sauvegarder le fichier **/etc/network/interfaces**:<code bash> | + | Sauvegarder le fichier **/etc/network/interfaces**: |
+ | <code bash> | ||
sudo cp /etc/network/interfaces /etc/network/interfaces.orig | sudo cp /etc/network/interfaces /etc/network/interfaces.orig | ||
</code> | </code> | ||
Ligne 58: | Ligne 46: | ||
Remplacer "eth0" par le nom de l'interface à laquelle on désire attacher le pont.\\ Remplacer les valeurs de "address", "netmask" et "gateway" par celles utilisées sur le réseau. | Remplacer "eth0" par le nom de l'interface à laquelle on désire attacher le pont.\\ Remplacer les valeurs de "address", "netmask" et "gateway" par celles utilisées sur le réseau. | ||
</note> | </note> | ||
- | L' interface est probablement déjà configurée par le système, repérer les lignes du type<file> | + | L' interface est probablement déjà configurée par le système, repérer les lignes du type |
- | auto eth0 | + | <file - /etc/network/interfaces> |
+ | auto eth0 | ||
iface eth0 inet dhcp | iface eth0 inet dhcp | ||
</file>ou<file> | </file>ou<file> | ||
- | auto eth0 | + | auto eth0 |
iface eth0 inet static | iface eth0 inet static | ||
address xxx.xxx.xxx.xxx | address xxx.xxx.xxx.xxx | ||
Ligne 87: | Ligne 76: | ||
</file> | </file> | ||
- | <note tip>Voici une autre méthode pour ubuntu 8.04 et virtualbox ose : [[http://forum.ubuntu-fr.org/viewtopic.php?id=217680]]</note> | + | ==== Préparation des interfaces virtuelles ==== |
- | + | ||
- | + | ||
- | + | ||
- | ==== 2.2 Préparation des interfaces virtuelles ==== | + | |
Quelques préparatifs sont nécessaires afin que VirtualBox puisse accéder aux interfaces virtuelles. | Quelques préparatifs sont nécessaires afin que VirtualBox puisse accéder aux interfaces virtuelles. | ||
Ligne 98: | Ligne 83: | ||
Créer le groupe **tunusers**:<code bash>sudo addgroup tunusers</code> | Créer le groupe **tunusers**:<code bash>sudo addgroup tunusers</code> | ||
Y ajouter l' utilisateur:<code bash>sudo adduser $USER tunusers</code> | Y ajouter l' utilisateur:<code bash>sudo adduser $USER tunusers</code> | ||
- | Modifier les droits d'acces a //''/dev/net/tun''// pour que les utilisateurs du groupe **tunusers** puissent l'utiliser:\\ [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/etc/udev/rules.d/20-names.rules**.\\ Remplacer<file>KERNEL=="tun", NAME="net/%k"</file>par<file>KERNEL=="tun", NAME="net/%k", GROUP="tunusers", MODE="0660"</file> | + | Modifier les droits d'acces a //''/dev/net/tun''// pour que les utilisateurs du groupe **tunusers** puissent l'utiliser:\\ [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/etc/udev/rules.d/20-names.rules**.\\ |
- | Si le node //''/dev/net/tun''// est créé par recopie du fichier //''/lib/udev/devices/net/tun''// avec ses droits d'accès.\\ Modifier les permissions de **/lib/udev/devices/net/tun** afin que le fichier soit accessible pour les membres du groupe **tunusers**:<code bash> | + | Remplacer |
+ | <file> | ||
+ | KERNEL=="tun", NAME="net/%k"</file> | ||
+ | par | ||
+ | <file>KERNEL=="tun", NAME="net/%k", GROUP="tunusers", MODE="0660"</file> | ||
+ | Si le node //''/dev/net/tun''// est créé par recopie du fichier //''/lib/udev/devices/net/tun''// avec ses droits d'accès.\\ Modifier les permissions de **/lib/udev/devices/net/tun** afin que le fichier soit accessible pour les membres du groupe **tunusers**: | ||
+ | <code bash> | ||
sudo chown :tunusers /lib/udev/devices/net/tun | sudo chown :tunusers /lib/udev/devices/net/tun | ||
sudo chmod g+rw /lib/udev/devices/net/tun | sudo chmod g+rw /lib/udev/devices/net/tun | ||
Ligne 105: | Ligne 96: | ||
Redémarrer le système. | Redémarrer le système. | ||
- | ==== 2.3 Méthode dynamique ==== | + | ==== Méthode dynamique ==== |
L'interface utilisée par la machine virtuelle est créée au démarrage de celle-ci, puis supprimée à son extinction. | L'interface utilisée par la machine virtuelle est créée au démarrage de celle-ci, puis supprimée à son extinction. | ||
Ligne 113: | Ligne 104: | ||
</note> | </note> | ||
- | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/bin/vbox-network**.<file> | + | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/bin/vbox-network**. |
+ | <file - /opt/bin/vbox-network> | ||
#!/bin/bash | #!/bin/bash | ||
Ligne 138: | Ligne 130: | ||
</file> | </file> | ||
- | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/lib/vbox-network**.<file> | + | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/lib/vbox-network**. |
+ | <file - /opt/bin/vbox-network> | ||
# include configuration | # include configuration | ||
. /opt/etc/vbox-network | . /opt/etc/vbox-network | ||
Ligne 193: | Ligne 186: | ||
</file> | </file> | ||
- | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/etc/vbox-network**.<file> | + | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/opt/etc/vbox-network**. |
+ | <file - /opt/bin/vbox-network> | ||
BRIDGE="br0" | BRIDGE="br0" | ||
TUN="/dev/net/tun" | TUN="/dev/net/tun" | ||
Ligne 202: | Ligne 196: | ||
</file> | </file> | ||
- | Modifier les permission de **/opt/bin/vbox-network** afin qu'il soit exécutable par les membres du groupe **vboxusers**:<code bash> | + | Modifier les permission de **/opt/bin/vbox-network** afin qu'il soit exécutable par les membres du groupe **vboxusers**: |
+ | <code bash> | ||
sudo chown :vboxusers /opt/bin/vbox-network | sudo chown :vboxusers /opt/bin/vbox-network | ||
sudo chmod ug+rx /opt/bin/vbox-network | sudo chmod ug+rx /opt/bin/vbox-network | ||
</code> | </code> | ||
- | Créer les liens **vbox-network_start** et **vbox-network_stop**:<code bash> | + | Créer les liens **vbox-network_start** et **vbox-network_stop**: |
+ | <code bash> | ||
cd /opt/bin | cd /opt/bin | ||
sudo ln -s vbox-network vbox-network_start | sudo ln -s vbox-network vbox-network_start | ||
Ligne 213: | Ligne 209: | ||
</code> | </code> | ||
- | Editer **/etc/sudoers** afin que Virtualbox puisse exécuter les commandes nécessaires sans se voir demander de mot de passe:<code bash> | + | Editer **/etc/sudoers** afin que Virtualbox puisse exécuter les commandes nécessaires sans se voir demander de mot de passe: |
+ | <code bash> | ||
sudo visudo | sudo visudo | ||
</code> | </code> | ||
- | Ajouter<file> | + | Ajouter |
+ | <file> | ||
# Members of vboxusers can run /opt/bin/vbox-network_start and /opt/bin/vbox-network_stop without asked for a password | # Members of vboxusers can run /opt/bin/vbox-network_start and /opt/bin/vbox-network_stop without asked for a password | ||
%vboxusers ALL=(ALL) NOPASSWD: /opt/bin/vbox-network_start, /opt/bin/vbox-network_stop | %vboxusers ALL=(ALL) NOPASSWD: /opt/bin/vbox-network_start, /opt/bin/vbox-network_stop | ||
</file> | </file> | ||
- | Pour utiliser ces interfaces virtuelles, sélectionner l'option //''Adaptateur Réseau Hôte''// du menu **attaché à** dans la configuration réseau de la machine virtuelle.\\ Laisser le champ **Nom de l'interface** vide.\\ Remplir le champ **Application d'installation** avec //''sudo /opt/bin/vbox-network_start''//.\\ Remplir le champ **Application de désinstallation** avec //''sudo /opt/bin/vbox-network_stop''//. | + | Pour utiliser ces interfaces virtuelles, sélectionner l'option //''Adaptateur Réseau Hôte''// du menu **attaché à** dans la configuration réseau de la machine virtuelle.\\ |
+ | Laisser le champ **Nom de l'interface** vide. | ||
+ | Remplir le champ **Application d'installation** avec //''sudo /opt/bin/vbox-network_start''//.\\ | ||
+ | Remplir le champ **Application de désinstallation** avec //''sudo /opt/bin/vbox-network_stop''//. | ||
- | ==== 2.4 Méthode permanente ==== | + | ==== Méthode permanente ==== |
Les interfaces virtuelles seront créées au démarrage du systeme, meme si elles ne sont pas utilisées par la suite. | Les interfaces virtuelles seront créées au démarrage du systeme, meme si elles ne sont pas utilisées par la suite. | ||
Ligne 230: | Ligne 231: | ||
[[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/etc/network/interfaces**. | [[:tutoriel:comment_editer_un_fichier|Éditer le fichier]] **/etc/network/interfaces**. | ||
<note> | <note> | ||
- | Remplacer **eth0** par le nom de l'interface à laquelle on a attaché le pont.\\ Remplacer **tapX** par le nom de l'interface (tap0, puis tap1, tap2, tap3 ...)\\ Remplacer **<user>** par le nom de l'utilisateur. | + | Remplacer **eth0** par le nom de l'interface à laquelle on a attaché le pont.\\ Remplacer **tapX** par le nom de l'interface (tap0, puis tap1, tap2, tap3 ...) |
+ | Remplacer **<user>** par le nom de l'utilisateur. | ||
</note> | </note> | ||
- | Pour chaque interface virtuelles, ajouter (avant la section de l'interface br0)<file> | + | |
+ | Pour chaque interface virtuelles, ajouter (avant la section de l'interface br0) | ||
+ | <file - /etc/network/interfaces> | ||
auto tapX | auto tapX | ||
iface tapX inet manual | iface tapX inet manual | ||
Ligne 238: | Ligne 242: | ||
down ifconfig $IFACE down | down ifconfig $IFACE down | ||
tunctl_user <user> | tunctl_user <user> | ||
- | </file>puis, dans la section de l'interface br0, rajouter tapX à la fin de la ligne suivante<file>bridge-ports eth0</file>ce qui donne<file>bridge-ports eth0 tapX</file> | + | </file> |
+ | puis, dans la section de l'interface br0, rajouter tapX à la fin de la ligne suivante | ||
+ | <file>bridge-ports eth0</file> | ||
+ | ce qui donne | ||
+ | <file>bridge-ports eth0 tapX</file> | ||
- | Redémarrer le réseau:<code bash> | + | Redémarrer le réseau: |
+ | <code bash> | ||
sudo /etc/init.d/networking restart | sudo /etc/init.d/networking restart | ||
</code> | </code> | ||
Ligne 249: | Ligne 258: | ||
Télécharger [[http://downloadcenter.intel.com/download.aspx?url=/4275/a08/PRO2KXP.exe&DwnldId=4275&ProductID=871&lang=fra|Pilotes Windows XP]] et les installer. | Télécharger [[http://downloadcenter.intel.com/download.aspx?url=/4275/a08/PRO2KXP.exe&DwnldId=4275&ProductID=871&lang=fra|Pilotes Windows XP]] et les installer. | ||
- | ==== 2.5 Pour les utilisateurs de Firestarter ==== | + | ==== Pour les utilisateurs de Firestarter ==== |
=== Méthode dynamique : === | === Méthode dynamique : === | ||
Ligne 266: | Ligne 275: | ||
* Sélectionnez br0 si une seule interface réseau physique est utilisée (l'ordinateur ne gère pas le partage de la connexion Internet pour le réseau local) | * Sélectionnez br0 si une seule interface réseau physique est utilisée (l'ordinateur ne gère pas le partage de la connexion Internet pour le réseau local) | ||
- | * Sélectionnez ethx (x à remplacer par le numéro correspondant) si l'ordinateur est relié au réseau local par ethx et à internet par br0 (par exemple pour gérer le partage de la connexion internet) | + | * Sélectionnez ethx (x à remplacer par le numéro correspondant) si l'ordinateur est relié au réseau local par ethx et à internet par br0 (par exemple pour gérer le partage de la connexion internet) |
</note> | </note> | ||
* Dans les 2 cas : cocher //Autoriser le partage de la connexion internet// (que ce soit pour le réseau local ou seulement pour les machines virtuelles) | * Dans les 2 cas : cocher //Autoriser le partage de la connexion internet// (que ce soit pour le réseau local ou seulement pour les machines virtuelles) | ||
- | + | ===== Réseau interne ===== | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ===== 3. Réseau interne ===== | + | |
Pour utiliser le réseau interne, dans le gestionnaire de machines VirtualBox, dans les propriétés de la machine, choisissez réseau interne dans les interfaces réseau. | Pour utiliser le réseau interne, dans le gestionnaire de machines VirtualBox, dans les propriétés de la machine, choisissez réseau interne dans les interfaces réseau. | ||
Ligne 305: | Ligne 307: | ||
(Partie à compléter avec captures d'écran et utilisation d'exemples) | (Partie à compléter avec captures d'écran et utilisation d'exemples) | ||
- | |||
===== Liens et sources ===== | ===== Liens et sources ===== | ||
- | * Documentation VirtualBox: http://www.virtualbox.org/wiki/End-user_documentation | + | * Documentation VirtualBox: [[https://www.virtualbox.org/wiki/End-user_documentation]] (EN) |
- | * http://www.singularity.be/2008/02/back-to-virtualbox.html | + | --- |
- | * Script de configuration de pont : http://www.taltan.fr/post/2008/03/24/VirtualBox-simplifer-la-gestion-du-reseau-avec-un-hote-Ubuntu | + | |
- | * Installer un pont réseau wifi avec Virtualbox (Bridged Networking Wireless) : <del>http://www.scub.net/blog/index.php?2008/11/25/46-installer-un-pont-reseau-wifi-avec-virtualbox-bridged-networking-wireless</del> Lien mort. | + | |
- | + | ||
- | ---- | + | |
//Contributeurs : [[utilisateurs:narsil]], Igor.B, [[utilisateurs:tigermickrs]], [[utilisateurs:Marvinux]].// | //Contributeurs : [[utilisateurs:narsil]], Igor.B, [[utilisateurs:tigermickrs]], [[utilisateurs:Marvinux]].// | ||