Mon ordinateur portable Windows est directement connecté à 192.168.1.0/24 (réseau sans fil). J'accède à 10.21.0.0/16 via un routeur qui est connecté aux deux réseaux. Le routage fonctionne bien avec cette configuration.
J'ai un VPN, qui se connecte à 10.0.0.0/8. Le réseau VPN n'utilise pas réellement d'IP dans la plage 10.21.0.0/16. Je devrais donc pouvoir configurer ma table de routage pour acheminer toutes les IP 10.21.0.0/16 par le réseau sans fil et toutes les autres 10.0.0.0/8 par le VPN.
Si je comprends bien, je peux le faire si la métrique de 10.21.0.0 est inférieure à celle de 10.0.0.0. Le VPN (10.0.0.0) se voit automatiquement attribuer la métrique 20. J'ai manuellement attribué au WLAN une métrique de 1. J'ajoute manuellement une entrée à la table de routage avec cette commande :
route add 10.21.0.0 mask 255.255.0.0 192.168.1.201 metric 1
La route se voit alors attribuer une métrique de 2 (ce qui est attendu).
Le problème est que cela ne fonctionne pas. Je ne peux pas envoyer un ping à une machine sur le réseau 10.21.0.0. Mais je peux accéder à d'autres éléments sur le réseau 10.0.0.0. Je peux également accéder à des éléments sur le réseau 192.168.1.0.
Pour déboguer ce problème, j'ai fait ce qui suit.
- Exécutez tcpdump sur le routeur (192.168.1.201). Je peux vérifier qu'aucun paquet pour 10.21.0.0 n'arrive sur cette interface.
- Désactiver iptables sur le routeur. Désactivez le pare-feu de Windows.
- J'ai lancé wireshark sur mon ordinateur portable, pour essayer de voir à quelle interface vont les requêtes ping. Mais je ne les vois aller nulle part !
- La commande ping ne reçoit pas de messages "destination inaccessible".
Voici la section pertinente de la table de routage.
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.201 192.168.1.18 2
10.0.0.0 255.0.0.0 On-link 10.55.44.203 20
10.21.0.0 255.255.0.0 192.168.1.201 192.168.1.18 2
Mise à jour
Comme demandé, voici le résultat de route print 10.21.0.1
C:\>route print 10.21.0.1
===========================================================================
Interface List
17...02 50 f2 00 00 05 ......AGN Virtual Network Adapter
16...a0 88 b4 e1 8f 20 ......Intel(R) Centrino(R) Advanced-N 6205
1...........................Software Loopback Interface 1
10...00 00 00 00 00 00 00 e0 Microsoft Teredo Tunneling Adapter
11...00 00 00 00 00 00 00 e0 Microsoft 6to4 Adapter
18...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
47...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
None
Persistent Routes:
None
IPv6 Route Table
===========================================================================
Active Routes:
None
Persistent Routes:
None
C:\>
Bien vu, c'est probablement ici que se situe le problème. Mais hélas, même en ajoutant une route pour un hôte spécifique dont je sais qu'il fonctionne, cela ne fonctionne pas.
C:\>route print 10.*
===========================================================================
Interface List
17...02 50 f2 00 00 05 ......AGN Virtual Network Adapter
16...a0 88 b4 e1 8f 20 ......Intel(R) Centrino(R) Advanced-N 6205
1...........................Software Loopback Interface 1
10...00 00 00 00 00 00 00 e0 Microsoft Teredo Tunneling Adapter
11...00 00 00 00 00 00 00 e0 Microsoft 6to4 Adapter
18...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
47...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
10.0.0.0 255.0.0.0 On-link 10.76.206.8 20
10.21.0.0 255.255.0.0 192.168.1.201 192.168.1.18 2
10.21.61.1 255.255.255.255 192.168.1.201 192.168.1.18 2
10.76.206.0 255.255.255.0 On-link 10.76.206.8 276
10.76.206.8 255.255.255.255 On-link 10.76.206.8 276
10.76.206.255 255.255.255.255 On-link 10.76.206.8 276
10.255.255.255 255.255.255.255 On-link 10.76.206.8 276
===========================================================================
Persistent Routes:
None
C:\>ping 10.21.61.1
Pinging 10.21.61.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 10.21.61.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Si je me connecte au routeur (192.168.1.201) et que je lance tcpdump, je ne vois aucun paquet vers 10.21.0.0/16 sur l'interface à laquelle l'ordinateur portable est connecté.