J'ai créé une Debian VM sur VirtualBox avec deux interfaces: une NAT une (pour accéder à Internet) et une hôte uniquement. Cependant, je ne sais pas comment faire fonctionner les deux interfaces en même temps. Si je définis l'hôte uniquement comme l'adaptateur 1, je peux accéder à mon VM à partir de l'hôte mais pas d'Internet; si je définis le NAT un en tant qu'adaptateur 1, je peux accéder à Internet mais je ne peux pas atteindre mon invité Debian.
Alors, comment pourrais-je faire fonctionner les deux interfaces ensemble?
Remarque: J'essaie toujours de mapper un port de mon hôte sur le port SSH de mon SO invité, il n'est donc pas nécessaire de me suggérer de le faire :)
EDIT : Ceci est la sortie de ifconfig
lorsque le premier adaptateur est le Hôte uniquement un:
eth0 Link encap:Ethernet HWaddr 08:00:27:f6:b2:45
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef6:b245/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:495 errors:0 dropped:0 overruns:0 frame:0
TX packets:206 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:48187 (47.0 KiB) TX bytes:38222 (37.3 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)
Ceci est la sortie de netstat -nr
lorsque le premier adaptateur est hôte uniquement un:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.56.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Il s'agit de la sortie de ifconfig
lorsque le premier adaptateur est le NAT one:
eth0 Link encap:Ethernet HWaddr 08:00:27:f6:b2:45
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef6:b245/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:53 errors:0 dropped:0 overruns:0 frame:0
TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6076 (5.9 KiB) TX bytes:5526 (5.3 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:16 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1664 (1.6 KiB) TX bytes:1664 (1.6 KiB)
Ceci est la sortie de netstat -nr
lorsque le premier adaptateur est le NAT one:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
La solution était assez simple: je devais juste ajouter les lignes suivantes dans la machine virtuelle Debian /etc/network/interfaces
fichier:
allow-hotplug eth1
iface eth1 inet dhcp
La deuxième ligne demande à l'interface d'obtenir une IP via DHCP. La première ligne charge l'interface au démarrage.
Pour appliquer les modifications à un système en cours d'exécution, appelez:
ifup eth1
Le nom du eth1
l'interface peut varier, utilisez ifconfig -a
pour répertorier toutes les interfaces disponibles.
MODIFIER : complet /etc/network/interfaces
:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug eth1
iface eth1 inet dhcp
J'étais confronté à un problème similaire avec ma machine virtuelle Ubuntu 14.04, et la solution suggérée par @brandizzi pour Debian a fonctionné avec peu de changement.
EDIT: file /etc/network/interfaces:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp
Pour UBUNTU 16.04
Exécuter la commande
ifconfig -a
Cherchez une nouvelle interface comme dans mon cas c'est 'enp0s8'
EDIT file /etc/network/interfaces:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp
auto enp0s8
iface enp0s8 inet dhcp
Les deux adaptateurs doivent être configurés dans Debian
Il semble que dans les deux cas, vous n'avez qu'un seul adaptateur configuré, d'où votre problème.
Créez 2 adaptateurs dans la configuration VirtualBox de votre VM puis démarrez-le. Si vous ne voyez qu'un seul adaptateur configuré lors de l'utilisation d'ifconfig (un seul eth0, pas eth1 aussi), alors vous devez utiliser le réseau outil de configuration pour Debian (Network Manager, ifupdown, etc.) pour configurer les deux interfaces dans DHCP. Vous devriez donc avoir eth0 et eth1 dans DHCP.
Dans l'hôte Ubuntu 18.04, VirtualBox 6.1, en utilisant Ubuntu 19.04 comme invité
Dans l'invité modifier /etc/netplan/50-cloud-init.yaml
fichier, ajoutez deux lignes comme indiqué ci-dessous (avant la ligne de version). Il semble que la configuration réseau de l'invité ne soit configurée que pour gérer un réseau et que le second doit être ajouté manuellement
network:
ethernets:
enp0s3:
dhcp4: true
enp0s8:
dhcp4: true
version: 2
Assurez-vous que vous utilisez des sous-réseaux d'espace d'adressage privés séparés pour chaque interface.
Ainsi, par exemple, pour l'interface NAT, vous pouvez utiliser une adresse dans l'espace 192.168.0.0/16.
L'interface qui est "hôte uniquement" pourrait se trouver dans l'espace 10.0.0.0/24.