Questão Não é possível acessar minha VM on-line


Eu olhei através de algumas outras perguntas, mas nenhuma parece se encaixar na minha.

Eu tenho um sistema Ubuntu de 32 bits rodando de vagabundo. Tem uma interface pública (eth1) e uma interface nat (eth0). A eth0 é necessária para o ssh na máquina, pois é apenas a linha de comando, mas pode se livrar dela se for necessário.

Meu problema é que meu site pode ser acessado diretamente na minha máquina local, mas quando eu tento acessá-lo pela internet ele não funciona, o mesmo vale para o SSH. Nada parece conseguir sair da sandbox da VM. Alguém tem alguma dica?

Nota: Acabei de testar e posso acessá-lo na minha rede local, mas não funciona na Internet. Eu sei que o encaminhamento de porta funciona porque eu posso apontar a porta 22 e 80 para minha máquina host e ter o trabalho apache e ssh em uma nova instalação, parece ser a VM que está quebrando as coisas.

meu arquivo de interfaces:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp
#VAGRANT-BEGIN
# The contents below are automatically generated by Vagrant. Do not modify.
auto eth1
iface eth1 inet dhcp
    post-up route del default dev $IFACE
#VAGRANT-END

1


origem


Você pode mostrar uma descrição mais completa da topologia de rede para sua VM. O que exatamente faz o eth0 NAT? Como a interface da eth1 VM é configurada nas configurações da VM? - Tero Kilkanen
O Vagrant faz um monte de coisas automaticamente, então é um pouco nebuloso. Vou postar o que está dentro de / etc / network / interfaces se isso ajudar - user316500
Bem, é importante saber que modo de rede é usado para eth0 / eth1 no lado do Vagrant, e também para saber qual é o NAT exato. /etc/network/interfaces não contém essa informação. - Tero Kilkanen
Ah eu vejo. Eu acabei de dar uma olhada. Parece que a eth0 é um requisito em todas as máquinas vagabundas, e lida com as coisas do DHCP. A eth1 é uma interface de rede que eu mesmo coloco 'config.vm.network "public_network"' no meu Vagrantfile. Esta é a interface pública e eu configurei manualmente seu IP para 192.168.1.115. Este é o IP que eu posso trabalhar o servidor na minha rede local, mas não on-line. Espero que isso ajude, parece que eu sei muito menos sobre o que está acontecendo do que eu pensava. - user316500


Respostas:


Os endereços 192.168.x.x são atribuídos a redes privadas e não podem ser acessados ​​pela Internet pública.

Você deve criar uma regra de redirecionamento de porta em seu roteador para encaminhar a porta desejada para a VM ou fornecer um endereço IP público à interface e certificar-se de que sua rede pública esteja configurada corretamente.


0



Eu tenho um endereço global com noip que aponta para o meu roteador, e todo o tráfego da porta 80 está sendo encaminhado para minha VM. Eu testei encaminhá-lo para minha máquina host e apache vai funcionar bem, mas se eu encaminhá-lo para minha VM com as mesmas configurações que irá falhar. - user316500


Eu estava com o mesmo problema: o convidado Linux em um host MacOS X, podia ser acessado de qualquer máquina na rede, mas não de fora, mesmo que o roteador estivesse configurado corretamente. Consegui resolvê-lo usando a resposta fornecida insira a descrição do link aqui.


0