Impedir que o Network Manager controle interfaces RNDIS

2

Existe uma maneira de impedir que o gerenciador de rede se conecte automaticamente a novos dispositivos RNDIS?

Os dispositivos Android RNDIS não podem ser configurados usando o Network Manager porque eles se conectam com um endereço MAC aleatório. Isso significa que, da próxima vez que você conectar o dispositivo, ele terá um nome de interface e MAC diferente e não estará mais associado a nenhum perfil que você configurou anteriormente no Network Manager.

Então, em vez disso, eu uso o udev, assim

ACTION=="move", SUBSYSTEM=="net", ATTRS{serial}=="xyz", RUN += "/etc/udev/scripts/myudevscript %k"

O script lê

/sbin/ifconfig $1 down >> /var/log/udevtest 2>&1
/sbin/ip link set $1 address 02:11:22:33:44:55 >> /var/log/udevtest 2>&1
/sbin/ifconfig $1 192.168.42.10/24 >> /var/log/udevtest 2>&1
echo nameserver 127.0.0.1 > /etc/resolv.conf # I run bind locally
systemctl stop openvpn@direct # Stop the VPN that doesn't use my phone
systemctl start openvpn@clientvpn2 # Start the one that does

Tudo funciona, mas apenas quando o NM está desativado. Se o NM estiver ativado, geralmente recebemos um erro de dispositivo ocupado, já que duas coisas estão tentando configurá-lo de uma só vez. Eu gostaria, se possível, não ter que desabilitar o NM como eu o uso para outras conexões.

Como você pode ver, meu script força o endereço MAC, mas, infelizmente, o NM já começou a funcionar, baseado no MAC aleatório.

Se houver uma solução que, como efeito colateral, impede a conexão automática a redes Wi-Fi inéditas, isso seria um bônus!

    
por Rodney 20.07.2017 / 13:59

0 respostas