#linux #сеть #docker
У меня есть два сетевых интерфейса: eth0 - локальная сеть, tun0 - через него я хожу в интернет(поднимается и тушится с помощью самописного скрипта). На этой же машине стоит docker, у него есть свое собственное окружение для контейнеров. Из этого окружения наружу торчит интерфейс docker0, все контейнеры связываются с внешним миром через него. Тут возникает проблема: при поднятом tun0(при этом он становится дефолтным) контейнеры не хотят через него связываться. Как я понял надо как то перенаправить docker0 на tun0? Как это сделать?
Ответы
Ответ 1
Отвечаю на собственный вопрос: Проблема заключалась в том, что у меня не был указан dns сервер моей сети и по умолчанию был отключен ip_forwarding. Для начала его нужно включить, раскомметнировав строчку: net.ipv4.ip_forward=1 в файле /etc/sysctl.conf и перезагрузив машину. Далее в файле /etc/defaut/docker редактируем строку: DOCKER_OPTS="-dns <ваш_адрес_dns>" После редактирования перезапустите докер.
Комментариев нет:
Отправить комментарий