Настройка устройства PPP с помощью NetworkManager nmcli

У меня есть ppp а также network-manager пакеты установлены на моем BeagleBone на основе Debian, и я пытаюсь надежно подключить его к модему GPRS через последовательный порт.

Я использую Adafruit FONA, который работает как брелок с рекомендуемым сценарием конфигурации, используя pon fona а также poff fona, Это создает ppp0 устройство после подключения к сети.

Теперь я хочу, чтобы NetworkManager мог подключаться и отключать мой FONA без необходимости вручную включать устройство с pon fona (который может потерпеть неудачу).

Я просто использую терминал для NetworkManager с nmcli, Прежде чем спросить, я не добавил ppp0 в /etc/network/interfaces,

Первоначально я использовал ConnMan, но поскольку документация была настолько плохой, я отказался от попыток заставить его работать.

Это то, что у меня есть в тот момент, когда я бегу nmcli device status:

DEVICE  TYPE      STATE        CONNECTION 
wlan0   wifi      connected    MyHomeWiFi 
eth0    ethernet  unavailable  --         
usb0    ethernet  unmanaged    --         
lo      loopback  unmanaged    -- 

Очевидно, нет ppp0 здесь. Как я уже говорил, если я вручную запускаю pppd с pon fona тогда оно появится. Тип неизвестен, хотя, и я ожидал что-то вроде

DEVICE  TYPE      STATE        CONNECTION 
ppp0    unknown   connected    ppp0       
wlan0   wifi      connected    MyHomeWiFi
eth0    ethernet  unavailable  --         
usb0    ethernet  unmanaged    --         
lo      loopback  unmanaged    -- 

Как заставить его играть красиво?

1 ответ

Решение

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

Часть 1: Получение ModemManager для обнаружения последовательных устройств

По умолчанию и по уважительной причине ModemManager не проверяет каждое последовательное устройство в вашей системе. Это отличается от его поведения по умолчанию с USB-устройствами, которое должно сканировать и применять фильтры производителей и устройств, пока не найдет совпадение.

Чтобы заставить ModemManager найти последовательные модемы, необходимо добавить флаг (ID_MM_PLATFORM_DRIVER_PROBE) к необходимому udev узел, чтобы разрешить сканирование на этом конкретном устройстве. Смотрите этот пост для подробных инструкций.

Часть 2. Настройка NetworkManager для использования устройства

NetworkManager покажет устройство в nmcli device status как disconnected если ModemManager поступил правильно (если нет, проверьте /var/log/messages). Теперь необходимо создать соединение для подключения устройства. Смотрите мой ответ на другой вопрос о том, как это сделать.

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