%20%D0%BD%D0%B0%20%D0%B3%D0%BE%D1%81%D1%82%D0%B5%D0%B2%D1%83%D1%8E%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83%20VBox%20Bridge%20%D0%BD%D0%B5%20%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82.png)
Настройка, которую я пытаюсь реализовать, следующая. Нам нужно иметь возможность доступа к виртуальной машине VBox с нашего публичного IP. Сейчас у нас очень паршивый маршрутизатор Linksys, но я настроил его на переадресацию внешнего порта 8181 на внутренний порт 192.168.1.230:8080 (Linux). 192.168.1.230 — это моя гостевая виртуальная машина, которая в данный момент работает на хосте 192.168.1.6 (Linux).
Когда я указываю свой браузер или wget из внутренней сети 192.168.1.230:8080 на гостевую виртуальную машину, все работает отлично. Я вижу, как возвращается веб-страница или запрос wget.
Когда я указываю на public_ip:8181, это не работает. Загрузка идет вечно, а wget зависает без ответа об ошибке. Tcpdump на гостевой системе не показывает входящих пакетов. Однако, если я меняю адрес переадресации диапазона портов с гостевой системы на хостовую, это работает (я сделал быстрый сервер netcat на хостовой системе).
И хост, и гостевой iptables настроены на прием всех на всех цепочках. Поэтому мне интересно, отклоняется ли каким-либо образом тот факт, что пакеты поступают с маршрутизатора. Любой совет или помощь были бы очень признательны. Конфигурация Vagrant ниже.
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define "odlVM" do |odlVM|
odlVM.vm.box = "ubuntu/trusty64"
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--cpuexecutioncap", "50"]
v.customize ["modifyvm", :id, "--memory", "2048"]
end
odlVM.vm.hostname = "odl-vm"
odlVM.vm.network "public_network", bridge: "enp5s0f1"
odlVM.vm.provision :shell, inline: $bootstrap_ubuntu
odlVM.vm.provision :shell, inline: $install_java
odlVM.vm.provision :shell, inline: $download_odl
end
end
решение1
Итак, я понял это. Я чувствую себя немного глупым, что не подумал об этом, но виртуальная машина установила шлюз по умолчанию, чтобы он указывал на адаптер моста, а не на маршрутизатор. Как только я это изменил, я смог получить доступ к виртуальной машине из внешней сети.