Настройка сети в контроллере Wiren Board

From Wiren Board
This is the approved revision of this page, as well as being the most recent.
Интерфейс настройки сети в релизе wb-2304

Введение

Настройка сети в контроллерах Wiren Board

Инструкции на этой странице будут работать в релизах wb-2304 и новее. Для старых версий ПО используйте инструкцию Настройка сети в релизах wb-2207 и старее.

Предполагаем, что вы имеете представление о строении сетей, поэтому не будем рассказывать про IP-адреса, DNS и DHCP.

Здесь описана настройка Ethernet-соединения, Wi-Fi и CAN-шины, а инструкции по настройке модемов вы найдёте по ссылкам: Настройка 4G-модема и Настройка 2G/3G/NB-IOT модемов.

Нюансы перехода на релиз wb-2304

Cетевые настройки, описанные в файле /etc/network/interfaces, помечены как «Устаревшие»

Этот раздел только для пользователей, мигрирующих на релиз wb-2304 с контроллеров, купленных до второй половины апреля 2023 года. При обновлении со старых релизов все сетевые настройки, описанные в файле /etc/network/interfaces, останутся без изменений. В веб-интерфейсе такие настройки будут отмечены оранжевым.

Вы можете продолжать использовать старые настройки, или передать управление сетью Network Manager. Если ваша конфигурация сети далека от типовой — не изменяйте настройки без физического доступа к контроллеру.

Чтобы передать соединение под управление Network Manager:

  1. Добавьте новое соединение в веб-интерфейсе.
  2. Убедитесь, что стоит галочка «Подключаться автоматически» и сохраните его.
  3. Удалите в веб-интерфейсе старое соединение и подождите 1-2 минуты.

Настройка сети

Перейдите в раздел Настройки → Конфигурационные файлы → Сетевые соединения. Менеджер сети каждые 5 секунд проверяет связь с интернетом и, если интернет недоступен — перенаправляет трафик через соединение с доступом в интернет. Все соединения, кроме модема останутся доступными для других задач.

На вкладке Приоритеты соединений вы можете указать драйверу, в каком порядке проверять соединения на наличие интернета.

Наличие соединения проверяется запросом к http://network-test.debian.org/nm. Если в ответ не приходит страница с текстом NetworkManager is online, считается что доступа в Интернет нет. При желании, вы можете задать другой http URL адрес и ответ для проверки соединения. Также можно использовать https URL - с правильно настроенным сертификатом.

При наличии нескольких Wi-Fi соединений обязательно установите для них в поле Только для интерфейса разные интерфейсы wlan. Это исключит конфликты между Wi-Fi соединениями. Если интерфейс не задан, Network Manager будет случайно выбирать один из интерфейсов для работы, что может привести к конфликтам соединений.

Выбор диапазона Wi-Fi 2.4 или 5 ГГц

Переключение диапазона в разделе Конфигурационные файлы → Сетевые соединения в веб-интерфейсе контроллера Wiren Board

Функция доступна в контроллерах с Wi-Fi чипом Realtek RTL8733BU: начиная с ревизии 7.4.3, выпускаемой с декабря 2023 года. Настройка диапазона в веб-интерфейсе появилась начиная с релиза wb-2401.

По умолчанию контроллер настроен на 2.4 ГГц. При необходимости можно переключить диапазон на 5 ГГц. Это можно сделать в разделе Конфигурационные файлы → Сетевые соединения.

Важно учитывать, что одновременно может быть использован только один диапазон. Т.е. нельзя одновременно подключиться к точке доступа с диапазоном 2.4 ГГц и создать точку доступа в диапазоне 5 ГГц.

Работа с Network Manager через консоль

Список соединений полученный утилитой nmcli
Интерфейс утилиты nmtui

Настройка сетевых соединений через консоль может понадобиться если нет доступа к веб-интерфейсу контроллера, а также в скриптах и своём ПО. Для работы с Network Manager через консоль удобнее всего использовать предустановленную утилиту nmcli.

nmcli — консольная утилита позволяющая работать с Network Manager через SSH соединение. Ее аналог — утилита nmtui, имеющая встроенный текстовый графический интерфейс.

Далее описаны самые распространенные сценарии использования утилиты nmcli, полный набор команд можно найти в официальной справке.

Создание нового соединения

Рассмотрим пример создания нового соединения типа ethernet с именем wb-eth2:

  1. Создайте новое соединение:
    nmcli connection add type ethernet ifname wb-eth2
    
  2. Выведите список существующих соединений и проверьте, что новое соединение создано, ему присвоен UUID и задан тип ethernet:
    nmcli connection show
    
  3. Поднимите новое соединение:
    nmcli connection up ethernet-wb-eth2
    

Сбросить соединение можно командой nmcli connection down ethernet-wb-eth2.

Редактирование параметров соединений

С помощью nmcli можно редактировать параметры существующих соединений.

Например, установить статический IPv4 адрес для созданного выше соединения можно командами:

nmcli connection modify ethernet-wb-eth2 ipv4.address 192.168.4.26/24
nmcli connection modify ethernet-wb-eth2 ipv4.method manual

Первая устанавливает ip-адрес, а вторая переключает метод установки ip-адреса на ручной.

Обратно установить DHCP вместо manaul можно командами:

nmcli connection modify ethernet-wb-eth2 ipv4.method auto

Работа с устройствами

Список устройств
Информация об устройстве

Утилита nmcli позволяет работать с устройствами, используя для этого секцию device.

Проверить статусы устройств:

nmcli device status

Вывести информацию об устройстве:

nmcli device show dbg0

Установка пароля точки доступа Wi-Fi

Установить или сменить пароль для точки доступа Wi-Fi с помощью nmcli можно одной командой:

nmcli con modify wb-ap wifi-sec.key-mgmt wpa-psk wifi-sec.psk 1234567890

где 1234567890 — новый пароль не менее 7 символов, wb-ap — имя точки доступа.

После этого перезапустите соединение командами:

nmcli connection down wb-ap
nmcli connection up wb-ap

Настройка приоритетов соединений

Файл /etc/wb-connection-manager.conf

Для настройки приоритетов соединений через консоль сделайте следующее:

  1. Откройте файл /etc/wb-connection-manager.conf в текстовом редакторе, например, nano:
    nano /etc/wb-connection-manager.conf
    
  2. Перенесите имя соединения в нужный раздел:
    high — высокий приоритет;
    medium — средний;
    low — низкий.
  3. Нажмите Ctrl+S для сохранения изменений, Ctrl+X — для выхода из редактора.

Настройка сетевого моста (Bridge)

Внимание: настройка моста требует изменения параметров текущих интерфейсов. Если вы настраиваете мост удаленно через интерфейс, который собираетесь включить в мост (например, подключены по Ethernet и добавляете eth0 в мост), соединение разорвется.
Настоятельно рекомендуем выполнять настройку, подключившись через резервный канал связи: Debug Console (USB) или Wi-Fi (если настраиваете Ethernet).

Сетевой мост (Bridge) позволяет объединить несколько интерфейсов в одну логическую сеть. Устройства, подключенные к контроллеру через мост, будут находиться в одной подсети с внешней сетью и получать IP-адреса от главного роутера.

В текущей версии ПО настройка моста из веб-интерфейса не поддерживается, поэтому все действия выполняются через консоль (SSH) с помощью утилиты nmcli.

Ограничения

  • Wi-Fi Клиент: в мост нельзя добавить Wi-Fi интерфейс, работающий в режиме клиента. Это ограничение стандарта Wi-Fi.
  • Wi-Fi Точка доступа: Wi-Fi в режиме Access Point (AP) можно объединять в мост с Ethernet.

Шаг 1: Создание интерфейса моста

Сначала создаем логический интерфейс моста br0 и настраиваем его IP-адрес.

  1. Создайте интерфейс моста.
    nmcli connection add type bridge ifname br0 con-name wb-bridge
    
  2. Настройте IP-адрес контроллера.
    Контроллер будет доступен по этому адресу. Рекомендуем задать статический IP из вашей подсети.
    Пример для сети 192.168.1.x:
    nmcli connection modify wb-bridge ipv4.addresses 192.168.1.155/24 ipv4.method manual
    
    Или включите получение адреса по DHCP (от роутера):
    nmcli connection modify wb-bridge ipv4.method auto
    
  3. Поднимите интерфейс моста:
    nmcli connection up wb-bridge
    

Шаг 2: Добавление Ethernet (проводной сети)

Добавим порт eth0 в мост. После этого контроллер станет прозрачным для проводных устройств.

  1. Добавьте порт в мост.
    Создаем профиль типа "slave".
    nmcli connection add type ethernet ifname eth0 master br0 con-name bridge-slave-eth0
    
  2. Активируйте соединение.
    Важно: эту команду нужно выполнить обязательно. Она переключает порт со старого профиля на профиль моста.
    nmcli connection up bridge-slave-eth0
    

Шаг 3: Настройка прозрачной точки доступа Wi-Fi

В этом режиме контроллер раздает Wi-Fi, но IP-адреса клиентам (телефонам, ноутбукам) выдает ваш главный роутер. Клиенты оказываются в одной сети с проводными устройствами.

Если у вас уже настроена обычная точка доступа (например, wb-ap), её нужно отключить командой: nmcli con down wb-ap:

  1. Создайте новую точку доступа внутри моста.
    Замените My_Network_SSID на имя вашей сети.
    nmcli con add type wifi ifname wlan0 mode ap con-name bridge-slave-wifi ssid "My_Network_SSID" master br0
    
  2. Настройте безопасность (пароль).
    Замените MyPassword на ваш пароль.
    nmcli con modify bridge-slave-wifi wifi-sec.key-mgmt wpa-psk wifi-sec.psk "MyPassword"
    
  3. Запустите точку доступа.
    nmcli connection up bridge-slave-wifi
    

Проверка

Выполните команду nmcli connection show. Правильный вывод должен выглядеть так:

  • wb-bridge — активен (зеленый), устройство br0.
  • bridge-slave-eth0 — активен (зеленый), устройство eth0.
  • bridge-slave-wifi — активен (зеленый), устройство wlan0.
  • Старые соединения (wb-eth0, wb-ap) — неактивны (серые) или отсутствуют в списке активных устройств.

Удаление соединений

На примере соединения с именем bridge-slave-eth0.

  1. Отключите соединение:
    nmcli connection down bridge-slave-eth0
    
  2. Удалите соединение:
    nmcli connection delete bridge-slave-eth0
    

Полезные ссылки

Пример перенаправления портов с интерфейса к устройству на другом интерфейсе https://support.wirenboard.com/t/network-manager-i-iptables/18767/4