Здравствуйте. Прошу подсказать знающих как правильно пробросить порт на виртуальную машину (контейнер)?
дано: сервер ubuntu, lxc. IP сервера допустим 83.81.83.81. Создаю контейнер, и ему присваивается 10.0.3.160.
Что-бы мне попасть на 22 порт контейнера я использую iptables, пробрасываю порт
iptables -t nat -A PREROUTING -d 83.81.83.81 -p tcp -m tcp --dport 7635 -j DNAT --to-destination 10.0.3.160:22
и казалось бы все хорошо, все работает. Подключаясь к 83.81.83.81:7635 я подключаюсь на 10.0.3.160:22
Но хостер так не считает. Проблемы начинаются когда что-то внутри контейнера начинает обращаться на внешний интернет ресурс. Например в контейнере стоит скрипт, который раз в 10 минут запрашивает погоду на сервере погоды.
Тут уже получается не входящее соединение, а исходящее. Хостер обнаруживает мой локальный 10.0.3.160 и ругается, говорит что все запросы должны быть строго с того ip что он выдал (в данном случае 83.81.83.81)
вопрос, какую запись нужно сделать в iptables, чтобы и порт пробросился, и в случае обращение к какому то ресурсу было из контейнера 10.0.3.160, то оно подменялось на 83.81.83.81? сломал всю голову, весь интернет...