Докер Windows контейнер DNS кэш и брандмауэр - PullRequest
0 голосов
/ 08 января 2019

У меня есть контейнер Windows Docker и контейнер Linux на другом узле. На окнах я открыл порты в брандмауэре, упомянутом здесь: https://docs.docker.com/network/overlay/#operations-for-all-overlay-networks (8 правил - 4 для входа и 4 для выхода), но даже тогда, когда я подключаюсь к контейнеру на хосте Windows и пытаюсь пропинговать контейнер Linux, я получаю «Такой хост не известен», но после выполнения (внутри контейнера):

Clear-DnsClientCache

все начинает работать. Я также удалил весь стек и попытался отключить брандмауэр и неожиданность - теперь все работает без очистки кеша DNS. Я снова удалил стек и включил брандмауэр - снова мне нужно подключиться к контейнеру и очистить кеш, чтобы он заработал.

Похоже, что-то не так в настройках брандмауэра, но что? Я не нашел никаких других портов, которые должны быть открыты

1 Ответ

0 голосов
/ 08 января 2019

Похоже, я только что нашел ответ, но не до конца его понимаю. Я попытался открыть порты сначала 0-9999, затем 0-5000, затем 0-2500 и т. Д. И обнаружил, что мне нужно открыть порт 1888 (tcp, in), чтобы сеть наложения Docker работала немедленно (я имею в виду, чтобы иметь возможность решить Служба DNS-имен сразу) но я не нашел ничего об этом в интернете. Понятия не имею почему. Был ли я только один с этой проблемой? Может быть, это не правильное решение? Может кто-нибудь сказать мне, почему этот порт нужен и почему Clear-DnsClientCache работает, даже когда 1888 заблокирован?

Edit: Похоже, это решение было неверным. Теперь он просто работает один раз, а затем не работает, а затем еще раз работает. Я могу удалить и воссоздать весь стек, и он работает случайным образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...