Windows 8 ignora rota mais específica

6

SO: Windows 8

Eu tenho um NIC conectado por cabo (conectado ao roteador com ip 192.168.0.1) e um NIC WIFI (conectado a um roteador com ip 192.168.1.1). Eu quero que todo o tráfego passe pelo NIC cabeado, exceto que o intervalo 192.168.1.0/24 deve usar o wifi-nic.

Isso funcionava bem no Windows 7, sem nenhuma configuração manual. No Windows 8, no entanto, não é.

Minha tabela de roteamento:

  ===========================================================================
Interface List
 14...f2 7b cb 13 e7 f0 ......Microsoft Wi-Fi Direct Virtual Adapter
 13...b8 ac 6f 54 d2 5c ......Realtek PCIe FE Family Controller
 12...f0 7b cb 13 e7 f0 ......Dell Wireless 1397 WLAN Mini-Card
  1...........................Software Loopback Interface 1
 15...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 16...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1    192.168.1.198     30
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.233     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.0.0    255.255.255.0         On-link     192.168.0.233    276
    192.168.0.233  255.255.255.255         On-link     192.168.0.233    276
    192.168.0.255  255.255.255.255         On-link     192.168.0.233    276
      192.168.1.0    255.255.255.0      192.168.1.1    192.168.1.198     31
    192.168.1.198  255.255.255.255         On-link     192.168.1.198    286
        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.0.233    276
        224.0.0.0        240.0.0.0         On-link     192.168.1.198    286
  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.0.233    276
  255.255.255.255  255.255.255.255         On-link     192.168.1.198    286
===========================================================================
Persistent Routes:
  None

Eu adicionei a regra para 192.168.1.0. Eu acho que o Windows deve usar essa regra para o IP 192.168.1.1 porque é mais específico do que a rota padrão.

No entanto, não é:

C:\Windows\system32>tracert 192.168.1.1

Tracing route to 192.168.1.1 over a maximum of 30 hops

  1    58 ms     4 ms     4 ms  192.168.0.1
  2    68 ms    12 ms    11 ms  ^C

Então ... O que eu faço de errado? E como posso fazer o Windows usar o NIC sem fio para 192.168.1.0/8

    
por Coder14 25.11.2012 / 21:05

4 respostas

1

Você pode usar o comando route add -p . Pode adicionar rota persistente, que pode ter uma métrica menor que 30.

    
por 03.07.2013 / 11:43
0

Você pode mostrar o comando de rota usado para adicionar sua rota.

Geralmente, se duas rotas existirem para o mesmo local, o Windows escolhe a rota com a menor métrica. Sua métrica para a nova rota é 31, então normalmente não será escolhida.

Há algumas perguntas relacionadas a isso, como em Como o Windows 7 decide qual rota tomar se existirem 2 conexões com uma fonte de internet? (por exemplo, um sem fio e um Ethernet para um roteador)

    
por 26.11.2012 / 09:31
0

Isso não parece ajudar também. Parece que o roteamento está procurando 'On-link' como o GW padrão quando a conexão discada é estabelecida antes de encaminhar a solicitação através da interface solicitada.

Por exemplo, nenhuma rota padrão está definida;

10.217.83.0     255.255.255.0         On-link     10.217.83.141    257
10.217.83.141   255.255.255.255       On-link     10.217.83.141    257
10.255.255.255  255.255.255.255       On-link     41.122.100.139   286

O seguinte roteará 10.217.83.254 a 10.217.83.141 , que é IF 12 , mas se você adicionar manualmente o GW correto para o IP, ele não será transmitido.

    
por 12.12.2012 / 15:38
0

Eu tive exatamente o mesmo problema. No Wireshark, pude ver que o ping estava usando o endereço de origem errado. Quando usei ping -S 1.2.3.4 hostname , consegui alcançar o host.

Depois de desativar todos os itens do NDIS nos adaptadores de LAN e WIFI, as rotas começaram a funcionar conforme o esperado.

    
por 20.03.2014 / 13:14