Перенаправить трафик на порт в Vagrant Box / виртуальной машине (Centos / 7) на порт на локальной машине - PullRequest
0 голосов
/ 23 октября 2018

Ситуация:

У меня есть бродячий ящик (работает centos / 7) , который создает экосистему сервисов с использованием ansible (docker_container).В целях разработки я хотел бы перенаправить трафик с localhost:8444 в бродячем окне на приложение, работающее на моей локальной машине (с использованием IntelliJ)

на локальной машинедоступно из vagrant box через IP-адрес по умолчанию 10.0.2.2

На моем локальном компьютере приложение работает на localhost:9081 и может также взаимодействовать со всеми службами vagrant box через localhost, потому чтовсе порты перенаправляются на локальный компьютер с помощью.

config.vm.network "forwarded_port", guest: i, host: i, host_ip: "127.0.0.1"

в Vagrantfile

Из окна vagrant приложение должно быть доступно через 10.0.2.2:9081

Примечание: контейнеры Docker используют host сетевой режим, что означает, что они используют локальную сеть виртуальной машины

Я хотел бы:

Перенаправить трафик, идущий наlocalhost:8444 (в поле Vagrant) до 10.0.2.2:8091 на моем хост-компьютере

Я попытался:

iptables (в окне Vagrant):

sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8444 -j DNAT --to-destination 10.0.2.2:9081
sudo iptables -t nat -A POSTROUTING -j MASQUERADE

Однако, когда я пытаюсь(внутри бродячей коробки)

curl localhost:8444
curl: (7) Failed connect to 127.0.0.1:8444; Connection refused

Обратите внимание, что

curl 10.0.2.2:9081

Работает

...