Weisen Sie einem VirtualBox-Gast mit einem NAT-Netzwerk eine statische IP-Adresse zu, ohne auf den Gast zuzugreifen

1

Ich verwende VirtualBox 5.2.18 auf Ubuntu Server 18.04. Ich habe mehrere VirtualBox-Gastmaschinen, die sich ein NAT-Netzwerk teilen intnet. Hat derzeit intneteinen DHCP-Server (von VirtualBox eingerichtet), der den Gästen automatisch dynamische IPs zuweist. Dies funktioniert einwandfrei, aber ich möchte, dass der DHCP-Server bestimmten Gästen statische IP-Adressen basierend auf der MAC-Adresse ihrer Netzwerkschnittstelle zuweist. Statische IP-Adressen können in den Gastsystemen festgelegt werden. Dies ist jedoch zeitaufwändig und vom Gastsystem abhängig. Gibt es in VirtualBox eine Möglichkeit, den Gästen statische IP-Adressen zuzuweisen?

Im VirtualBox-Installationsordner befindet sich eine ausführbare Datei mit dem Namen VBoxNetDHCP. Gemessen an der Ausgabe von VBoxNetDHCPscheint es statische IP-Zuweisungen nach MAC-Adresse zu ermöglichen. Ich kann es jedoch nicht zum Laufen bringen, und es gibt praktisch keine Dokumentation dafür.

Mohamed Laradji
quelle
2
Wenn ich dies tue, verwende ich eine andere kleine VM, um meinem internen Netzwerk DHCP, DNS für eine gefälschte Domäne usw. bereitzustellen. Mit Debian 9 können Sie nach der Installation bis zu 128 MB RAM und vielleicht 1,5 GB Festplattenspeicher verwenden.
Ivanivan
Ich neige dazu, @ivanivan. Haben Sie zufällig ein Tutorial zur Hand?
Mohamed Laradji
Ich werde es als Antwort posten, gib mir ein paar ...
ivanivan

Antworten:

1

Wenn ich so etwas mache (und ich mache es oft), benutze ich normalerweise eine VM, die als Netzwerkserver fungiert und Dinge wie DHCP, DNS ausführt - sowohl Caching für die Welt als auch lokales Spoofing fake.tld- usw.

Der einfachste Weg ist eine einfache Installation von Debian über das Netinstall-Image - wählen Sie keine der Paketgruppen außer der SSH-Server-Option und vielleicht "Standard-Utilities".

Installieren Sie das isc-dhcp-serverPaket, sobald es betriebsbereit ist, um es in einen DHCP-Server für Ihr internes VM-Netzwerk zu verwandeln . Dann editieren/etc/dhcp/dhcpd.conf

Hier ist ein einfaches Beispiel von mir. Dies legt eine kurze Lease-Zeit (5 Minuten) fest, setzt die Client-Suchdomäne usw. auf "fake.tld", verweist ihre DNS-Abfragen auf 192.168.1.2 und gibt Adressen im Bereich von 10.99.98.80-100 mit aus 24 Bit Netzmaske. Beachten Sie, dass für die VM hierfür ein Adapter mit einer IP-Adresse im Subnetz 10.99.98.0/24 konfiguriert sein muss.

Zusätzlich zum allgemeinen Pool gebe ich dem Gerät die MAC-Adresse 80:c1:6e:2b:b6:cdeines explizit definierten Leases (sowie eines anderen optionwie DNS-Server, Gateway usw.) für die .110IP. Solche "statischen Leases" müssen sich auf Adressen AUSSERHALB Ihres dynamischen Bereichs befinden, jedoch innerhalb des Subnetzes, das sowohl in der Konfigurationsdatei als auch auf dem Netzwerkadapter des Computers konfiguriert ist, auf dem sich der Dienst befindet.

Wenn Sie einen neuen Host hinzufügen und eine bestimmte IP-Adresse festlegen möchten, fügen Sie einfach eine weitere Host-Zeilengruppe hinzu. Der Hostname muss nicht mit dem vom Client gesendeten übereinstimmen, muss jedoch in der Datei eindeutig sein. Starten Sie den Dienst neu, nachdem Sie ihn hinzugefügt habenservice isc-dhcp-server restart

ddns-update-style none;
option domain-name "fake.tld";
option domain-name-servers 192.168.1.2;
option domain-search "fake.tld";
default-lease-time 600;
max-lease-time 720;
authoritative;
log-facility local7;

subnet 10.99.98.0 netmask 255.255.255.0{
    range 10.99.98.80 10.99.98.100;
    option routers 10.99.98.1;
}

host lr-tv {
    hardware ethernet 80:c1:6e:2b:b6:cd;
    fixed-address 10.99.98.110;
    option routers 10.99.98.1;
    option domain-name-servers 192.168.1.2;
}
ivanivan
quelle
Dies hat bei mir funktioniert, mit der Ausnahme, dass: 1. Meine DHCP-VM verwendet Ubuntu Server(was darauf basiert Debian) anstatt Debian. Ich habe das gleiche isc-dhcp-serverPaket installiert . 2. Mein internes Netzwerk ( intnetin meiner Frage) ist 192.168.1.0/24, und ich habe option routers 192.168.1.1;und verwendet option domain-name-servers 192.168.1.1;. Ich konnte sagen, welche IP ich verwenden soll nmap -sn 192.168.1.0/24. 3. Ich habe die Optionen definiert routersund domain-name-serversglobal, indem ich sie /etc/dhcp/dhcpd.confnach der Zeile hinzufügte # option definitions common to all supported networks....
Mohamed Laradji