DHCP

DHCP steht für <I>Dynamic Host Configuration Protocol</I> und ist ein Protokoll, mit dem sich ein Computer selbständif fürs Netzwerk konfigurieren kann.

Hinweis
Falls beim Start des DHCPs ein Fehler kommt, muss man ihn vorher evtl. auf eth1 (statt standardmässig eth0) um konfigurieren.
Bei Debian geht das so:

vi /etc/default/dhcp

, dort das verwendete (interne) interface eintragen und mittels:

dpkg-reconfigure dhcp

neu Konfigurieren.

Nun öffnen wir die DHCP Konfigurations-Datei mittels: vi /etc/dhcpd.conf -Falls diese Datei noch nicht existiert, muss sie erstellt werden.
Darin schreiben wir folgendes (evtl. schon vorhandenen Text löschen):

subnet 10.1.1.0 netmask 255.255.255.0
{
  # Global options
  range 10.1.1.100 10.1.1.240;
  option subnet-mask 255.255.255.0;
  option routers 10.0.0.1;
  option domain-name-servers 10.1.1.3;
  option domain-name "home.lan";
  option ip-forwarding on;
  option netbios-node-type 1;
}

Mit dem obigen Code definieren wir mit der Zeile subnet 10.1.1.0 netmask 255.255.255.0 ein Klasse-A-Netzwerk (10.1.1.x) mit der Netzmaske: 255.255.255.0, dies entspricht der Konfiguration, die wir im ersten Artikel bei allen Computern eingetragen haben.
Innerhalb der geschweiften Klammern können wir dann angeben, wie die einzelnen PCs konfiguriert werden sollen:

  • der DHCP-Server IP-Adressen von 10.1.1.100-10.1.1.240 vergeben kann <SMALL>(range 10.1.1.100 10.1.1.240)</SMALL>
  • die subnet maske immer auf 255.255.255.0 gesetzt wird <SMALL>(option subnet-mask 255.255.255.0;)</SMALL>
  • Das Standard Gateway auf: 10.1.1.1 <SMALL>(option routers 10.1.1.1;)</SMALL>
  • Der DNS Server auf 10.1.1.3 (Das wird später unser DNS) <SMALL>(option domain-name-servers 10.1.1.3;)</SMALL>
  • Das DNS Suffix auf home.lan gesetzt wird; d.h. es werden allen lokalen Namen der Zusatz home.lan angehängt. So kann man später einfach pc01 wählen, anstatt der volle Name: pc01.home.lan. Dies macht natürlich nur Sinn, wenn man nachher den DNS Server noch aufsetzt… g<SMALL>(option domain-name "home.lan";)</SMALL>
  • IP-Forwarding aktiviert wird <SMALL>(option ip-forwarding on;)</SMALL><LI>NetBIOS über TCP/IP aktiviert wird <SMALL>(option netbios-node-type 1;)</SMALL>

Nun würden alle PCs jeweils eine zufällige IP-Adresse von 10.1.1.100 bis 10.1.1.240 bekommen, was zwar ganz praktisch ist, wenn mal ein fremder PC ans Netzwerk angeschlossen wird, aber eher weniger geeignet, für unsere festen PCs, da wir uns ja dann nie recht wüssten was für eine IP wir gerade haben. Deshalb geben wir den festen PCs im Netzwerk auch eine feste IP-Adresse.
Diese definieren wir mit:

host pc-name
{
  hardware ethernet 00:00:00:00:00:00;
  fixed-address 0.0.0.0;
}

host pc-name leitet hier die Konfiguration für den PC mit dem namen pc-name ein, die Optionen in den geschweiften Klammern bedeuten:

  • Die Physikalische Adresse der Netzwerkkarte des PCs pc-name (du findest diese Adresse raus, wenn du in Windows 2000/XP unter Start-Ausführen-cmd ipconfig /all eingibst*) <SMALL>(hardware ethernet 00:00:00:00:00:00; )</SMALL>
  • Die feste IP Adresse, z.B. 10.0.0.10 für den ersten PC <SMALL>(fixed-address 0.0.0.0;)</SMALL><SMALL>*Windows zeigt die Hardware-Adresse in der Form 00-AA-00-00-00-00 an; für die DHCP-Konfiguration musst du aber : als Trenner verwenden und nicht -!</SMALL>

Ein solcher host-block musst du nun für jeden PC im Netzwerk definieren, der eine feste IP-Adresse bekommen soll; diese Blöcke müssen wiederum innerhalb des subnet-blocks stehen.
Für unsere 3 PCs aus dem ersten Beitrag sähe die Konfigurationsdatei dhcpd.conf also so aus (Die Physikalischen Adressen sind rein zufällig und müssen angepasst werden!):

################################################################################
#                                                                              #
# DHCP Configuration for home.lan on eth1                                 #
#                                                                              #
################################################################################
 
subnet 10.1.1.0 netmask 255.255.255.0
{
  #Globale Optionen
  range 10.1.1.100 10.1.1.240;
  option subnet-mask 255.255.255.0;
  option routers 10.0.0.1;
  option domain-name-servers 10.1.1.3;
  option ip-forwarding on;
  option netbios-node-type 1;
 
  #Einzelkonfigurationen
  host pc01
  {
    hardware ethernet 00:FF:00:33:00:BB;
    fixed-address 10.1.1.10;
  }
  host pc02
  {
    hardware ethernet BB:00:20:00:FF:00;
    fixed-address 10.1.1.20;
  }
  host pc03
  {
    hardware ethernet 22:FF:00:00:00:AA;
    fixed-address 10.1.1.30;
  }
 
}

Damit hättest du den DHCP-Server auch schon fertig konfiguriert!
Nun kannst du den DHCP-Server starten mit:

/etc/init.d/dhcp start

Related Links

|| Link | Beschreibung
[http://www.geo.uni-bonn.de/members/kuepper/linux/DHCP.txt|DHCP-Textfile] | Umfangreiche Informationen über die Einstellungsmöglichkeiten beim DHCPD
||

Schreibe einen Kommentar

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