Сопоставление физического модемного устройства с беспроводным интерфейсом WWAN в Ubuntu

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

У меня есть два разных модема от одного производителя: Quectel EC25 и Quectel RM500Q. Проблема возникает, когда ПК, в который они вставлены, запускается. Иногда Quectel EC25 получает wwan0, что означает использование ttyUSB0/1/2/3, а Quectel RM500Q — wwan1, что означает использование ttyUSB4/5/6/7, а в другие разы всё наоборот: Quectel EC25 получает wwan1 и ttyUSB4/5/6/7, а Quectel RM500Q — wwan0 и ttyUSB0/1/2/3. Поскольку порядок запуска отличается, невозможно настроить каждый модем, так как в одном модеме SIM-карта от одного оператора мобильной связи, а в другом — от другого.

Я попытался сопоставить беспроводной интерфейс и модем с помощью правила udev (/etc/udev/rules.d/70-persistent-net.rules):

SUBSYSTEM=="net", ACTION=="add", ATTRS{idVendor}=="2c7c", ATTRS{idProduct}=="0800", NAME="wwan0" 
SUBSYSTEM=="net", ACTION=="add", ATTRS{idVendor}=="2c7c", ATTRS{idProduct}=="0125", NAME="wwan1"

Но это не сработало.

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

Для решения проблемы с совпадением физических модемов Quectel EC25 и Quectel RM500Q с беспроводными интерфейсами wwan0 и wwan1 в Ubuntu, вы можете использовать правила udev для назначения стабильных имен сетевым интерфейсам. Давайте разберемся, как это сделать корректно.

  1. Идентификация устройств: Первым делом вам необходимо удостовериться, что у вас есть правильные idVendor и idProduct для ваших модемов. Вы можете выполнить следующую команду, чтобы узнать информацию об устройствах:

    lsusb

    Это даст вам список всех подключенных USB-устройств. Убедитесь, что вы записали правильные значения idVendor и idProduct.

  2. Создание правил udev: Теперь вы можете создать или отредактировать файл /etc/udev/rules.d/70-persistent-net.rules (если его нет, создайте новый файл):

    sudo nano /etc/udev/rules.d/70-persistent-net.rules

    Добавьте в файл следующие строки, заменив значения idVendor и idProduct на соответствующие вашему оборудованию:

    SUBSYSTEM=="net", ACTION=="add", ATTR{idVendor}=="2c7c", ATTR{idProduct}=="0800", NAME="wwan0"
    SUBSYSTEM=="net", ACTION=="add", ATTR{idVendor}=="2c7c", ATTR{idProduct}=="0125", NAME="wwan1"
  3. Загрузка правил udev: После внесения изменений необходимо перезагрузить udev или перезагрузить компьютер (что проще). Для перезагрузки udev выполните:

    sudo udevadm control --reload-rules
    sudo udevadm trigger
  4. Проверка: После перезагрузки системы или udev, выполните команду ip a или ifconfig для проверки того, какие интерфейсы были назначены вашим модемам. Убедитесь, что EC25 всегда отображается как wwan0, а RM500Q как wwan1.

  5. Настройка сетевых интерфейсов: Если ваши модемы требуют определенных настроек (например, настройки APN и т. д.), вам придется использовать NetworkManager или другие инструменты для настройки соединений на основе уже установленных имен интерфейсов.

Дополнительные советы:

  • Если у вас все еще возникают проблемы, проверьте журналы системы для получения информации об ошибках, связанных с udev, с помощью команды dmesg или journalctl -xe.
  • Отключите и снова подключите модемы после изменения правил, чтобы убедиться, что новые правила применяются корректно.

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

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

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