Skip to content
  • Категории
  • Последние
  • Метки
  • Популярные
  • World
  • Пользователи
  • Группы
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • По умолчанию (Darkly)
  • Нет скина
Collapse

База знаний (кластер NBICS)

  1. Главная
  2. LXC
  3. Incus - восстановление пропавшего доступа к сети

Incus - восстановление пропавшего доступа к сети

Запланировано Прикреплена Закрыта Перенесена LXC
1 Сообщения 1 Posters 8 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • A Не в сети
    A Не в сети
    Admin
    написал отредактировано Admin
    #1

    Почему в контейнере интернет / apt может не работать

    В обычной системе (не в контейнере) всё обычно работает «из коробки», потому что там сеть настраивается автоматически.

    В контейнере всё немного по-другому:

    1. Контейнер получает интернет через хост-машину (компьютер, на котором запущен Incus).
    2. DNS (то, что превращает google.com в IP-адрес) тоже должен приходить от хоста.
    3. Очень часто в новых Debian/Ubuntu внутри контейнера включается штука под названием systemd-resolved — она пытается сама настроить DNS, но в контейнере у неё это получается плохо или вообще не получается.
    4. В итоге в файле /etc/resolv.conf оказывается либо пусто, либо только строка nameserver 127.0.0.53, либо вообще ничего полезного → интернет не работает, apt update зависает или очень медленно идёт.

    Это одна из самых частых проблем у новичков с контейнерами.

    Самый простой и надёжный способ исправить (для большинства случаев)

    Зайдите в контейнер и выполните эти 4 команды подряд:

    # 1. Отключаем систему, которая мешает
    systemctl disable --now systemd-resolved
    
    # 2. Удаляем старый (неправильный) файл
    rm -f /etc/resolv.conf
    
    # 3. Создаём нормальный файл с публичными DNS-серверами
    echo "nameserver 8.8.8.8"     > /etc/resolv.conf
    echo "nameserver 1.1.1.1"    >> /etc/resolv.conf
    
    # 4. (опционально) Защищаем файл от перезаписи
    chattr +i /etc/resolv.conf
    

    После этого сразу попробуйте:

    ping 8.8.8.8
    ping google.com
    apt update
    

    Должно заработать почти мгновенно.

    Почему именно эти DNS-сервера

    • 8.8.8.8 → Google Public DNS
    • 1.1.1.1 → Cloudflare DNS

    Они быстрые, надёжные, находятся по всему миру и почти никогда не падают.

    Что будет после перезагрузки контейнера?

    Если вы не поставили chattr +i, то после перезапуска контейнера файл /etc/resolv.conf может снова стать неправильным.

    Тогда просто повторите команды 1–3 заново (или сделайте маленький скрипт, который запускается при старте).

    Короткая памятка (скопируйте и сохраните)

    # Быстрый фикс DNS в контейнере Debian/Ubuntu
    systemctl disable --now systemd-resolved
    rm -f /etc/resolv.conf
    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    echo "nameserver 1.1.1.1" >> /etc/resolv.conf
    # Чтобы не слетало после перезагрузки:
    chmod 644 /etc/resolv.conf
    
    # Проверка
    ping google.com
    apt update
    

    Теперь интернет должен работать стабильно.

    1 ответ Последний ответ
    0
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    • Сначала старые
    • Сначала новые
    • По количеству голосов


    • Войти

    • Login or register to search.
    Powered by NodeBB Contributors
    • Первое сообщение
      Последнее сообщение
    0
    • Категории
    • Последние
    • Метки
    • Популярные
    • World
    • Пользователи
    • Группы