Добрый вечер, ребята. Недавно я протестировал Proxmox 8 на паре запасных машин перед тем, как обновить свои рабочие серверы, и, возможно, наткнулся на проблему, но пока не могу точно понять, в чём дело.
Проблема: когда хост подключён к сети Tailscale, с DNS или без него, LXC-контейнеры, созданные или запущенные после подключения, не могут разрешать DNS. При этом изменения DNS-адресов через веб-интерфейс Proxmox или файл resolv.conf в LXC-клиенте либо не распознаются, либо не работают.
Воспроизведение: подключил 3 узла Proxmox 8 к tailnet, как к официальному Tailscale-серверу управления, так и к собственной облачной Headscale-инстанции. Контейнеры Debian 11, 12 и Alpine Linux не разрешают DNS, если их запускают после подключения хоста к tailnet. Единственное решение — отключить соединение при старте и перезагрузить систему.
При возникновении проблемы хост всё равно разрешает DNS, и изменения в resolv.conf и веб-интерфейсе хоста принимаются и корректно сохраняются.
Дополнительные попытки: следовал инструкциям по Tailscale для LXC, все контейнеры, которые должны напрямую использовать Tailscale, имеют корректный доступ к cgroup и tun. Подключение контейнера к tailnet при отключённом хосте работает нормально, но стоит подключить хост — DNS сразу ломается.
У меня такая схема настроена на рабочем кластере с Proxmox 7, там хосты и контейнеры подключены отдельно как узлы в tailnet, и проблем с DNS нет.
Не уверен, что ещё можно сделать, но надеюсь, что это привлечёт внимание к возможной проблеме, потому что рисковать с ней при обновлении основных серверов я не хочу.
Спасибо!
Проблема: когда хост подключён к сети Tailscale, с DNS или без него, LXC-контейнеры, созданные или запущенные после подключения, не могут разрешать DNS. При этом изменения DNS-адресов через веб-интерфейс Proxmox или файл resolv.conf в LXC-клиенте либо не распознаются, либо не работают.
Воспроизведение: подключил 3 узла Proxmox 8 к tailnet, как к официальному Tailscale-серверу управления, так и к собственной облачной Headscale-инстанции. Контейнеры Debian 11, 12 и Alpine Linux не разрешают DNS, если их запускают после подключения хоста к tailnet. Единственное решение — отключить соединение при старте и перезагрузить систему.
При возникновении проблемы хост всё равно разрешает DNS, и изменения в resolv.conf и веб-интерфейсе хоста принимаются и корректно сохраняются.
Дополнительные попытки: следовал инструкциям по Tailscale для LXC, все контейнеры, которые должны напрямую использовать Tailscale, имеют корректный доступ к cgroup и tun. Подключение контейнера к tailnet при отключённом хосте работает нормально, но стоит подключить хост — DNS сразу ломается.
У меня такая схема настроена на рабочем кластере с Proxmox 7, там хосты и контейнеры подключены отдельно как узлы в tailnet, и проблем с DNS нет.
Не уверен, что ещё можно сделать, но надеюсь, что это привлечёт внимание к возможной проблеме, потому что рисковать с ней при обновлении основных серверов я не хочу.
Спасибо!
