Ubuntu 22.04 Как настроить YAML-файл netplan для использования двух сетевых карт с двумя статическими IP-адресами?

Вопрос или проблема

Наш IT-специалист настроил сеть для моего сервера с использованием сетевой карты (enp1sp) для работы через https в интернете и подключения двух NAS (чьи IP – 147.100.157.226 и 147.100.157.227), и отдельной сетевой карты (enp69s0) для SSH в нашей внутренней сети. Он не работает с Linux, а я ничего не знаю о сетях.

Я понял, что мне нужно указать IP для двух карт (которые имеют разные шлюзы) с использованием netplan.

Мы почти настроили всё, но проблема в том, что сервер не может подключиться к внешнему миру, будь то два NAS или такие вещи, как apt update и так далее…

Вот наша текущая конфигурация (/etc/netplan/99_config.yaml):

network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
# PROD карта/IP (только https)
      dhcp4: no
      addresses:
        - 147.100.157.194/29
      routes:
        - to: 0.0.0.0/0
          via: 147.100.157.193
          table: 100
        - to: 147.100.157.225/29
          via: 147.100.157.193
          table: 100
      routing-policy:
        - from: 147.100.157.194/29
          table: 100
      nameservers:
          search: [inra.local]
          addresses: [147.100.157.242, 147.100.166.31]
    enp69s0:
# MGM карта/IP (только SSH через VPN)
      dhcp4: no
      addresses:
        - 147.100.157.202/29
      routes:
        - to: 0.0.0.0/0
          via: 147.100.157.201
          table: 200
      routing-policy:
        - from: 147.100.157.202/29
          table: 200
      nameservers:
          search: [inra.local]
          addresses: [147.100.157.242, 147.100.166.31]

Когда я пытаюсь подключить NAS или когда я пытаюсь выполнить curl/ping внешнего мира, я получаю ошибку “Network is unreachable”.
В чем наша ошибка?

Ответ или решение

Настройка файла Netplan в Ubuntu 22.04 для использования двух сетевых карт с двумя статическими IP-адресами может быть сложной задачей, особенно если у вас нет опыта работы с Linux и сетями. В вашей текущей конфигурации кажется, что проблема может быть связана с неправильной маршрутизацией или разрешением DNS. Давайте шаг за шагом разберем, как правильно настроить файл /etc/netplan/99_config.yaml, чтобы обе сетевые карты работали корректно, и вы могли подключаться к внешним ресурсам.

Анализ текущей конфигурации

  1. Сетевая карта enp1s0: настроена для работы в интернете по HTTPS. Однако, из текущей конфигурации видно, что сеть не может выйти в интернет. Причиной может быть неправильно настроенный маршрут по умолчанию.

  2. Сетевая карта enp69s0: используется для подключения через SSH во внутренней сети через VPN.

Рекомендации по исправлению

  1. Настройка маршрутов:

    • Убедитесь, что правильный шлюз указан для обоих интерфейсов и что только один из сетевых интерфейсов имеет маршрут по умолчанию. Обычно, для выхода в интернет, один из интерфейсов должен иметь маршрут 0.0.0.0/0 с соответствующим шлюзом.
  2. Снимите ненужные маршруты:

    • Например, в настройке enp1s0 только один маршрут по умолчанию (0.0.0.0/0) и дополнительный маршрут к сети NAS, если она действительно используется. Аналогично для enp69s0.
  3. Обратите внимание на DNS:

    • Вероятно, разрешение имен также не будет работать из-за неправильной конфигурации DNS-серверов. Убедитесь, что DNS-серверы доступны и корректны.
  4. Проверьте табличные настройки:

    • В конфигурации маршрутизации возможно перемещать маршруты между разными таблицами, однако это может вызвать конфликты. Обычно это делают для продвинутой настройки, но для многих ситуаций достаточно одной таблицы.

Исправленная конфигурация

network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
      dhcp4: no
      addresses:
        - 147.100.157.194/29
      gateway4: 147.100.157.193
      nameservers:
        search: [inra.local]
        addresses: [147.100.157.242, 147.100.166.31]
    enp69s0:
      dhcp4: no
      addresses:
        - 147.100.157.202/29
      # В данном случае предполагается, что для этого интерфейса не нужен маршрут по умолчанию
      # Если необходим доступ в интернет, возможно, понадобится отдельная настройка VPN
      routes:
        - to: 147.100.157.224/29
          via: 147.100.157.201

Последние шаги

  1. Примените изменения:

    sudo netplan apply
  2. Проверьте подключение:

    • Используйте ping, curl и команды для монтирования NAS, чтобы убедиться, что сервер может соединяться с внешними адресами и локальными ресурсами.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...