Linux DHCP Server, Client über Mac Adresse?
Hallo,
Ich habe die folgende Aufgabe bekommen (siehe Screenshot) Ich habe soweit alles fertig und funktionsfähig bis auf den letzten Teil, bei dem der Client mit der MAC Adresse konfiguriert werden soll. Ich habe den DHCP Server auf einem Linux Server laufen, der Client der mit einer MAC Adresse konfiguriert werden soll ist ein Ubuntu Desktop Client. Leider weiß ich nicht wie ich vorgehen soll und Online finde ich auch nichts dazu, könnte mir da jemand weiterhelfen?
3 Antworten
Steht doch in der dort verlinkten Wiki-Seite: https://wiki.ubuntuusers.de/ISC-DHCPD/#Host-Bloecke
Du musst also die dhcpd.conf bearbeiten und einen solchen Host-Block hinzufügen. Dann speichern und ggf. die Config reloaden lassen bzw. DHCP-Server neustarten.
Mit statischer IP meinst du eine vom Client selbst ausgewählte? In dem Fall wird der DHCP Server gar nicht kontaktiert. Schlussendlich entscheidet jeder Client im Netzwerk selbst, welche IP er denn nun möchte. Üblicherweise wird aber natürlich ein DHCP Server angefragt und die davon erhaltene Netzwerkkonfiguration übernommen.
Über die MAC-Adresse kann man sich nicht verbinden. Der Client wählt initial die 0.0.0.0 und sendet an 255.255.255.255. Der DHCP-Server antwortet mit einem Angebot an 0.0.0.0. Verstehe darum nicht genau, was du damit meinst …
Hier in der Aufgabe jedenfalls musst du einer MAC-Adresse (also einem Gerät) immer dieselbe Adresse zuweisen. Normalerweise wählt der DHCP-Server einfach eine freie aus. Dafür musst du eben einen solchen Host-Block definieren.
Ja war ein wenig falsch formuliert. in meinem dhcp server sieht es ungefähr so aus:
# Definition des ersten (einzigen) Subnetzes
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.10 192.168.2.40;
interface enp0s3;
# Lease-Time in Sekunden (Vorgaben: default 43200, max 86500)
default-lease-time 3600;
max-lease-time 7200;
option domain-name "ubuntuusers.home";
option domain-name-servers 192.168.2.1;
option broadcast-address 192.168.2.255;
option subnet-mask 255.255.255.0;
option routers 192.168.2.1;
Ich habe einen Client der sich mit der .10 verbindet, welches ja auch in der Range (.10 - .40) festgelegt ist und das soll ja auch sein, der zweite Client verbindet sich aber auch immer automatisch mit der .11 welcher auch in der Range liegt, dieser soll sich aber mit der .240 verbinden. Meine Frage war jetzt genau, das ich nicht wirklich weiß wie ich den Client davon abhalte sich mit einer der IP's aus der Range zu verbinden. Ich hoffe das war etwas verständlicher
Dafür musst du wie gesagt einen solchen Host-Block deiner Config hinzufügen. Damit sagst du, dass eine MAC-Adresse (also jene von deinem zweiten Client), stets die fixe Adresse 192.168.2.240 erhalten soll. Sieht dann etwa so aus:
host client2 {
# Hier bei hardware ethernet MAC-Adresse einfügen.
hardware ethernet 00:00:0e:d2:da:
fixed-address 192.168.2.240;
host-name "client2";
}
Dein DHCP Server benötigt einen Eintrag in der Konfigurationsdatei, ähnlich zu
host hostname.localdomain.xx {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.157.240;
option host-name "hostname.localdomain.xx";
}
Die MAC Adresse (hardware ethernet) steht jedoch nicht in der Aufgabe, daher oben ein dummy Eintrag. Die lokale Domain / bzw. der "hostname" sind auch nicht gegebenm daher auch das nur Platzhalter.
Ein DHCP Server merkt sich die MAC damit der wenn das Gerät wieder kommt die gleiche IP Adresse vergibt.
Das kann man auch selber einstellen, also IP Adressen für bestimmte MAC reservieren.
Und das wird hier verlangt.
Das musst Du dann im DHCP Server konfigurieren. Welcher Art das Gerät mit der vorgegebenen MAC ist, das ist egal.
Das mit dem Ubuntu bezieht sich auf die Maschine auf der der DHCP Server läuftm nicht auf die Maschine mit der bestimmten MAC die dann eine bestimmte IP zugewiesen bekommen soll.
Der Client verbindet sich immer direkt mit einer Statischen IP. Wie kann ich denn spezifisch für nur einen bestimmten Client die Möglichkeit blockieren sich dynamisch zu verbinden, sodass er sich mit der MAC Adresse verbinden muss.
Tut mir leid falls ich da auf der verlinkten Seite irgendwas überlese oder sonstiges :D