Colisões de portas ao encaminhar entre convidado e host

Colisões de portas ao encaminhar entre convidado e host

Estou trabalhando para configurarVagabundousando uma caixa base do VirtualBox, e gostaria de encaminhar portas entre meu convidado (Ubuntu 12.04) e meu host (Windows 7) para acessar o servidor Apache2 que estará rodando no convidado.

O problema que estou enfrentando é que quando tento encaminhar entre a porta 80no convidado e a porta 80no host (ou mesmo 8080) o Vagrant irá reclamar e me alertar sobre o fato de que a porta de encaminhamento "...já está em uso na máquina host."

Não é.

Executar a netstat -amostra que nada está conectado ou usando a porta 80(ou mesmo 8080). Depois de algumas experiências descobri que aparentemente a versão gratuita do Avast! que estou usando está bloqueando as portas encaminhadas. Nem todo o Avast! é o culpado, apenas o Web Shield.

Com o Avast! Web Shield desligado, usando o arquivo de configuração abaixo funciona perfeitamente ao inicializar a VM, com ele ligado... bem, aí está o problema.

Quero tentar encontrar uma solução que me permita usar o Vagrant sem ter que comprometer as configurações de um antivírus, se possível, ou pelo menos ter uma solução que não tenha muitas ressalvas. A intenção é usar o Vagrant como um meio de simplificar a configuração do desenvolvimento e não complicá-lo demais.

Para referência aqui está o meu Vagrantfile:

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  config.vm.box = "precise32"
  config.vm.box_url = "http://files.vagrantup.com/precise32.box"

  config.vm.network :forwarded_port, guest: 80, host: 80

  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "1024"]
  end

end

Tentei redes privadas, redes públicas, etc., mas posso estar configurando-as incorretamente.

Nota do autor:Esta pergunta pode já ter sido feita e respondida por outra pessoa e, se tiver sido, peço desculpas. Tudo o que descobri até agora não parece ser uma solução. Acho que parte do problema é que não tenho certeza se sei a pergunta adequada a ser feita para encontrar a solução correta. Se houver uma solução para isso, por favor, vincule-a!

Responder1

Depois de atualizaravast! Antivírus gratuitopara a versão do programa: 2014.9.0.2011o 2014.9.0.2008problema parece ter se resolvido. Parece que houve um conflito no lançamento anterior de 2014 do antivírus da Avast. Do seuhistórico de atualizações:

  • WebShield totalmente reescrito para que agora não funcione mais como um "proxy transparente", o que deve resultar em uma melhoria geral na estabilidade e no desempenho. Também permite ver e detectar mais ameaças
  • O componente Firewall (no IS e Premier) tornou-se mais compatível com outras aplicações, como Java e vários serviços VPN

Alternativamente, embora não resolva diretamente o problema de encaminhamento de porta, as redes públicas e privadas funcionam, mas vêm com suas próprias advertências:

  • As redes públicas adquirem seu próprio IP na rede e para acessá-las parece necessário executar um ifconfigno convidado para determinar o IP atribuído. Isso coloca uma carga maior sobre o indivíduo que usa a VM, pois ele precisa realizar uma etapa extra toda vez que ativa a VM para determinar o IP do seu servidor.
  • As redes privadas permitem a atribuição de um endereço IP estático para consumo privado entre o host e o convidado. Talvez a melhor solução possível, barrando o encaminhamento de porta, com a exceção de que você precisa escolher o IP a ser utilizado.

informação relacionada