Windows 7, connexion réseau sans passerelle par défaut: est-il possible de changer l'état du «réseau inconnu»?

17

J'ai un ordinateur exécutant Windows 7 Pro RTM. Cet ordinateur dispose de deux connexions réseau:

  • Une connexion Wi-Fi à Internet (via un routeur domestique) qui fonctionne très bien.
  • Une connexion réseau virtuelle OpenVPN. Plus précisément, il s'agit d'une connexion Ethernet virtuelle qui se comporte exactement comme une connexion câblée Ethernet physique.

Mon problème est que le "Centre Réseau et partage" affiche "Réseau inconnu" pour la connexion OpenVPN. Après quelques recherches, j'ai trouvé que les réseaux logiques (en dehors d'un domaine) sont identifiés par l'adresse MAC de la passerelle par défaut de la connexion. Le problème est que la connexion OpenVPN n'a pas de passerelle par défaut: c'est un réseau privé, donc je n'en ai pas besoin ...

Par conséquent, le "réseau inconnu" est toujours considéré comme public, donc le pare-feu est toujours en "mode public", ce que je ne veux pas. De plus, je ne peux pas renommer "connexion inconnue" ou quoi que ce soit (ce qui a du sens), donc c'est un peu moche.

Mon objectif est de définir un réseau logique approprié pour la connexion OpenVPN avec le profil privé. Je connais certaines solutions de contournement (désactivez le pare-feu, modifiez la politique de sécurité pour rendre tous les réseaux inconnus "privés"), mais ce sont toujours des solutions. Je veux juste que mes clients se connectent au VPN sans avoir à désactiver leurs paramètres de pare-feu, sans changer la configuration globale avec des effets secondaires potentiels (la solution de "politique de sécurité") et sans avoir à regarder une horrible "connexion inconnue" dans le réseau et centre de partage.

Existe-t-il un moyen de le faire? J'ai essayé de vérifier ce qui se passait dans le registre (HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ NetworkList est intéressant), mais je n'ai toujours pas trouvé de moyen de "forcer" la connexion OpenVPN à être affectée à une logique réseau.

Toute aide serait très appréciée.

Une question connexe est apparue sur Superuser: /superuser/37355/windows-7-cant-identify-network/37422

Etienne Dechamps
la source
2
Question vraiment intéressante, j'espère qu'on y répondra.
Massimo
1
Je n'ai pas de moyen de le tester pour le moment, mais pourriez-vous également ajouter l'adresse IP comme passerelle, en la dirigeant vers elle-même?
Jes
Bien essayé, mais cela ne fonctionne pas: Windows ne me permet pas de définir l'adresse de passerelle par défaut sur l'adresse IP de la carte réseau. Il ne montre aucune erreur mais quand je reviens dans les propriétés de la connexion, la passerelle par défaut est toujours vide.
Etienne Dechamps
Jes: après une discussion chez Superuser, je l'ai réessayé (définir sa propre IP comme passerelle) et cela fonctionne ... jusqu'à ce que l'interface soit désactivée ou que l'ordinateur redémarre. Lorsque je le réactive, la passerelle par défaut a disparu une fois de plus ... des idées?
Etienne Dechamps

Réponses:

4

Il y a un script Powershell ici qui semble faire ce que vous voulez.

Fahad Sadah
la source
Supprimer toutes les fonctionnalités de sensibilisation au réseau sur l'interface n'était pas la solution que j'attendais, mais je dois admettre que cela fait l'affaire. C'est mieux que rien, je suppose. J'accepterai votre réponse, au moins jusqu'à ce qu'une meilleure arrive.
Etienne Dechamps
3
ah, c'est mon script (de nivot.org)
x0n
9

Je veux juste que mes clients se connectent au VPN sans avoir à désactiver leurs paramètres de pare-feu, sans changer la configuration globale avec des effets secondaires potentiels (la solution de "politique de sécurité") et sans avoir à regarder une horrible "connexion inconnue" dans le réseau et centre de partage.

Existe-t-il un moyen de le faire?

La solution de contournement que nous utilisons est de pousser une route par défaut vers le client via le fichier de configuration OpenVPN, par exemple comme ceci:

# Dummy default gateway to work around Windows 'unidentified network'/'unknown network'
route-metric 512
route 0.0.0.0 0.0.0.0

Vous voulez certainement vous assurer que la métrique fournie est supérieure à votre itinéraire Internet par défaut , sinon tout le trafic serait acheminé via le VPN (ce qui pourrait être souhaitable dans des cas spécifiques, mais c'est un autre sujet).

Veuillez noter que manipuler la configuration du réseau en général et le routage en particulier peut avoir toutes sortes d'effets secondaires indésirables, s'il n'est pas fait correctement, mais tant que vous savez ce que vous faites, vous devriez pouvoir en évaluer l'impact:

  • Plus précisément, la solution de contournement fournie d'avoir deux passerelles par défaut comme celle-ci est considérée comme sémantiquement erronée par certains au moins et Windows vous avertit en conséquence, si vous configurez cela via l'interface utilisateur.
  • Voir Comment rendre un réseau non identifié privé identifiable et privé? pour une discussion sur ce sujet, en particulier la question elle-même et les affiches (Jason R. Coombs) des critiques raisonnables concernant Steve Hathaways bref résumé de la méthode de passerelle par défaut en bas de la page.

Cela dit, nous avons utilisé cette solution de contournement avec succès pendant un certain temps sans aucun problème.

Steffen Opel
la source
"route 0.0.0.0 0.0.0.0" ne fonctionnera pas. La passerelle par défaut doit être accessible (ARP) sur la connexion. Je suis cependant d'accord avec les autres parties de votre réponse.
Etienne Dechamps
1
Oh, en fait, cela fonctionne. C'est parce que j'ai mal compris la syntaxe de l'option de configuration OpenVPN "route". Il y a un troisième paramètre par défaut qui est la passerelle VPN, donc Windows parvient en effet à obtenir une réponse ARP "virtuelle" d'OpenVPN.
Etienne Dechamps du
Je dois dire que c'est la meilleure option que j'ai trouvée jusqu'à présent. Le hack de registre qui permet à Windows de penser que le réseau est la connexion de l'ordinateur à un domaine contourne complètement la sécurité et l'autre astuce, l'ajout d'un itinéraire permanent, laisserait un itinéraire absurde même lorsque OpenVPN est fermé.
Cygon
1

Pour OpenVPN AS (serveur d'accès), vous souhaiterez peut-être l'ajouter aux paramètres VPN avancés dans la zone Directives de configuration du serveur :

push "route-metric 512"
push "route 0.0.0.0 0.0.0.0"

Ensuite, mettez à jour le serveur et, et voilet, Win7 obtiendra le gw par défaut sur le périphérique TAP et vous permettra de changer le type de réseau de Inconnu à d'autres.

Merci @ Steffen-Opel pour le conseil! :)

andreground
la source
1

Je voudrais laisser ma contribution. Voir ce qui a fonctionné sur mon cas ... Windows 7 et Windows 8 ...

Je passe beaucoup de temps avec ce problème de connectivité entrante des clients.

La désactivation de l'interface TAP sur le pare-feu fonctionne bien, mais c'est presque la même chose de désactiver le pare-feu dans le contexte VPN. Les machines VPN fonctionnent dans différents contextes de sécurité et certaines peuvent affecter d'autres.

J'ai essayé la configuration de "passerelle par défaut" ce qui reconnaît le réseau comme un "réseau de travail" (juste dans Win7, pas sur Win8), et pourtant je n'ai pas PING!

Ajouter manuellement un enregistrement "* NdisDeviceType" dans le registre n'a pas non plus fonctionné sur Win8.

Donc, en voyant attentivement la configuration du pare-feu Windows, j'ai vu une autre configuration d'étendue plutôt que des profils, j'ai donc essayé d'exécuter un autre service plutôt que PING et quelle a été ma surprise quand cela a fonctionné correctement, même dans "Réseaux non identifiés" et "Profil public"!

Donc, j'ai essayé d'isoler le problème PING, et la configuration qui le fait fonctionner était la suivante: l'entrée par défaut du pare-feu Windows qui permet en dehors d'IPv4 PING est "Partage de fichiers et d'imprimantes (demande Echo - ICMv4-In)", donc dans son propriétés, j'ai cliqué sur "Portée", et dans "Adresse IP distante", je suis passé de "Sous-réseau local" à "N'importe quelle adresse IP", et cela a fait fonctionner PING.

syncord
la source
0

Hé, j'ai pu faire fonctionner ça. Je suis allé au Network and Sharing Center, puis j'ai cliqué sur "Home Group". Il est dit sur cet écran que je ne peux pas rejoindre un groupe résidentiel car le réseau est public. J'ai ensuite cliqué sur la question "Qu'est-ce qu'un emplacement réseau?" et cela me permet de changer le type de réseau. Un écran apparaît indiquant que Windows n'a pas pu modifier le type de réseau, mais cela va changer.


la source
-2

Qu'en est-il de l'ajout d'un autre Ip du segment comme passerelle par défaut? Bien qu'il n'interroge ni ne touche les adresses externes, il en aura une par défaut, qui devrait satisfaire Windows. Ou changez votre DHCP pour en fournir un, si ce n'est pas le cas.

jfmessier
la source
1
Je ne comprends pas vraiment. Si je donne à Windows une passerelle par défaut pour cette connexion, Windows peut utiliser la connexion VPN comme route par défaut. Cela signifie que Windows utilisera la connexion VPN pour accéder à Internet ... ce que bien sûr je ne veux pas (cela ne fonctionnerait pas, de toute façon).
Etienne Dechamps
-3

Essayez d'accéder au «Centre Réseau et partage» lorsque vous êtes connecté au VPN, et vous devriez voir les réseaux répertoriés. Sous chaque réseau aura un statut comme "Réseau de travail" ou "Réseau de domaine", vous devriez pouvoir cliquer dessus et changer le type du réseau.

J.Ja

Justin James
la source
2
Pas pour les réseaux inconnus
Mark Henderson