У меня проблема с виртуальной машиной в Virtualbox. Я настраиваю виртуальную машину в Virtualbox с интерфейсом только для хоста, и до этого момента все идет хорошо: виртуальная машина достигает хоста, а хост - виртуальной машины. Но есть проблема, почему мой хост не может подключиться к Интернету, даже если я выключил виртуальную машину? У меня Debian как SO на хост-машине.

Вот моя конфигурация хоста:

alessandro@al91:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether xx:xx:3a:02:xx:46 brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether xx:48:xx:e3:xx:5f brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.2/24 brd 192.168.1.255 scope global dynamic wlan0
       valid_lft 79412sec preferred_lft 79412sec
    inet6 fe80::3f3:9d64:8e0a:839/64 scope link 
       valid_lft forever preferred_lft forever
4: vboxnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 0a:00:xx:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.20/24 brd 192.168.1.255 scope global vboxnet0
       valid_lft forever preferred_lft forever
    inet6 fe80::800:27ff:fe00:0/64 scope link 
       valid_lft forever preferred_lft forever
alessandro@al91:~$ ip route
default via 192.168.1.1 dev wlan0 proto static metric 600 
192.168.1.0/24 dev vboxnet0 proto kernel scope link src 192.168.1.20 
192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.2 metric 600 

Заранее спасибо.

1 ответ1

2

У вас есть «конфликт подсети». И ваша реальная сеть (wlan0), и адаптер VirtualBox Host-only (vboxnet0) находятся в одной подсети (192.168.1.0/24).

При подключении к IP-адресам в Интернете это не вызывает двусмысленности, поскольку маршрут по умолчанию привязан к wlan0 . Однако, прежде чем это произойдет, ПК выполнит поиск DNS, чтобы определить IP-адрес, к которому вы хотите подключиться. Я уверен, что /etc/resolv.conf покажет, что он попытается связаться с 192.168.1.1 в качестве DNS-сервера.

При подключении к локальным хостам маршрут по умолчанию не используется. Поскольку ваш интерфейс wlan0 имеет показатель «600» по любой причине, он не будет использоваться для подключения к 192.168.1.1 - это более дорогой маршрут. Однако ваш маршрутизатор не может быть достигнут через vboxnet0 . Запросы DNS останавливаются, и кажется, что вы не можете связаться с Интернетом.

Решение состоит в том, чтобы изменить подсеть на адаптере только для хоста. В командной строке вы можете использовать VBoxManage:

VBoxManage hostonlyif ipconfig vboxnet0 --ip 192.168.56.1 --netmask 255.255.255.0

В графическом интерфейсе выберите «Файл» → «Настройки» → «Сеть» → «Только хост-сети»:

Дважды щелкните адаптер, который вы хотите изменить, измените его настройки и подтвердите:

BILD

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .