Objetivo
Permita que a Ethernet tenha precedência sobre a conexão sem fio quando o cabo Ethernet estiver conectado
Método
Depois de ter pesquisado e pesquisado bastante no Google, cheguei a um ponto em que acredito que o que devo fazer é algo do tipo:
nmcli connection modify [id-of-ethernet-interface] ipv4.route-metric 200
nmcli connection modify [id-of-ethernet-interface] ipv6.route-metric 200
onde 200 é um valor menor que a métrica sem fio, para que a Ethernet tenha precedência sobre a sem fio.
Resultados
O que me deixa perplexo são os relatórios que recebo route -n
depois de executar os comandos acima e reiniciar (por uma boa medida), e o fato de que isso não parece atingir o meu objetivo
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 123.456.89.1 0.0.0.0 UG 600 0 0 wlp1s0
0.0.0.0 123.456.89.1 0.0.0.0 UG 20200 0 0 enp0s31f6
123.456.89.0 0.0.0.0 255.255.255.192 U 200 0 0 enp0s31f6
123.456.89.0 0.0.0.0 255.255.255.192 U 600 0 0 wlp1s0
654.321.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
Os números se somam à execução do meu comando, mas para as linhas que dizem
0.0.0.0 123.456.89.1 0.0.0.0 UG 20200 0 0 enp0s31f6
654.321.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
A primeira linha tem 20 prefixados antes do valor 200 definido. Isso continua sendo aplicado consistentemente com base no que eu corro; Se eu alterar o valor da métrica nmcli
para dizer 500, route -n
o relatório será 20500. Por que isso acontece? Certamente não parece certo, pois afirmei que queria 200 ou 500, não 20200 e 20500.
A segunda linha tem um valor métrico que eu não tenho ideia de onde vem, e não consigo afetá-lo. Se alguém puder esclarecer isso, estou agradecido.
Não parece que esses comandos acabem em algo tangível, além de afetar as métricas; Não posso dizer que a Ethernet esteja tendo precedência, então presumo que não.
Outras descobertas
O que eu achei curioso, e parece estar funcionando até certo ponto, é o uso de $ sudo ifmetric enp0s31f6 200
. Isso faz duas a três coisas;
- Isso afeta a métrica da interface (
route -n
relata todas as linhas com o Ifaceenp0s31f6
para terem o valor 200) - Isso afeta a interface do usuário no Ubuntu (no canto superior direito, vejo uma alternância visual entre a troca de ícones Ethernet e sem fio, dependendo dos valores métricos que forneço no
ifmetric
comando) - Ele às vezes joga um
NETLINK: Error: File exists
erro para mim. Execuções subsequentes do mesmo comando pode ou pode não resultar neste erro
Algumas informações do sistema
- EliteBook 850 G5
- Ubuntu 18.04
- Instalação do Ubuntu feita permitindo que o instalador use o disco inteiro, criptografia ativada, downloads de terceiros habilitados para drivers, etc.
Atualização # 1
$ nmcli c show
NAME UUID TYPE DEVICE
Wired connection 2 [n/a] ethernet enp0s31f6
WiFi1 [n/a] wifi wlp1s0
$ route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 [n/a] 0.0.0.0 UG 600 0 0 wlp1s0
0.0.0.0 [n/a] 0.0.0.0 UG 20200 0 0 enp0s31f6
[n/a] 0.0.0.0 255.255.255.192 U 200 0 0 enp0s31f6
[n/a] 0.0.0.0 255.255.255.192 U 600 0 0 wlp1s0
[n/a] 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
nmcli c show
igualroute -n
à saída de?