[linux-l] Netzwerkkonfiguration für Fortgeschrittene

Steffen Schulz pepe_ml at gmx.net
Mo Dez 14 08:02:20 CET 2009


On 091212 at 20:45, Andreas Schott wrote:
> ich habe Ubuntu 9.10 als Serverversion installiert um per KVM virtuelle 
> Maschinen zu nutzen.
> 
> Der Rechner hat zwei Netzwerkkarten, eine direkt am Router (RED) und 
> eine im LAN (GREEN). Auf dem Host soll ein virtueller IPFire als 
> Firewall laufen und der gesamte Netzwerkverkehr (auch der das Hosts) 
> soll natürlich über die Firewall laufen. Die LAN-Schnittstelle habe ich 
> gebridged, kein Problem. Aber wie bridge ich die Internet-Schnittstelle 
> ohne eine IP zuzuweisen? Der virt-manager stellt auch nur gebridgte 
> Netzwerkkarten zur Verfügung.


Auch ich sehe dein konkretes Problem nicht. Du kannst doch das
ethernet interface genauso an die Firewall durchreichen. Ob das LAN
oder WAN ist macht doch technisch gar keinen Unterschied.


Man beachte aber, dass aufgrund der Struktur des Linux-Kerns der
Datenverkehr immer erst durch den Host gehen wird. Vielleicht kannst du
im Kernel des Hosts IP komplett deaktivieren, aber das wird ziemlich
viele kaputt mchen, zB logging und mail ueber localhost.


Es ist auch fraglich was du gewinnst, wenn es klappen sollte. Dann hast
du die Firewall ausgelagert. Ich schaetze mal, IP-Stack und Firewall
sind wahrscheinlich die mit am meisten getesteten und reviewten
Bereiche im Kernel und relativ 'stable'. Interessanter ist es, den
zugehoerigen Treiber und einzelnen Server zu isolieren.


> Meine Vorstellung die Internet-Schnittstelle als PCI-Device zur VM 
> durchzureichen klappt allerdings auch nicht. Das wäre wahrscheinlich der 
> beste Ansatz.

Genau. Die Strategie wuerde zB mit Xen oder anderen Mikrokerneln Sinn
ergeben, wo du Treiber und IP Stack aus der 'Dom0' rausnehmen kannst.
Ich weiss nicht ob Xen das in der 'Verkaufsversion' unterstuetzt, aber
es gibt dort definitiv die Idee einer verteilten Dom0.

Soweit ich sehe kann KVM keine PCI-Devices durchreichen, wohl aber USB.
Ich hab das mal mit einem Gadget gemacht bei dem nur Windows-Treiber
vorhanden waren. Problem war bisher, dass beim entfernen oder neu
initialisieren im Gast-OS der Host das Geraet wieder herausgetrennt
hat. Man will diesen support aber wohl weiter ausbauen.

> Wie stelle ich eine Bridge her ohne dass darüber Kommunikation an der 
> Firewall vorbei läuft? Unter Windows bindet man TCP/IP nicht an die 
> Karte aber wie gehts unter Linux?

Dabei faellt mir ein dass es auch ein Problem gibt oder gab, dass Linux
nicht so recht zwischen den Interfaces unterscheidet. Ich glaube es war
so, dass ein Service auch Packete von Interfaces sieht an die er sich
nicht gebunden hat. Da muss iptables oder die Anwendung filtern oder
irgendein sysctl gesetzt werden. Ist eventuell schon veraltet, k.A.


/steffen



Mehr Informationen über die Mailingliste linux-l