Ratschläge zum Linux-KVM-Netzwerk?

7

Da ich für die Virtualisierung im Allgemeinen neu und für Linux etwas neu bin (mit Debian Squeeze und von BSD), fällt es mir schwer zu verstehen, welche Netzwerküberbrückungsoption für meinen Host-Computer am besten geeignet ist. Viele - wenn nicht alle - Informationen im Internet scheinen etwas veraltet zu sein.

Es gibt Informationen zu br0, tun, tap und vnet und dergleichen. Ich bin ziemlich verloren in dem, was sie alle bedeuten und tun, und würde es begrüßen, wenn jemand, der sich auskennt, es für mich dumm machen könnte.

Was ich möchte, ist die beste Leistung und das flexible Setup für meinen Debian-Host, bei dem die (* BSD) -Gäste ihre eigene Firewall (PF) verwalten können. Der Squeeze-Hostcomputer verfügt über zwei Hardware-Netzwerkkarten hinter einem geeigneten Hardware-Router.

An dieser Stelle halte ich es für ratsam, die Gäste auf ihre eigene dedizierte Hardware nic (eth1) zu setzen und einen internen IP-Bereich (10.0.0.x) zu verwenden, während der Host eth0 verwendet, aber ich bin sehr offen für Vorschläge von der Experten :)

Matt
quelle

Antworten:

4

Die meisten Begriffe, die Sie entfernt haben, sind Namen von Schnittstellen, die durch herstellerspezifische oder softwarespezifische Szenarien erstellt wurden. Virtuelle Netzwerke, Brücken, Tunnel usw.

Die Terminologie, die zum Einrichten von kvm- oder anderen Systemen für virtuelle Maschinen im Konsolenmodus erforderlich ist, ist alles andere als konsistent. Die allgemeine Idee ist jedoch dieselbe und wenn Sie mit einer Linux-Live-CD herumspielen, die in VirtualBox oder einer anderen GUI gestartet wurde, können Sie mit den Optionen herumspielen.

Grundsätzlich klingt es so, als müssten Sie eine überbrückte Schnittstelle einrichten, bei der die virtuelle Maschine eine Netzwerkhardware erhält, die transparent (normalerweise über eine Subschnittstelle auf dem Host) auf eine der Netzwerkkarten auf dem Host ausgerichtet ist. Die Verwendung Ihrer zweiten Netzwerkkarte hierfür ist zwar hilfreich, aber sicherlich keine Voraussetzung. Die virtuelle Maschine wird im Netzwerk als neues Gerät angezeigt und kann eine Adresse abrufen und mit Geräten im Upstream-Netzwerk kommunizieren, unabhängig davon, um was es sich handelt.

Die andere übliche Option besteht darin, den virtuellen Maschinen Schnittstellen zuzuweisen, die sich automatisch hinter einem NAT-Router auf einer der Netzwerkkarten des Hosts befinden. Dies ist nützlich, um sie von Ihrem Hauptnetzwerk fernzuhalten, wenn es sich nur um Testmaschinen handelt oder Sie Grund zur Kommunikation haben, wie es jede andere Software unter Verwendung der IP-Adresse Ihres Host-Computers tun würde.

Ein weniger verbreitetes, aber nützliches Szenario, wenn Sie mehrere Standorte haben, an denen virtuelle Maschinen gehostet werden, besteht darin, sie so zu tunneln, dass ihr Netzwerkverkehr tatsächlich von einem anderen Host im Netzwerk verwaltet wird, und sie im Wesentlichen per VPN an einen anderen Ort, jedoch an die Hardware, weiterzuleiten Ebene, sodass die Schnittstelle selbst im Gast normal erscheint, aber tatsächlich an einer anderen Stelle in der Netzwerktopologie angeschlossen ist.

Caleb
quelle
Danke Caleb, das macht Sinn. Vielleicht sollte ich klarstellen, dass ich verstehe, wie man eine Linux-Bridged-Schnittstelle erstellt - und das habe ich erfolgreich getan. Ich habe auch mit NAT gespielt; Was ich verwirrend finde, sind in der Tat die Begriffe (und / oder Unterschiede) zwischen allen Optionen (tun, vnet usw.). Aus diesem Grund sehe ich nicht, was am besten zu meinem Szenario passt oder welche Optionen ich wirklich habe.
Matt
4

Erstellen Sie eine Verbindung zwischen den physischen Netzwerkkarten und bauen Sie dann eine Brücke auf der Verbindung

Wenn dies mein Debian-KVM-Server wäre, würde ich eine Verbindung aus den beiden physischen Netzwerkkarten herstellen. Ich würde die Bindung als Failover- / Fehlertoleranz aufbauen.

Sobald Sie die Bindung haben, können Sie eine Brücke (br0) bauen und diese für jeden kvm-Gast verwenden.

Die Brücke ermöglicht es den Gästen, sich dem "echten" Netzwerk anzuschließen und eine IP-Adresse zu belegen, um mit dem Netzwerk oder sogar dem Internet zu kommunizieren.

An dieser Stelle wird dringend empfohlen, pfsense weiterhin für die BSD-Gäste zu verwenden, da diese Teil des Netzwerks sind.

RussellBallestrini
quelle
Bonding klingt interessant, ich werde es untersuchen. Ja, PF wird in beiden Fällen bei den Gästen sein, auch wenn sie möglicherweise bereits durch die Host-Iptables geschützt sind. Ich würde es immer noch vorziehen, wenn es vorhanden wäre.
Matt
iptables schützt Ihren kvm-Debian-Host. Die Bridge verbindet im Grunde das virtuelle kvm-Netzwerk mit dem realen Netzwerk. In diesem Fall müssten wir den Gast-BSD weiterhin mit einer Firewall schützen.
RussellBallestrini