Контейнер Docker macvlan не имеет доступа к Интернету при запуске Tailscale на хосте

Мне нужен контейнер Docker, который будет виден в хост-сети со своим собственным IP-адресом, Mac и именем хоста, объявленным через avahi. (Я хочу использовать Wire-Pod без изменения имен хостов и прочего на моем хост-компьютере)

Для этого я создал сеть Docker, например:

      networks:
    wirepod_net:
        driver: macvlan
        driver_opts:
            parent: "enp4s0"
        ipam:
            config:
                - subnet: "192.168.10.0/24"
                  gateway: "192.168.10.1"

и дал контейнеру соответствующий IP-адрес и Mac-адрес

              mac_address: "9C:EE:7D:1A:0F:E8"
        networks:
            wirepod_net:
                ipv4_address: "192.168.10.11"

Это работает совершенно нормально и именно так, как я хотел.

НО я недавно установил Tailscale на свой хост, и пока Tailscale работает, контейнер НЕ имеет доступа к Интернету.

Я некоторое время искал это в Google, но каждая проблема, близкая к моей, требует только включения связи между хостом и контейнером. И я попробовал это, потому что подумал, что, возможно, это все-таки та же проблема. Но, к сожалению, это не помогло моей проблеме «контейнер не может получить доступ к Интернету». (Или я сделал это неправильно; я не могу этого исключать...)

Эта проблема немного выше моего понимания, поэтому я ценю каждую помощь, которую получаю.

Я внимательно прочитал и проследил за этими сообщениями:

1 ответ

Итак, я понял, что проблема не в интернет-соединении в целом.
Проблема заключалась в разрешении DNS.

Я исправил это, явно установив DNS-сервер в моем контейнере Docker с помощью

      dns:
  - 1.1.1.1
  - 1.0.0.1

раздел об уровне обслуживания.

Это решило проблемы, которые у меня были.

Другие вопросы по тегам