web-dev-qa-db-fra.com

Modification du type de réseau d'un réseau non identifié à un réseau privé sur une connexion OpenVPN

Est-il possible de changer le type de connexion dans Windows 7? J'ai une connexion OpenVPN identifiée comme "réseau non identifié" et je ne souhaite pas appliquer certaines règles à tous les réseaux non identifiés du pare-feu.

Comment peut-on vaincre cela?

22
Filip Ekberg
8
user33820

Vous devez ajouter la passerelle par défaut pour l'interface réseau OpenVPN.

La façon dont j'ai trouvé est d'ajouter route à l'adresse cible 0.0.0.0 via l'interface réseau utilisée OpenVPN.

Dans cet exemple, j'ai un ordinateur avec l'interface physique avec l'adresse IP 10.20.20.20 dans le réseau 10.20.20.0/24 et l'interface OpenVPN TAP avec l'adresse IP 10.1.1.10/24 dans le réseau 10.1.1.0/24 (adresse IP du serveur sous Réseau VPN est 10.1.1.1).

1) Découvrez vos interfaces réseau et des informations sur l’itinéraire actuel vers la 0.0.0.0:

C:\>route print -4
===========================================================================
Interface List
 15...00 ff 6c 3f 5b 0c ......TAP-Win32 Adapter V9
 11...00 0e 0c d9 b5 c8 ......Intel(R) PRO/1000 GT Desktop Adapter
===========================================================================

IPv4 Route table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway        Interface Metric
          0.0.0.0          0.0.0.0       10.20.20.1      10.20.20.20     10
       10.20.20.0    255.255.255.0         On-link       10.20.20.20    266
...

À l'heure actuelle, nous savons que votre numéro d'interface réseau OpenVPN est 15. Une autre information importante est la métrique de la route actuelle vers 0.0.0.0. La nouvelle route vers 0.0.0.0 pour le réseau OpenVPN devrait avoir une valeur métrique supérieure à la valeur actuelle pour éviter de rediriger le trafic entier du réseau vers votre connexion OpenVPN au lieu du réseau physique (dans le cas de deux routes avec les mêmes routes, la route avec une métrique inférieure sera choisie) .

2) Ajoutez la route à 0.0.0.0 via l’interface OpenVPN:

route -p add 0.0.0.0 mask 0.0.0.0 10.1.1.1 metric 50 if 15

Cette commande ajoute route à 0.0.0.0 via l'interface 15 avec une métrique d'au moins 50 et la passerelle 10.1.1.1. Remplacez la passerelle par la vôtre (adresse IP du serveur sur le réseau VPN). Et bien sûr, remplacez le numéro d'interface par le vôtre.

L'argument -p ajoute la route comme permanente, elle sera donc conservée après le redémarrage du système.

3) (Re) connectez-vous au serveur VPN et examinez à nouveau la table de routage:

C:\>route print -4
...
Active Routes:
Network Destination        Netmask          Gateway        Interface Metric
          0.0.0.0          0.0.0.0       10.20.20.1      10.20.20.20     10
          0.0.0.0          0.0.0.0         10.1.1.1        10.1.1.10     80
...

Et le réseau étant maintenant identifié dans le Centre réseau et partage, la fenêtre "Définir un emplacement ..." devrait apparaître ;-)

18
kalwi

Je ne sais pas pourquoi les solutions ci-dessus sont si compliquées, par exemple. en utilisant

route add -p commands

ou même en ajoutant au fichier server.conf OpenVPN

route 0.0.0.0 vpn_subnet_mask default_gateway

L'erreur pourrait simplement être résolue en allant sur:

Control Panel\Network and Internet\Network Connections

(1) Cliquez avec le bouton droit de la souris sur l’interface OpenVPN tun/tap et sélectionnez État> sélectionnez Détails> notez l’entrée du serveur DHCP IPv4. vous auriez besoin de remplir ceci en tant que passerelle par défaut dans (2).

(2) Cliquez avec le bouton droit de la souris sur Interface OpenVPN tun/tap et sélectionnez Propriétés> ouvrir les propriétés TCP/IPv4> cliquez sur Avancé. Sous Passerelles par défaut, cliquez sur Ajouter et entrez exactement la même entrée que celle utilisée comme serveur DHCP, la métrique "automatique". Attendez maintenant que l'adaptateur apparaisse comme par magie comme étant privé.

Ce que vous venez de faire exactement la même chose que les deux solutions ci-dessus - en ajoutant des itinéraires persistants - mais c'est encore mieux - il survit au redémarrage puisqu'il est configuré sous Windows. Vous pouvez réellement vérifier dans cmd en tapant "route print" et vous verrez 1 entrée ajoutée dans la table de routage, ainsi que 1 entrée sous les routes persistantes. Si la métrique du nouvel itinéraire est plus petite que celle de votre adaptateur physique, rétablissez (2) et remplacez la métrique de "automatique" par une valeur supérieure à celle de la carte physique.

Si votre passerelle (adresse IP du serveur openvpn) est statique, son ajout (2) fait le travail.

11
L. J.

Cela fonctionne bien avec certaines connexions VPN, mais disons que la passerelle par défaut de votre VPN change constamment. Cela signifie que, chaque fois que vous réinitialisez l'ordinateur, vous devez utiliser la commande 'route add' encore et encore. C'est inacceptable.

En recherchant un problème avec VMware dans Windows 7, je suis tombé sur un mot de registre appelé * NdisDeviceType. Cela signifie que Windows ne doit pas essayer d'identifier une carte réseau virtuelle spécifique. Tout ce que vous avez à faire est d'aller dans le registre et d'aller à HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318.

Une fois là-bas, recherchez dans les clés une chaîne appelée DriverDesc avec la valeur 'Tap-win'. C'est la clé qui concerne l'adaptateur virtuel utilisé par OpenVPN. Créez ensuite un mot de passe appelé * NdisDeviceType et attribuez-lui la valeur 1.

Enfin, redémarrez votre ordinateur. Maintenant, vous ne devriez pas voir un réseau non identifié. N'oubliez pas de sauvegarder votre base de registre avant de tenter cette modification. Si vous utilisez OpenVPN et que vous ne vous sentez pas à l'aise avec cela, vous pouvez télécharger un script qui accomplira cela pour vous.

4
canadianprince

Je pense que le moyen le plus simple et le meilleur pour résoudre ceci est de faire ceci:

  1. Ouvrez votre fichier de configuration OpenVPN.
  2. Ajoutez cette ligne: route 0.0.0.0 0.0.0.0 vpn_gateway 50 (ne modifiez pas vpn_gateway, c’est une variable d’environnement) et enregistrez.
  3. Connecter un VPN
  4. Si nécessaire, passez aux étapes 5 et 6.
  5. Ouvrez l’analyse (Win + R) et saisissez secpol.msc dans "Règles du gestionnaire de liste de réseau".
  6. Faites un clic droit sur votre réseau VPN, et propriétés-> Emplacement du réseau. Sélectionnez réseau privé.

De cette façon, vous n’aurez plus à vous soucier de votre IP de passerelle VPN, et fonctionne également avec des passerelles VPN dynamiques.

3
droidgren

Cela fonctionne, mais il est préférable d’aller plus loin en modifiant manuellement les paramètres IP de l’adaptateur TAP. Utilisez ipconfig pour déterminer les paramètres appropriés et utilisez la passerelle pour le serveur DNS.

Mise à jour : Ignorez cette étape. Si vous le faites, votre adresse IP ne sera pas masquée. Je ne sais pas pourquoi, mais j'ai tout fait pour l'inverser, mais le seul moyen est d'annuler ce que j'ai fait dans cette étape et de redémarrer l'ordinateur.

Mise à jour : Un problème que j'ai avec ceci est que j'ai configuré Windows 7 pour démarrer la connexion lorsque j'amorce Windows. Parfois, lorsque je redémarre ou arrête l'ordinateur, le réseau redevient inconnu. La route serait toujours dans la table. Une solution de contournement à cela consistait à modifier mon fichier de configuration pour le client VPN auquel je me connecte. La commande que j'ai ajoutée était:

#Dummy default gateway to work around Windows 'unidentified network'/'unknown network' (put a "#" in front of this)
route-metric 30
route 0.0.0.0 0.0.0.0 10.0.0.1.

La métrique est récupérée en lisant la table de routage affichée avec:

route print -4

10.0.0.1 est la passerelle à laquelle le VPN se connecte. Par exemple, lorsque je suis connecté au VPN, ma table de routage ressemble à ceci:

-------------------------------------------------------------------------
IPv4 Route Table
-------------------------------------------------------------------------
Active Routes:
Network Destination      Netmask        Gateway      Interface    Metric
          0.0.0.0        0.0.0.0    192.168.0.1  192.168.0.100        25
          0.0.0.0      128.0.0.0       10.0.0.1     10.0.7.102        30

La première entrée est la route vers mon routeur. Le second est la connexion VPN. Maintenant, lorsque je modifie le fichier de connexion VPN (vpn.ovpn dans mon cas), j'utilise la destination réseau, rend le masque de réseau 0.0.0.0 et utilise 10.0.0.1 comme passerelle. Je remarque ensuite que la métrique est définie sur 30 et la définir sur 30 dans le fichier de configuration.

2
Robert Martin

Si vous avez terminé l'ajout de la passerelle par défaut ( à l'aide de commandes ou de l'interface graphique Windows ), il vous faudra peut-être un moyen de indiquer à Windows que vous souhaitez appliquer la désignation de privé ou de domaine au réseau. Peut-être avez-vous déjà accidentellement étiqueté le réseau comme étant public ou, pour une raison quelconque, n'avez jamais eu la possibilité de choisir avec l'invite "Définir un emplacement ...". J'ai couru dans ce scénario sur Windows 10.

Pour définir cela via le registre , accédez à la clé Profils de réseau, à la rubrique HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\ProfilesThe Profiles key À partir de là, la clé Profiles contient une liste de clés avec des GUID correspondant à tous les réseaux enregistrés par votre ordinateur. Vous pouvez parcourir ces clés GUID et trouver votre réseau en faisant correspondre la valeur ProfileName de la clé. The Profile ID key and ProfileName value Une fois que vous avez trouvé le bon réseau dans la clé Profiles, vous souhaitez modifier la valeur Category de la clé réseau. The Category value in the Profile ID key

Une valeur dans la valeur Category de 0 indique un réseau public. Vous pouvez modifier cette valeur en 1 pour étiqueter le réseau en tant que privé ou 2 pour le désigner en tant que réseau de domaine. Pour appliquer cette modification, vous devrez peut-être réinitialiser la connexion réseau.

1
palswim

Toutes les solutions mentionnées ci-dessus ne sont en fait que des solutions de contournement, mais chaque produit/produit a ses propres acheteurs, comme on dit.

Le plus simple consiste à supprimer la route 0.0.0.0 inconnue créée, puis tout devrait être remis en place. Il suffit d’exécuter cmd.exe (en tant qu’administrateur) à partir de votre ligne de commande, puis tapez route delete 0.0.0.0.

Je ne pense pas que l’enregistrement de routes de junk et d’autres déchets ou simplement de le faire à l’inverse et de fabriquer un éléphant à la volée soit l’une des meilleures idées… Bonne chance!

0
Mister

Sur mon ordinateur Windows 7, le "réseau non identifié" était le symptôme du problème OpenVPN, pas la cause. Dans mon cas, le correctif consiste à démarrer l'interface graphique du client OpenVPN à l'aide des privilèges d'administrateur.

0
Greg Glockner