Назад | Перейти на главную страницу

бродячий публичный IP недоступен

У меня такой конфиг:

config.vm.network "public_network", ip: "192.168.56.101", :mac => "0022334455DA"

И после vagrant up ifconfig печатает:

 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)

Но я все еще не могу получить доступ к серверу в 192.168.56.101 на моей машине или на любом другом в моей сети. Когда конфиг был private_server Я мог получить доступ к адресу со своей машины.

ip route show

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

Когда виртуальная машина запущена, конфигурация сети VB показывает два соединения:

Adapter 1
Attached to: NAT

Adapter 2
Attached to: Bridged Adapter
Name: Intel Ethernet Connection

Итак, я предполагаю, что eth0 - это NAT, а eth1 - мостовое соединение? в Intel Ethernet Connection подключен ли мой кабель Ethernet к маршрутизатору.

Также, когда я открываю центр сети и обмена, он сообщает мне, что существует неопознанная сеть с двумя подключениями: VirtualBox Host-Only Network и VirtualBox Host-Only Network #2. Это сбивает с толку, поскольку я фактически настроил Vagrant на использование общедоступной сети.

С помощью ifconfig, Я обнаружил, что сетевая маска, назначенная гостевой машине, отличается от мостового интерфейса хоста, поэтому мне пришлось указать ее вручную. Как только я это сделал, виртуальная машина стала доступна за пределами хост-системы. Вот моя запись Vagrantfile:

config.vm.network :public_network, ip: '172.16.35.51', :netmask => '255.255.0.0', :bridge => 'eth0'

Если бы мне пришлось угадывать из этого небольшого количества информации, я бы указал на таблицу маршрутизации ... eth0 nic 10.0.2.15 передает значительно больше данных.