O convidado do Ubuntu VirtualBox não obtém o ipv4 no modo em ponte

3

Eu tenho uma nova caixa virtual Ubuntu Server 16.04 instalação de convidado de 32 bits em um host Linux Mint 18 Cinnamon 64 bits. Eu quero que o sistema convidado apareça na rede local como uma máquina física. Portanto, eu preciso de um modo de rede com ponte para o convidado --- somente host e / ou NAT não serve. O sistema host está conectado via cabo ethernet e os acréscimos de convidados são instalados na máquina virtual.

O curioso é que, durante a instalação, o sistema convidado é perfeitamente capaz de baixar pacotes adicionais. Uma vez logado, no entanto, eu não posso fazer ping em computadores na rede local nem em servidores externos como o google.com.

Para google.com , diz "ping: host desconhecido", para o roteador local (192.168.178.1), ele diz "conectar: a rede está inacessível".

Após um exame mais detalhado, eu descobri que a máquina virtual não recebeu um endereço IPv4 do servidor DHCP do meu roteador. No entanto, meu roteador exibe que um endereço foi atribuído (o quarta entrada).

Eu tentei configurar um IPv4 estático. Então, o endereço correspondente aparece em ipconfig . Mas ainda assim, o convidado não pode pingar nada. Além disso, na verdade, eu quero que a máquina virtual receba seu endereço IPv4 do servidor DHCP local de qualquer maneira.

Em /etc/network/interfaces , a interface de rede de ipconfig é inicializada da seguinte forma: allow-hotplug enp0s17 iface enp0s17 inet dhcp

Coisas que tentei:

  • definindo o convidado para um IPv4 estático
  • desativando o IPv6
  • excluindo /etc/udev/rules.d/70-persistent-net.rules
  • sudo ip link set enp0s17 up
  • dhclient enp0s17

Nada disso funcionou. Alguém pode me ajudar a resolver esse problema?

    
por wehnsdaefflae 15.11.2016 / 19:07

3 respostas

1

O problema é diferente, mas a solução é a mesma.

Start with 10Mbps, half duplex and work upwards to 10Mbps FD, 100Mbps HD, ... until the problem starts. Then go down one notch and leave it at that speed.

First, install ethtool (if already installed you will just get a warning that the latest version is already installed)

sudo apt-get install ethtool

Now:

  1. Type the following command (and test them one by one)

    sudo ethtool --change eth0 speed xxx duplex yyy autoneg off

    where xxx = 10, 100 or 1000 and yyy = half or full.

    So start with 10 half, 10 full, 100 half, ...

  2. Do an ifconfig to check whether you got an IP address.

  3. Go back to 1 until it stops working and use the previous values that still worked to:

  4. To make the change permanent, execute the following command:

    sudo nano /etc/network/interfaces

    and type at the pre-up section:

    pre-up /usr/sbin/ethtool --change eth0 speed xxx duplex yyy autoneg off

Anote a entrada completa postada por OP:

auto eth0
iface eth0 inet dhcp
    pre-up ifconfig $IFACE up
    pre-up ethtool -s $IFACE speed 100 duplex full autoneg off
    
por 15.11.2016 / 19:42
2

A primeira resposta para isso parece um pouco complexa demais para mim. O seguinte deve funcionar. Abra a máquina convidada e faça o seguinte:

Você pode querer desativá-lo desde o boot. Para este propósito, abra:

/etc/default/grub

com seu editor de texto favorito com acesso root:

ou seja,

gksu gedit /etc/default/grub

ou se você preferir trabalhar apenas com a linha de comando:

sudo nano /etc/default/grub

Neste arquivo, encontre esta linha:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

e altere para:

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

Salve o arquivo e atualize o GRUB executando:

sudo update-grub

Se você tentou o método sysctl:

Veja a seguinte pergunta / resposta mais votada, porque você pode definir valores ip6 para 0 e se você não iniciar o sysctl como parte da inicialização, ele irá ignorá-lo de qualquer maneira (leia o valor ip6 padrão depois de definir tudo como 1 para desativar se o sistema reportar 0, você precisa executar o sysctl):

Como desativar o IPv6 no Ubuntu 14.04?

Eu gosto do meu método porque ele desativa o ip6 na inicialização, então nada tenta ir na rota ip6 durante a inicialização (alguns podem até ter erros com ele habilitado na inicialização e desativado dentro do próprio SO). É também apenas um pequeno ajuste para uma linha em um arquivo, tornando as coisas realmente fáceis, e você não é forçado a sacrificar a velocidade da linha como se estivesse usando menos do que o Full Duplex de 100 MHz ou Full Duplex de 1000 MHz (se você tiver Gig é o último se o roteador de 100 Meg ou o switch for o primeiro).

    
por 21.11.2016 / 18:09
0

Nas configurações da VM do VirtualBox, acesse Rede e, em seguida, selecione as configurações avançadas no painel direito e verifique o "Tipo de adaptador". O padrão parece ser "Intel PRO / 1000 MT Desktop (82540EM)". Com esse tipo de adaptador, tive exatamente o mesmo problema, então tentei alterar o tipo de adaptador para "Intel PRO / 1000 MT Server (82545EM)" e atualizar o arquivo / etc / network / interfaces (se você alterar o tipo de adaptador antes você instala o Ubuntu Server ele deve criar o arquivo de interfaces com a informação correta) e agora funciona bem. A versão do VBox que estou usando é 5.1.28 r117968 (Qt5.6.2) em um host Windows 10 e usando a rede Bridged.

    
por 06.10.2017 / 21:04