Como definir a métrica de uma rota adicionada manualmente no Windows?

15

Estou usando o seguinte comando para adicionar uma rota, mas a métrica não está funcionando da maneira que eu quero. Quero que a rota que estou adicionando tenha um custo menor.

    C:\Users\cboyle>route ADD 0.0.0.0 MASK 0.0.0.0  192.168.76.2 METRIC 3 IF 11
 OK!

C:\Users\cboyle>

Aqui está minha tabela de roteamento antes do comando acima.

    Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\cboyle>route print
===========================================================================
Interface List
 11...00 1a 4d 84 48 22 ......Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller
 15...08 00 27 00 40 a3 ......VirtualBox Host-Only Ethernet Adapter
  1...........................Software Loopback Interface 1
 12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.76.1    192.168.76.40     20
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
     192.168.56.0    255.255.255.0         On-link      192.168.56.1    276
     192.168.56.1  255.255.255.255         On-link      192.168.56.1    276
   192.168.56.255  255.255.255.255         On-link      192.168.56.1    276
     192.168.76.0    255.255.255.0         On-link     192.168.76.40    276
    192.168.76.40  255.255.255.255         On-link     192.168.76.40    276
   192.168.76.255  255.255.255.255         On-link     192.168.76.40    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link     192.168.76.40    276
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.56.1    276
  255.255.255.255  255.255.255.255         On-link     192.168.76.40    276
===========================================================================
Persistent Routes:
  None

IPv6 Route Table
===========================================================================
Active Routes:
 If Metric Network Destination      Gateway
  1    306 ::1/128                  On-link
 15    276 fe80::/64                On-link
 15    276 fe80::49e3:31a5:5cc7:97ea/128
                                    On-link
  1    306 ff00::/8                 On-link
 15    276 ff00::/8                 On-link
===========================================================================
Persistent Routes:
  None

C:\Users\cboyle>

Aqui está depois.

C:\Users\cboyle>route print
===========================================================================
Interface List
 11...00 1a 4d 84 48 22 ......Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller
 15...08 00 27 00 40 a3 ......VirtualBox Host-Only Ethernet Adapter
  1...........................Software Loopback Interface 1
 12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.76.1    192.168.76.40     20
          0.0.0.0          0.0.0.0     192.168.76.2    192.168.76.40     23
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
     192.168.56.0    255.255.255.0         On-link      192.168.56.1    276
     192.168.56.1  255.255.255.255         On-link      192.168.56.1    276
   192.168.56.255  255.255.255.255         On-link      192.168.56.1    276
     192.168.76.0    255.255.255.0         On-link     192.168.76.40    276
    192.168.76.40  255.255.255.255         On-link     192.168.76.40    276
   192.168.76.255  255.255.255.255         On-link     192.168.76.40    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link     192.168.76.40    276
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.56.1    276
  255.255.255.255  255.255.255.255         On-link     192.168.76.40    276
===========================================================================
Persistent Routes:
  None

IPv6 Route Table
===========================================================================
Active Routes:
 If Metric Network Destination      Gateway
  1    306 ::1/128                  On-link
 15    276 fe80::/64                On-link
 15    276 fe80::49e3:31a5:5cc7:97ea/128
                                    On-link
  1    306 ff00::/8                 On-link
 15    276 ff00::/8                 On-link
===========================================================================
Persistent Routes:
  None

C:\Users\cboyle>

Quero que a rota que estou adicionando tenha prioridade sobre a padrão.

Corey
fonte

Respostas:

9

Meu palpite é que é por causa da opção Automatic Metric definida na NIC. A métrica automática é baseada na velocidade do link, portanto, acho que seu host está conectado a uma porta de switch de 100 Mbps. A DG receberá uma métrica baseada apenas na velocidade do link. Qualquer rota atribuída estaticamente receberá uma métrica com base na velocidade do link MAIS a métrica que você atribuir. Se você deseja atribuir uma métrica mais baixa à entrada da tabela de roteamento estática do que a métrica atribuída ao DG, desative a opção Métrica Automática na NIC.

http://support.microsoft.com/kb/299540

joeqwerty
fonte
1
Tentei desabilitar o "Automatic Metric" nas configurações IP4 do adaptador, mas ainda não houve mudança de comportamento. O comando que estou usando parece funcionar bem no Windows XP, mas não no 7.
Corey
8

Essa pergunta é antiga, mas se você a encontrou como eu, tente o seguinte (confirmado no Win10);

abra as propriedades do adaptador, configurações de IPv4, Avançado e ...

Desmarque a opção " Automatic Metric" conforme mencionado anteriormente e defina um interface metricvalor com algum valor (usei "10 " para este exemplo)

Clique em OK / Aplicar até voltar às conexões de rede. Desative e reative o adaptador para redefinir tudo e incorporar a nova configuração.

route print... Agora você notará que a métrica padrão do adaptador aumentou de 10 para 20.

adicione sua nova rota padrão com uma métrica " 5", como mencionado anteriormente

route print... será criado como " 15" vs o " 20" do padrão existente.

Dave
fonte
Esta deve ser a resposta aprovada, para mim funcionou exatamente como indicado pelo menos, obrigado!
Diegocr 6/08/19
4

A parte relevante do route /? texto de ajuda:

     > route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
              destino ^ ^ máscara ^ métrica do gateway ^ ^
                                                         Interface ^

Você pode ver aqui que você definiu isso através da METRICopção ao adicionar a rota. Números mais baixos têm prioridade sobre números mais altos.

Com base nas informações postadas, parece que você está atribuindo a métrica relativa ao gráfico encontrado neste link: http://support.microsoft.com/kb/299540 ou relativa ao gateway padrão. Você pode ver se permite usar um valor negativo para forçar um custo métrico mais baixo para a rota desejada.

Joel Coel
fonte
2
No comando que eu postei acima, tenho o METRIC definido como 3, mas acabou sendo 23. Qual dose não cumpre meu objetivo.
Corey
@ Corey você leu meu último parágrafo?
Joel Coel
3
apenas tentei um valor negativo, mas deu um erro #
Corey
6
Post antigo, mas eu tive que reduzir o voto, o valor negativo é inútil e, embora seja verdade que essas métricas estão sendo inseridas em relação ao gateway, você não oferece nenhum conselho ou solução real.
D3l_Gato
2

Com base na minha experiência, o uso de várias rotas idênticas com métricas diferentes no Windows é complicado, na melhor das hipóteses, e geralmente não é confiável, especialmente no Windows Vista / 7. Você pode contornar isso usando duas rotas em vez de uma, forçando o Windows a usar as rotas mais específicas. Então, seguindo o seu exemplo:

route ADD 0.0.0.0 MASK 128.0.0.0 192.168.76.2 IF 11
route ADD 128.0.0.0 MASK 128.0.0.0 192.168.76.2 IF 11

Isso alcançará seu objetivo de maneira confiável. Na verdade, essa é a solução usada pelo software OpenVPN para estabelecer uma rota padrão através de uma VPN.

Etienne Dechamps
fonte
Atualmente, é um software VPN que causa problemas para mim. Ele adicionou 192.168. *. * Rotas como uma prioridade mais alta. Assim, tendo um roteador conectado via LAN, você ainda não pode endereçar computadores nesta LAN. O parâmetro METTR do Win7 ROUTE é completamente péssimo.
Askar Kalykov
2

Sei que é tarde, mas acabei de me deparar com isso hoje - eu queria me conectar ao gmail, mas ele foi bloqueado no Filtro de LAN da Rede de Domínio. Trouxe um usb wifi para acessar a rede que não é de domínio e consegui acessar o gmail alterando a prioridade do tráfego. Isso ainda me permitiu acessar a rede de domínio também.

Para descobrir a interface #

   Route Print 

Use Netsh para definir o valor mais baixo na interface do dispositivo usb wifi. O valor mais baixo significa maior prioridade. Isso removerá a configuração automática também.

netsh interface ipv4 set interface 25 metric=2

Use Route Printpara verificar

Se você cometer um erro, poderá voltar a interface para o modo automático.

netsh interface ipv4 set interface 25 metric=automatic

Para obter mais informações sobre o netsh, consulte http://www.colorconsole.de/cmd/en/Windows_Vista/netsh/interface/ipv4/set/interface.htm

BrettKennard
fonte
Isso funciona muito bem. Ela exige uma janela cmd elevado, e você também pode enfrentar uma interface pelo nome, ou seja, netsh int ip set interface interface="Ethernet" metric=121 netsh int ip set interface interface="WiFi" metric=111 netsh int ip set interface interface="Ethernet 2" metric=101
Kurt Koller
0
  1. Desative "Métrica automática" para a interface.
  2. Modifique a rota padrão aumentando sua métrica route CHANGE 0.0.0.0 MASK 0.0.0.0 192.168.76.1 METRIC 2 IF 11.
  3. Crie sua própria rota com uma métrica mais baixa route ADD 0.0.0.0 MASK 0.0.0.0 192.168.76.2 METRIC 1 IF 11.

Nota: Eu não testei.

Jaime Hablutzel
fonte