DHCP Server mit Mac OS X


Heute hatte ich den Fall, dass ich “ein Gerät” auf seine Werkseinstellungen zurücksetzen musste und das gute Teil bootet danach per default als DHCP Client.

Also war meine nächste Idee, dass ich einen eigenen, lokalen DHCP Server aktiviere/intstalliere, damit mein Geräte darüber eine nachvollziehbare IP-Nummer erhält. Eigentlich habe ich mir gedacht, ich verwende einfach irgendeine Dritt-App, doch es geht auch mich Mac Bordmitteln.

Ich versuch mal in kurzen Worten zu beschreiben, wie man vorgehen muss.

  1. Damit man den DHCP Server von Mac OSX aktivieren kann, benötigt man eine plist-Datei, die standardmässig nicht vorhanden ist.
    Diese trägt den Dateinamen “bootpd.plist” und muss in /etc abgelegt werden.
    Den Inhalt dieser Datei füge ich am Ende dieses Artikel noch ein. Von dort könnte ihr euch ihn dann kopieren.
    Mit einem Text-Editor (wie BBedit) eine neue Datei erstellen, dort besagten Konfig-Inhalt reinkopieren und diese Datei mit dem Namen “bootpd.plist” auf den Desktop speichern. (Hinweis: Ich konnte von BBedit aus nicht direkt in /etc die Datei sichern – darum erst auf den Schreibtisch.)
  2. Vom Schreibtisch aus kann man die Datei dann per Drag&Drop ins Verzeichnis /private/etc
  3. Das Verzeichnis findet man am leichtesten, mit der Tastenkombination SHIFT-Command und die Taste . (Punkt). Damit werden die versteckten Dateien sichtbar (nochmaliges drücken lässt diese wieder verschwinden.
  4. Ist die Datei dann einmal kopiert (Passwort wird abgefragt), dann man mit folgenden Befehl den DHCP-Server starten:
sudo /bin/launchctl load -w /System/Library/LaunchDaemons/bootps.plist

Nachdem Aktivieren des DHCP-Servers vergibt dieser IP-Nummern im Bereich von 192.168.222.2 bis 192.168.222.255.
Man könnte dann zum Beispiel die 192.168.222.1 für die lokale Maschine (also in meinem Fall dem MacBook) vergeben.

Mit diesem Befehl wir der DCHP-Server wieder ausschaltet:

sudo /bin/launchctl unload -w /System/Library/LaunchDaemons/bootps.plist

Und wie oben beschrieben, findet ihr jetzt hier im Anschluss noch den Inhalt, welchen ihr in eure bootpd.plist einfügen müsst:

ACHTUNG: Nachdem ich das Ganze mit meiner externen NIC gemacht habe, ist diese aller Wahrscheinlichkeit nach nicht en0. Kurzes ifconfig hilft hier, um den Parameter in Zeile 12 anzupassen.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>bootp_enabled</key>
    <false/>
    <key>detect_other_dhcp_server</key>
    <integer>1</integer>
    <key>dhcp_enabled</key>
    <array>
        <string>en0</string>
    </array>
    <key>reply_threshold_seconds</key>
    <integer>0</integer>
    <key>Subnets</key>
    <array>
        <dict>
            <key>allocate</key>
            <true/>
            <key>lease_max</key>
            <integer>86400</integer>
            <key>lease_min</key>
            <integer>86400</integer>
            <key>name</key>
            <string>192.168.222</string>
            <key>net_address</key>
            <string>192.168.222.0</string>
            <key>net_mask</key>
            <string>255.255.255.0</string>
            <key>net_range</key>
            <array>
                <string>192.168.222.2</string>
                <string>192.168.222.254</string>
            </array>
        </dict>
    </array>
</dict>
</plist>

Vielen Dank an folgende URLs:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.