web-dev-qa-db-fra.com

Ubuntu ne se connecte pas au réseau dans Hyper-V

Je ne parviens pas à connecter l'invité Ubuntu (12.10 et 12.04) à Internet via hyper-V.

Voici ce que j'ai fait jusqu'à présent (avec beaucoup de remerciement pour le billet de blog de @ Kronos sur le sujet ):

  • Création d'un commutateur dans le gestionnaire de commutateurs avec connexion établie sur externe, sélection de ma carte wifi (Intel Centrino Ultimate-N 6300 AGN). Si cela compte, la plateforme de filtrage Microsoft est cochée sous extensions.
  • Ajout de ce commutateur à mon invité Ubuntu.
  • J'ai aussi essayé une autre carte sans fil (Aethros 9285) et j'ai eu le même problème.
  • La connexion via ma carte câblée fonctionne très bien (en supposant que je sélectionne cette carte et que je suis câblé, bien sûr).
  • En faire un adaptateur réseau hérité ne résout pas le problème.

Ubuntu peut voir cette connexion, mais est incapable de s'y connecter. Voici ce que j'ai essayé de faire pour que Ubuntu se connecte:

  • Démarrer et redémarrer le gestionnaire de réseau
  • Redémarrer la machine
  • Vérifiez qu'il peut voir l'adaptateur (le périphérique n'est pas prêt plusieurs fois). enter image description here

Comment puis-je obtenir que cela fonctionne correctement?

Update: Cela fonctionne lorsque vous êtes connecté à un autre réseau sans fil (mais pas à mon université). De plus, Ubuntu semble toujours être connecté au réseau même lorsque j’ai changé d’emplacement, bien que tout retourne un "Hôte de destination inaccessible" à partir de 10.0.44.159 (je suppose que c’est mon hôte, car l’invité peut lui envoyer une requête ping, mais mon Hôte ne peut pas). Pourquoi le réseau sans fil dont il est question est-il important?

32
soandos

Le problème semble être que le protocole de transition n'a pas été pris en charge par les AP (points d'accès) de mon université.

Voici la solution de contournement (pour autant que je sache, cette méthode est plus robuste que la méthode de pontage utilisée par défaut, mais il peut y avoir des frais généraux supplémentaires (je ne sais pas combien)):

  1. Créer un commutateur de réseau interne
  2. Connectez-le à l'OS invité
  3. Connectez l’adaptateur virtuel interne à l’adaptateur virtuel créé par Hyper-V comme suit: enter image description here.
    Accédez à l’adaptateur qui fournit un accès Internet à la machine, puis cliquez sur partage. Sélectionnez l'adaptateur créé à l'étape 1.
  4. Tout devrait bien fonctionner.

Le mérite de cette solution revient aux personnes travaillant en réseau à l’Université de Binghamton, plus particulièrement à Joe et Alan.

35
soandos

J'ai eu le même problème. J'utilisais mon ordinateur portable qui ne dispose que d'une connexion sans fil. Pas de construction dans la carte Ethernet.

Le système est Windows Server 2012 standard. J'essayais d'utiliser hyper-v pour installer Ubuntu 12.04 lts. J'ai le même problème. Ubuntu ne pourra pas accéder à Internet, le réseau continue de se connecter et de se déconnecter.

J'ai donc suivi l'approche de "Joe et Alan". Ça marche.

Mais je veux savoir pourquoi le commutateur virtuel externe ne fonctionnera pas.

Après avoir lu ce blog,

Amener Hyper-V sur "Windows 8"

J'ai trouvé le problème et peut-être une meilleure solution.

pour hyper-v, si le commutateur virtuel externe est au-dessus d'une carte réseau sans fil, hyper-v a utilisé le pont Microsoft entre les deux pour effectuer la traduction MAC. Parce qu'un canal sans fil est lié à un MAC. Lisez l'article complet si vous voulez vraiment comprendre.

Maintenant, sur la base des informations de cet article, je peux facilement conclure qu'il y aura deux adresses IP pour ce même MAC du physique NIC si vous regardez le serveur de l'extérieur.

Bien sûr, les deux adresses IP sont attribuées à deux NIC virtuels différents avec une adresse MAC différente si vous regardez à l'intérieur. Mais ces deux MAC sont cachés derrière le pont et ne sont pas visibles de l'extérieur.

La première adresse IP sera utilisée par l'OS hôte (Windows Server 2012 dans mon cas). Celui-ci n'a pas de problème car le serveur DHCP en attribue un lors du démarrage de la machine.

Le problème vient avec la deuxième adresse IP. Lorsque vous démarrez la machine virtuelle (Ubuntu dans mon cas), la machine virtuelle essaie d’obtenir l’adresse IP du serveur DHCP, mais elle échouera. La plupart des serveurs DHCP, du moins le routeur que j’ai chez moi, n’affecteront pas deux adresses IP différentes au même MAC. Cela donnera probablement la même adresse IP à la requête DHCP de la machine virtuelle, mais cela ne fonctionnera pas car nous ne pouvons pas utiliser la même adresse IP sur deux machines. Si quelqu'un peut capturer les paquets du DHCP, vous pouvez trouver le détail du problème.

voici quelques informations supplémentaires sur DHCP

Je ne suis pas sûr si un serveur DHCP peut fournir deux IP à un MAC. Basé sur la description de @soandos, semble oui.

Maintenant, nous savons que le vrai problème est que la machine virtuelle ne peut pas obtenir l'adresse IP assignée.

Alors, quelle est la solution?

Le plus simple consiste simplement à attribuer une adresse IP statique à la machine virtuelle. Après le démarrage de la machine virtuelle, vous pouvez attribuer une adresse IP statique à cette machine virtuelle. Cela fonctionne parfaitement pour moi parce que j'utilise mon ordinateur portable à la maison uniquement.

Mais dans certaines situations, par exemple dans un réseau wifi public, vous ne pouvez probablement pas le faire (en toute sécurité).

11
liuhongbo

la solution de soandos n'a pas fonctionné de manière fiable pour moi. Au lieu de cela, la suggestion de Liuhongbo a fonctionné. Ce qui suit est la configuration qui a fonctionné de manière fiable. Les paramètres réseau de la machine virtuelle Ubuntu se trouvent à gauche et les listes ipconfig de Windows 8 à droite.

Ubuntu and Windows 8 Network Configurations

Notez que le masque de sous-réseau, la passerelle par défaut et les serveurs DNS sont les mêmes depuis Ubuntu et Windows 8. La seule différence est l'adresse IPv4, qui ne diffère que d'un chiffre.

1
Shaun Luttin