Banda larga móvel conecta / desconecta repetidamente

4

Estou usando a banda larga móvel da Verizon com um modem 4G LTE Sierra Wireless EM7345 embutido em um laptop Thinkpad T450s. Estou configurando o modem com o NetworkManager e o ModemManager, usando uma das configurações padrão (APN vzwinternet). A máquina está rodando o Arch Linux atualizado, com a versão 4.1.4 do kernel.

O modem geralmente funciona bem quando eu inicializo a minha máquina pela primeira vez. No entanto, após eu ter suspendido a máquina para a RAM pela primeira vez, quando tento usar o modem, ele se conecta e desconecta constantemente, mudando constantemente o endereço IP e tornando impossível usar ssh . A única solução que encontrei é para reiniciar a máquina. Obviamente, gostaria de corrigir isso sem reiniciar.

Se for relevante, tenho tlp ativado, mas desativá-lo com tlp false não corrige o problema. Além disso, defini USB_BLACKLIST_WWAN=1 em /etc/default/tlp , apenas no caso. Nenhuma dessas mudanças parece resolver o problema.

Por que vale a pena, a razão para a desconexão parece ser sem portadora. Eu recebo muito disso no meu log, mas o modem geralmente é usável brevemente entre as desconexões:

Aug 18 15:57:01 laptop NetworkManager[630]: <info>  (cdc-wdm0): Activation: successful, device activ
ated.
Aug 18 15:57:01 laptop nm-dispatcher[9896]: Dispatching action 'up' for wwan0
Aug 18 15:57:04 laptop ModemManager[613]: <info>  Modem /org/freedesktop/ModemManager1/Modem/2: stat
e changed (connected -> registered)
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  (cdc-wdm0): modem state changed, 'connected' -->
 'registered' (reason: user-requested)
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  (cdc-wdm0): device state change: activated -> fa
iled (reason 'modem-no-carrier') [100 120 25]
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  NetworkManager state is now CONNECTED_LOCAL
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  NetworkManager state is now DISCONNECTED
Aug 18 15:57:04 laptop NetworkManager[630]: <warn>  (cdc-wdm0): Activation: failed for connection 'V
erizon'
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  (cdc-wdm0): device state change: failed -> disco
nnected (reason 'none') [120 30 0]
Aug 18 15:57:04 laptop NetworkManager[630]: <info>  Writing DNS information to /usr/bin/resolvconf
Aug 18 15:57:04 laptop nm-dispatcher[9896]: Dispatching action 'down' for wwan0
    
por user3188445 18.08.2015 / 21:04

1 resposta

3

Ok, finalmente, depois de anos de imensa frustração, resolvi o problema, que é que o NetworkManager está realmente cheio de bugs sobre modems. Na verdade, recentemente ele ficou pior e começou a ignorar quando meu modem de banda larga está funcionando. No entanto, se você acabou de configurar o modem manualmente, ele funciona muito bem, mesmo depois de um sono. (Você precisa se reconectar quando acordar do sono, mas ele se reconecta rapidamente e funciona de maneira estável).

As instruções a seguir supõem que você esteja executando como root. O primeiro passo é tirar o NetworkManager do caminho. Para fazer isso, edite o arquivo /etc/NetworkManager/NetworkManager.conf e adicione o seguinte:

[keyfile]
unmanaged-devices=interface-name:cdc-wdm0

Observe que, se você quiser ignorar vários dispositivos, poderá separá-los com um ponto-e-vírgula. Em seguida, você deve configurar o APN (e o mbim-proxy) como segue. Veja /usr/share/mobile-broadband-provider-info/serviceproviders.xml (ou repositório git online ) para encontrar o APN apropriado para sua rede. No caso da verizon wireless, isso é vzwinternet . Depois disso, crie um arquivo /etc/mbim-network.conf com o seguinte:

APN=vzwinternet
PROXY=yes

Agora execute o seguinte:

rfkill unblock wwan
mbim-network /dev/cdc-wdm0 start
ip link set wwan0 up
mbimcli -p -d /dev/cdc-wdm0 --query-ip-configuration

Se o comando mbim-network for bem-sucedido, o comando mbimcli produzirá subsequentemente a saída da seguinte forma:

[/dev/cdc-wdm0] IPv4 configuration available: 'address, gateway, dns'
     IP [0]: '100.125.243.196/24'
    Gateway: '100.125.243.1'
    DNS [0]: '198.224.173.135'
    DNS [1]: '198.224.174.135'
    DNS [2]: '198.224.173.135'
    DNS [3]: '198.224.174.135'

[/dev/cdc-wdm0] IPv6 configuration available: 'address, gateway, dns'
     IP [0]: 'fe80::69:1c7d:5901/120'
    Gateway: 'fe80::69:1c7d:5902'
    DNS [0]: '2001:4888:68:ff00:608:d::'
    DNS [1]: '2001:4888:61:ff00:604:d::'

Agora, basta configurar manualmente esses valores em sua interface de rede e isso funcionará. Por exemplo:

ip addr add dev wwan0 100.125.243.196/24
ip route add default via 100.125.243.1
echo 'nameserver 198.224.173.135' > /etc/resolv.conf

Não tente executar o DHCP (não funcionará). Não tente executar ping no gateway (100.125.243.1), pois isso também não funcionará. O fato de que o gateway não responde a nenhum pacote de rede (e talvez nem exista) me fez pensar que meu modem não estava funcionando, até que finalmente tentei adicionar a rota padrão e desativar minha outra conexão de rede.

    
por 10.07.2017 / 11:48