В настоящее время у меня есть две виртуальные машины, настроенные следующим образом:
/-----------------------\
/-----------------\ | Ubuntu VM | /---------------\
| Workstation |------| eth1 : 192.168.0.x | | Web Server |
| 192.168.0.x | | eth0 : 169.254.71.x |------| 169.254.71.x |
\-----------------/ | | \---------------/
\-----------------------/
И у меня возникают некоторые проблемы с доступом к веб-серверу с моей локальной машины.
Ubuntu настроен через virtualbox, чтобы иметь 2 сетевых адаптера, первый из которых настроен на внутреннюю сеть, а второй - на мостовое соединение. Это дает мне два проводных соединения один раз внутри виртуальной машины, и я устанавливаю первое (соответствующее внутренней сети) как «только локальная ссылка», а второе как автоматический DHCP.
Веб-сервер работает под управлением Linux LAMP под ключ, с сетевым адаптером, настроенным на внутреннюю сеть, с сетью, имеющей то же имя, что и внутренняя сеть Ubuntu.
Я следовал этому учебнику (переключая eth0 и eth1, где это уместно), чтобы позволить мне пинговать с веб-сервера во внешний мир. Я могу пинговать как с локального компьютера, так и с любого веб-сайта в Интернете с веб-сервера.
Теперь моя проблема заключается в попытке сделать обратное выше. Я пытался безрезультатно в течение довольно долгого времени, используя ресурсы, такие как , и пару других, чтобы я мог подключиться к веб-серверу с моего локального компьютера. Когда я пытаюсь пропинговать адрес 169.254.71.x моего веб-сервера, он не подключается.
Я понимаю, что моя проблема, вероятно, связана с конфигурацией NAT на компьютере с Ubuntu или с настройкой переадресации портов на компьютере с Ubuntu, но я не знаю, как решить эти проблемы.
Таким образом, я закончил тем, что выяснил свою проблему, просто отправив ответ для кого-либо еще потенциально наличие проблемы.
команда:
iptables -t nat -A PREROUTING -d outerip -p tcp --dport 80 -j DNAT --to webip
Был тем, что в конечном счете позволило этому работать. Это правило добавляет таблицу перед маршрутизацией для разрешения соединений от внешнего IP брандмауэра, пока они - tcp пакеты, предназначенные для порта 80, чтобы быть непосредственно NAT'd через брандмауэр к IP веб-сервера.
IT должен также быть отмечен, что я изменил внутренний адаптер направления своего брандмауэра из "ссылки, локальной только" для "общего с другими компьютерами", Это присвоило этому eth адаптер адрес 10.42.0.x, вместо 169.254.x.x. Я не уверен, зафиксировало ли это функциональность, другой пользователь предложил, чтобы я вышел 169.254.x.x поле адреса.