Après avoir installé une instance Ubuntu 20.04 sous Hyper-V sur mon laptop Windows 10, je me suis trouvé bien bête lorsque je me suis rendu compte que ma machine virtuelle n’avait pas de connexion Internet.
La raison est simple : Hyper-V permet aux machines virtuelle d’utiliser de façon transparente la carte réseau RJ45 mais pas la carte WIFI (aujourd’hui, la plupart des utilisateurs/développeurs/administrateurs ont un portable (parfois en plus d’un desktop) et utilisent le wifi pour presque tout).
Pour permettre à une machine virtuelle sous Hyper-V d’utiliser le réseau wifi (comme pour une vm sous VirtualBox ou VmWare), rien de plus simple : POWERSHELL
Connecter une machine virtuelle Hyper-V au réseau WIFI
La manoeuvre est très simple et il vous suffira de suivre les étapes ci-dessous. Nous considérerons ma configuration suivante : Laptop sous Windows 10 pro, VM Linux Ubuntu 20.04, Windows Terminal (que j’adore !)
1 – Créez un switch interne
New-VMSwitch -SwitchName “switchhyper” -SwitchType Internal
j’ai donné le nom « switchhyper » pour des raisons d’identification (faites un copier/coller) mais vous pouvez l’appeler comme vous voulez.
2 – Retrouvez votre nouveau switch virtuel
Lancez simplement la commande Get-NetAdapter
Nous pouvons voir le nouveau switch interne virtuel dans la liste. Retenez l’ifIndex, vous en aurez besoin pour l’étape d’après
3 – Configurez la passerelle NAT pour votre nouveau switch virtuel Hyper-V
Grâce à la commande « New-NetIPAddress » comme suit :
New-NetIPAddress -IPAddress 192.168.0.1 -PrefixLength 24 -InterfaceIndex 69
pour le paramètre -InterfaceIndex vous remplacerez 69 par l’ifIndex que le CLI PowerShell vous aura retourné.
note : Dans ma capture j’ai mis l’adresse ip 192.168.14.1 car j’ai déjà un switch virtuel qui a l’adresse 192.168.0.1.
4 – Configurez le réseau NAT avec « New-Nat »
Exécutez la commande suivante :
New-NetNat -Name nat -InternalIPInterfaceAddressPrefix 192.168.0.0/24
Vous aurez le résultat suivant (attention laissez le nom « nat » au lieu de « nathyper » pour le paramètre « -Name » ainsi que l’adresse ip 192.168.0.0/24 au lieu de 192.168.0.14/24 de mon écran. Je vous présente le screenshot pour que vous puissiez avoir une idée du résultat normal de la commande)
5 – Connectez la machine Hyper-V
Lancez votre console Hyper-V, dans les paramètres réseau de votre machine virtuelle, dans l’option « Carte réseau » choisissez votre nouvelle carte créée récemment (c’est le nom que nous lui avons donné dans la première étape)
6 – Configurez manuellement votre machine Hyper-V
Dans ma vm Linux, je n’ai plus qu’à entrer les paramètres réseaux manuellement, en spécifiant des DNS accessibles de n’importe où (OpenDNS, Google, Ultra-NDS, CloudFlare, Quad9 (à but non lucratif) ou …. le vôtre 🙂 )
Vous remarquerez qu’il s’agit dans votre VM d’une connexion réseau filaire.