Я запускаю Ubuntu на своей машине с другой Ubuntu в Virtualbox, я пытаюсь соединить их вместе, чтобы они оба имели доступ друг к другу и оба могли получить доступ к Интернету.

Это ifconfig хоста

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
    inet 130.15.1.72  netmask 255.255.255.0  broadcast 130.15.1.255
    inet6 fe80::3f37:1632:b494:f83d  prefixlen 64  scopeid 0x20<link>
    ether 84:2b:2b:a2:f0:d2  txqueuelen 1000  (Ethernet)
    RX packets 7275030  bytes 2419246030 (2.4 GB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 705630  bytes 93740106 (93.7 MB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    device interrupt 21  memory 0xf7fe0000-f8000000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
    inet 127.0.0.1  netmask 255.0.0.0
    inet6 ::1  prefixlen 128  scopeid 0x10<host>
    loop  txqueuelen 1000  (Local Loopback)
    RX packets 132569  bytes 44162247 (44.1 MB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 132569  bytes 44162247 (44.1 MB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0 

И это /etc/network/interfaces хоста

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
address 130.15.1.72
netmask 255.255.255.0
network 130.15.1.0
broadcast 130.15.1.255
gateway 130.15.1.1

В настройках сети Virtualbox я настроил сеть только для хоста с именем vboxnet0 со следующими настройками:

IP4 Address: 192.168.56.0
IP4 Network Mask: 255.255.255.0  

и DHCP отключен

Теперь у меня в настройках виртуальной машины:

Adapter 1: Host only network - vboxnet0
Adapter 2: NAT

Это вывод, когда я запускаю ls /sys/class/net на моем госте

enp0s3 enp0s8 lo

Это ifconfig гостевой машины

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.56.101  netmask 255.255.255.0  broadcast 192.168.56.255
        inet6 fe80::a00:27ff:fefd:775c  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:fd:77:5c  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 87  bytes 9096 (9.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.3.15  netmask 255.255.255.0  broadcast 10.0.3.255
        inet6 fe80::a00:27ff:fef3:976  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:f3:09:76  txqueuelen 1000  (Ethernet)
        RX packets 14384  bytes 13692205 (13.6 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6941  bytes 749919 (749.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 348  bytes 25732 (25.7 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 348  bytes 25732 (25.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

И это /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

# The host-only network interface
auto enp0s3
iface enp0s3 inet static
address 192.168.56.101
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255

# NAT interface
auto enp0s8
iface enp0s8 inet dhcp

Я пытаюсь пинговать, чтобы убедиться, что соединение установлено. Гость, кажется, может успешно пропинговать хост (130.15.1.72). Однако хост может пропинговать только 192.168.56.0 (что является просто широковещательным адресом для vboxnet0), в то время как пинг 192.168.56.101 просто зависает, не выдавая никакого вывода. Кроме того, когда я пытаюсь SSH с хоста, я просто получаю

Попытка 192.168.56.101 ...

Хотя, когда я пытаюсь SSH от гостя, я получаю сообщение об ошибке соединения отказано.

Пожалуйста, помогите мне и дайте мне знать, что я делаю неправильно. Я уверен, что это что-то в IP-адресах, потому что мне было очень сложно настроить.

Спасибо

1 ответ1

0

После нескольких дней непрерывных исследований, проб и ошибок. Мне наконец удалось решить проблему, и я не могу поверить, насколько это было просто ...

Моя проблема была решена простым обновлением virtualbox до последней версии! Я только что побежал

sudo apt-get update && sudo apt-get upgrade

VirtualBox должен быть закрыт перед запуском этой команды, иначе он не сможет обновиться. После этого я просто перезапустил свой хост-компьютер, и это было сделано! мой ifconfig был автоматически исправлен, чтобы показать новый интерфейс (vboxnet0), который я никогда раньше не видел:

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 130.15.1.72  netmask 255.255.255.0  broadcast 130.15.1.255
        inet6 fe80::862b:2bff:fea2:f0d2  prefixlen 64  scopeid 0x20<link>
        ether 84:2b:2b:a2:f0:d2  txqueuelen 1000  (Ethernet)
        RX packets 45609  bytes 25862185 (25.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 16778  bytes 2427180 (2.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 21  memory 0xf7fe0000-f8000000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 1222  bytes 239666 (239.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1222  bytes 239666 (239.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vboxnet0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.56.1  netmask 255.255.255.0  broadcast 192.168.56.255
        inet6 fe80::800:27ff:fe00:0  prefixlen 64  scopeid 0x20<link>
        ether 0a:00:27:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 608  bytes 60421 (60.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:43:82:ee  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Теперь я просто запустил гостя и, конечно же, смог наконец-то пинговать туда-сюда :) Однако я допустил одну ошибку: я подумал, что (130.15.1.72) следует использовать для пинга хоста. Это неверно; адрес, который использовался для настройки vboxnet0 в сетевых настройках virtualbox, должен использоваться гостями для связи с хостом. Поэтому я установил настройки vboxnet0 следующим образом:

IP4 Address: 192.168.56.1
IP4 Network Mask: 255.255.255.0

Все остальные настройки остались без веток с моего предыдущего поста. И теперь я могу проверить связь с гостем (гостями):

ping 192.168.56.1 

И я могу пинговать гостей, запустив

ping 192.168.56.101

Или какой бы статический IP ни был установлен.

Надеюсь, что это поможет кому-то еще, если они застряли в этом, это действительно расстраивает!

И спасибо всем, кто прочитал мой пост

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