Ubuntu non si collega alla rete in Hyper-V


33

Non riesco a connettere l'host Ubuntu (sia 12.10 che 12.04) a Internet tramite hyper-V.

Ecco cosa ho fatto finora (grazie mille al post sul blog di @ Kronos sull'argomento ):

  • Creato uno switch nel gestore degli switch con connessione impostata su esterna, selezionata la mia scheda wifi (Intel Centrino Ultimate-N 6300 AGN). Se è importante, la piattaforma di filtro Microsoft è selezionata sotto le estensioni.
  • Aggiunto questo interruttore al mio ospite Ubuntu.
  • Ho anche provato una diversa scheda wireless (Aethros 9285) e ho avuto lo stesso problema.
  • La connessione tramite la mia scheda cablata funziona bene (supponendo che io scelga quella scheda e che io sia cablato ovviamente).
  • Renderlo un adattatore di rete legacy non risolve il problema.

Ubuntu può vedere questa connessione, ma non è in grado di connettersi ad essa. Quello che segue è ciò che ho tentato di fare per far connettere Ubuntu:

  • Avvia e riavvia il gestore di rete
  • Riavvia la macchina
  • Verifica che sia effettivamente possibile visualizzare l'adattatore (il dispositivo non è stato pronto alcune volte) inserisci qui la descrizione dell'immagine

Come posso farlo funzionare correttamente?

Aggiornamento: funziona quando è collegato a un'altra rete wireless (ma non alla mia università). Inoltre, Ubuntu sembra essere ancora connesso alla rete anche quando ho cambiato posizione, anche se tutto restituisce un "Host di destinazione irraggiungibile" dal 10.0.44.159 (suppongo che sia il mio host, poiché l'ospite può eseguire il ping correttamente, ma il mio host non può). Perché la rete wireless che è sulla materia?


Accendere il vm adesso :)
James Mertz,

Per quanto riguarda il ponte, questo è il modo in cui le cose sono state implementate per il client Hyper-V (vedi figura 2)
James Mertz,

Hai qualche altro software di macchina virtuale installato diverso da Hyper-V? Ad esempio, l'installazione di VirtualBox può causare problemi di rete con Hyper-V. forums.virtualbox.org/viewtopic.php?f=6&t=48044
James T

@JamesT no, solo Hyper-V
soandos

Suppongo che non dipenda dalla tua rete universitaria, vero? Esistono restrizioni sul numero di dispositivi o è necessaria l'autenticazione per la connessione?
tombull89,

Risposte:


35

Quello che sembra essere stato il problema è che il protocollo di bridging non era supportato dall'AP (access points) della mia università.

Ecco la soluzione alternativa (per quanto posso dire in questo modo è più robusto del modo ponte che viene eseguito per impostazione predefinita, ma potrebbe esserci un sovraccarico aggiuntivo (non sono sicuro di quanto)):

  1. Creare uno switch di rete interno
  2. Collegalo al sistema operativo guest
  3. Collegare l'adattatore virtuale interno alla scheda virtuale creato da Hyper-V in questo modo: inserisci qui la descrizione dell'immagine.
    Vai all'adattatore che fornisce l'accesso a Internet alla macchina, quindi fai clic su condivisione. Seleziona l'adattatore creato nel passaggio 1.
  4. Tutto dovrebbe funzionare bene.

Il merito di questa soluzione va alle persone che lavorano in rete alla Binghamton University, in particolare Joe e Alan.


Chiedi a Joe e Alan di unirsi a SU e diamo loro un rappresentante: P
James Mertz,

@KronoS in realtà hanno commentato SU (ho uno degli adesivi sulla mia tastiera) ma mi hanno detto di pubblicarlo per loro "solo facendo il loro lavoro" ecc.
soandos

@soandos: puoi fornire istruzioni dettagliate più dettagliate?
Richard Cook,

@RichardCook cosa vuoi che aggiunga?
soandos,

Potresti fornire ulteriori informazioni per il passaggio 3?
Richard Cook,

11

Ho avuto lo stesso problema. Stavo usando il mio laptop che ha solo una connessione wireless. Nessuna scheda Ethernet integrata.

Il sistema è lo standard Windows Server 2012. Stavo cercando di usare hyper-v per installare Ubuntu 12.04 lts. Ho avuto lo stesso problema. Ubuntu non sarà in grado di accedere a Internet, la rete continua a connettersi e disconnettersi.

Quindi, ho seguito l'approccio di "Joe e Alan". Funziona.

Ma voglio scoprire perché lo switch virtuale esterno non funzionerà.

Dopo aver letto questo blog,

Portare Hyper-V su "Windows 8"

Ho trovato il problema e forse una soluzione migliore.

per hyper-v, se lo switch virtuale esterno si trova sopra una scheda di rete wireless, hyper-v ha utilizzato il bridge Microsoft nel mezzo per eseguire la traduzione MAC. Perché un canale wireless è associato a un MAC. Leggi l'articolo completo se vuoi davvero capire.

Ora, sulla base delle informazioni di quell'articolo, posso facilmente concludere che, ci saranno due indirizzi IP per lo stesso MAC della NIC fisica se si guarda il server dall'esterno.

Ovviamente i due indirizzi IP sono assegnati a due diverse NIC virtuali con diversi indirizzi MAC se si guarda all'interno. Ma quei due MAC sono nascosti dietro il ponte e non sono visivi dall'esterno.

Il primo IP verrà utilizzato dal sistema operativo host (Windows Server 2012 nel mio caso). Quello non ha alcun problema perché il server DHCP ne assegna uno all'avvio della macchina.

Il problema si presenta con il secondo indirizzo IP, quando si avvia la macchina virtuale, (ubuntu nel mio caso), la macchina virtuale tenterà di ottenere l'indirizzo IP dal server DHCP ma fallirà. La maggior parte dei server DHCP, almeno il router che ho a casa, non assegnerà due indirizzi IP diversi allo stesso MAC. Probabilmente restituisce lo stesso indirizzo IP sulla richiesta DHCP della macchina virtuale, ma non funzionerà perché non possiamo usare lo stesso indirizzo IP su due macchine. Se qualcuno riesce a catturare i pacchetti del DHCP, potrebbe trovare i dettagli del problema.

qui alcune maggiori informazioni su DHCP

Non sono sicuro che qualsiasi server DHCP possa fornire due IP a un MAC. Basato sulla descrizione di @soandos, sembra sì.

Ora sappiamo che il vero problema è che la macchina virtuale non può ottenere l'indirizzo IP assegnato.

Allora, qual è la soluzione?

Il più semplice è semplicemente assegnare un indirizzo IP statico nella macchina virtuale. Dopo aver avviato la macchina virtuale, è possibile assegnare un indirizzo IP statico a quella macchina virtuale. Funziona perfettamente per me perché uso il mio laptop solo a casa.

Ma in alcune situazioni, ad esempio in un wifi pubblico, probabilmente non puoi farlo (in modo sicuro).


Grazie per essere arrivato alla radice del problema. Ho avuto lo stesso problema e avevo davvero bisogno di una connessione esterna piuttosto che interna. L'impostazione degli IP statici con il tipo di connessione esterna ha funzionato. Grazie!
Giovanni

1

La soluzione di soandos non ha funzionato in modo affidabile per me. Invece, il suggerimento di liuhongbo ha funzionato. La seguente è stata l'installazione che ha funzionato in modo affidabile. Le impostazioni di rete all'interno della macchina virtuale Ubuntu sono a sinistra e gli ipconfigelenchi di Windows 8 a destra.

Configurazioni di rete Ubuntu e Windows 8

Si noti che la subnet mask, il gateway predefinito e i server DNS sono gli stessi sia all'interno di Ubuntu che in Windows 8. L'unica differenza è l'indirizzo IPv4, che è diverso solo da una cifra.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.