Разрешить bootp для dnsmasq в контейнере докеров

Я пытаюсь запустить dnsmasq, который должен предоставлять DHCP + BOOTP, но dnsmask не открывает порт 67\udp, когда работает в контейнере.

С аналогичным конфигурационным файлом в хост-системе все работает правильно.

Я запускаю контейнер с флагами -net host и -privived, но мне это не помогает.

Почему dnsmasq не хочет открывать 67/udp (сервер BOOTP) в контейнер? Как я могу это исправить?


person Oleg Ilyin    schedule 02.12.2016    source источник
comment
Я обнаружил, что dnsmasq использует необработанный сокет, но как это влияет?   -  person Oleg Ilyin    schedule 02.12.2016
comment
Вы можете показать свой Dockerfile и свою команду docker run?   -  person user2915097    schedule 02.12.2016
comment
Я запускаю его так: docker run -d --привилегированный -v /sys/fs/cgroup:/sys/fs/cgroup:ro \ -v /etc/cobbler:/etc/cobbler \ -v /var/lib/tftpboot :/var/lib/tftpboot \ -v /etc/xinetd.d:/etc/xinetd.d \ -v /var/lib/cobbler:/var/lib/cobbler \ --net host \ 48b8f78ab34d   -  person Oleg Ilyin    schedule 02.12.2016
comment
Я не вижу UDP порт 67 в вашем docker run так?   -  person user2915097    schedule 02.12.2016
comment
см. stackoverflow.com/questions/27596409/   -  person user2915097    schedule 02.12.2016
comment
в команде есть параметр --net host . Он предоставит хост-сеть для контейнера. Сначала я запускаю netstat -an в контейнер, а 67-й порт не открыт   -  person Oleg Ilyin    schedule 02.12.2016
comment
наличие --net host означает, что он разделяет интерфейс хоста с контейнером, но если вы не говорите, что порт 67 опубликован, так что...   -  person user2915097    schedule 02.12.2016
comment
Давайте продолжим обсуждение в чате.   -  person user2915097    schedule 02.12.2016
comment
Я добавляю -p 67:67/udp для команды, которая его запускает, попробуйте добавить EXPOSE 67 в Dockerfile. мне это не помогло.   -  person Oleg Ilyin    schedule 02.12.2016


Ответы (1)


основная причина не в конфигурации докера. Я пропустил добавление файла конфигурации /etc/dnsmasq.d/default.conf с необходимыми параметрами. После его добавления открылся 67 порт и разоблачение начало работать

person Oleg Ilyin    schedule 02.12.2016