Eu tenho esta configuração:
config.vm.network "public_network", ip: "192.168.56.101", :mac => "0022334455DA"
E depois que o vagrant up
ifconfig imprime:
eth0 Link encap:Ethernet HWaddr 08:00:27:12:96:98
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe12:9698/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1141 errors:0 dropped:0 overruns:0 frame:0
TX packets:861 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:115407 (115.4 KB) TX bytes:98490 (98.4 KB)
eth1 Link encap:Ethernet HWaddr 00:22:33:44:55:da
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::222:33ff:fe44:55da/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:319 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:19236 (19.2 KB) TX bytes:648 (648.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Mas ainda não consigo acessar o servidor na 192.168.56.101
minha máquina ou qualquer outro na minha rede. Quando a configuração estava, private_server
eu podia acessar o endereço da minha máquina.
show de rota ip
default via 10.0.2.2 dev eth0
default via 10.0.2.2 dev eth0 metric 100
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15
192.168.56.0/24 dev eth1 proto kernel scope link src 192.168.56.101
Quando o vm está sendo executado, a configuração de rede do VB mostra duas conexões:
Adapter 1
Attached to: NAT
Adapter 2
Attached to: Bridged Adapter
Name: Intel Ethernet Connection
Então, eu acho que eth0 é NAT e eth1 é uma conexão em ponte? Este Intel Ethernet Connection
é o meu cabo Ethernet conectado ao roteador.
Além disso, quando abro o centro de rede e compartilhamento, ele diz que há uma rede não identificada com 2 conexões: VirtualBox Host-Only Network
e VirtualBox Host-Only Network #2
. O que é confuso, pois eu realmente configurei o Vagrant para usar uma rede pública.
fonte
Respostas:
Usando o ifconfig , descobri que a máscara de rede atribuída à máquina convidada era diferente da interface em ponte do host, portanto tive que especificá-la manualmente. Depois disso, a VM estava acessível fora do sistema host. Aqui está a minha entrada no Vagrantfile:
fonte
Se eu tivesse que adivinhar a partir dessa pequena quantidade de informações, apontaria para a tabela de roteamento ... o 10.0.2.15 eth0 nic está transferindo consideravelmente mais dados.
fonte
ip route show
da vm seria um bom começo ... então precisamos saber a que essas redes se conectam: "10.0.2.15 é nat'd através do software de visualização que é compartilhado através do host que fica atrás de um roteador / modem e 192.168. 56,101 é um adaptador em ponte ligado ao router / modem", etc.