Solución:
Un poco tarde para la fiesta, pero yo estaba atrapado en el mismo obstáculo. Desde que lo resolví, pensé en compartir mis hallazgos, ya que todas las demás publicaciones sobre el tema son tan claras como el barro.
Aunque NetworkManager puede ver el dispositivo, no conoce ningún conexiones que son compatibles con el dispositivo. A diferencia de WiFi, no podemos simplemente hacer un escaneo para hacer una lista de conexiones disponibles. Necesitamos agregar uno nosotros mismos.
Antes de crear la conexión, asegúrese de que NetworkManager no impida que se administre el dispositivo. Esto ocurre de forma predeterminada en Ubuntu Server para evitar que NetworkManager se haga cargo de una conexión heredada legítima existente (consulte la explicación del desarrollador de Ubuntu aquí).
Puede verificar que el dispositivo no esté administrado cuandonmcli device
muestra unmanaged
estado para su dispositivo, el opuesto es disconnected
. En este caso, pase al siguiente párrafo.
Para que NetworkManager en Ubuntu Server maneje la conexión, copie el archivo /usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf
para /etc/NetworkManager/conf.d/10-globally-managed-devices.conf
, luego edítelo: modifique la línea que comienza con unmanaged-device
añadiendo gsm
escriba en la lista de excepciones:
unmanaged-devices=*,except:type:wifi,except:type:wwan,except:type:gsm
No olvide comprobar las actualizaciones del archivo / usr / lib original cuando actualice NetworkManager.
Creando una conexión
Para empezar, creamos una nueva conexión con el nombre que desee con el (nombre apropiado / s) edit
comando por ejemplo:
sudo nmcli connection edit type gsm con-name "My GPRS Connection"
Usar sudo
si no quiere decepcionarse cuando intente guardar la conexión.
Por supuesto, si no está utilizando GSM, puede cambiar el parámetro de tipo a un protocolo diferente compatible con NetworkManager.
Ahora ingresará al modo de edición. La mayoría de las configuraciones que necesita se completan automáticamente. Puede ver todos los ajustes actuales con el print
mando:
nmcli> print
===============================================================================
Connection profile details (My GPRS Connection)
===============================================================================
connection.id: My GPRS Connection
connection.uuid: 27b012ca-453f-482f-bc0e-c81bbab07310
connection.interface-name: --
connection.type: gsm
connection.autoconnect: yes
connection.timestamp: 0
connection.read-only: no
connection.permissions:
connection.zone: --
connection.master: --
connection.slave-type: --
connection.secondaries:
connection.gateway-ping-timeout: 0
-------------------------------------------------------------------------------
ipv4.method: auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.routes:
ipv4.ignore-auto-routes: no
ipv4.ignore-auto-dns: no
ipv4.dhcp-client-id: --
ipv4.dhcp-send-hostname: yes
ipv4.dhcp-hostname: --
ipv4.never-default: no
ipv4.may-fail: yes
-------------------------------------------------------------------------------
ipv6.method: auto
ipv6.dns:
ipv6.dns-search:
ipv6.addresses:
ipv6.routes:
ipv6.ignore-auto-routes: no
ipv6.ignore-auto-dns: no
ipv6.never-default: no
ipv6.may-fail: yes
ipv6.ip6-privacy: -1 (unknown)
ipv6.dhcp-hostname: --
-------------------------------------------------------------------------------
gsm.number: *99#
gsm.username: --
gsm.password: --
gsm.password-flags: 0 (none)
gsm.apn: --
gsm.network-id: --
gsm.network-type: -1
gsm.allowed-bands: 1 (any)
gsm.pin: --
gsm.pin-flags: 0 (none)
gsm.home-only: no
-------------------------------------------------------------------------------
Escribe help
para ver una lista completa de comandos.
Lo único que probablemente necesitará editar es el APN de su red. Esto se puede configurar con set gsm.apn <APN>
donde APN sería algo así como epc.t-mobile.com
, wholesale
o vzwinternet
para verizon.
También puede restringir la conexión a una interfaz en particular. Esto no se recomienda especialmente para conexiones en serie donde el nombre del dispositivo puede cambiar fácilmente. Sin embargo, si quisieras, podrías hacerlo set connection.interface-name ttyS4
por ejemplo.
Siempre que se esté ejecutando como root, ahora podrá guardar su conexión
nmcli> save
Eso es todo. Si necesita volver para editar la conexión, use nmcli c edit "My GPRS Connection"
o edite directamente el archivo de configuración. En los sistemas basados en Debian lo encontrará en /etc/NetworkManager/system-connections/
, en Redhat estará en /etc/sysconfig/network-scripts/
. Estos archivos parecen ser transferibles de un sistema a otro: el UUID es básicamente aleatorio.
Conectando a nuestra nueva conexión
Ahora deberías poder conectarte con
sudo nmcli device connect <interface name>
Si todo va bien, NetworkManager seleccionará “Mi conexión GPRS” automáticamente. Que no,
sudo nmcli connection up "My GPRS Connection" ifname <interface name>
Aquí es donde se cae para mí en este momento. Se agota durante la conexión, pero creo que estoy fuera del alcance de la señal. Ojalá te funcione mejor.
Por favor comente si necesita más información.
Ha pasado un año y se han actualizado muchos paquetes. Utilizando el ModemManager
servicio y mmcli
Pude inicializar mi ublox SARA-U201
. ModemManager
ya hizo la conexión llamada “mymodem”. Lo único que no se corrigió fue el connection.interface-name
, así que tuve que borrar este. +1 por la respuesta aceptada porque me ayudó de la manera correcta a lograrlo. Para resumir, estos son los comandos que tuve que ejecutar para ponerlo en funcionamiento:
sudo mmcli -i 0 --pin=<pin_number>
sudo mmcli -m 0 --simple-connect="apn=my.carrier.apn"
sudo nmcli connection edit mymodem
nmcli>set connection.interface-name
Enter 'interface-name' value: (leave blank, press enter)
save
quit
sudo nmcli connection up mymode ifname ttyACM0
Tenga en cuenta que estos ajustes se guardan excepto el PIN de la SIM. Si necesita un PIN, debe usar este comando en cada arranque.