LinuxFanClub Wiki

Υπηρεσίες, Προγραμματισμός, Εκπαίδευση ..

User Tools

Site Tools


el:linux:debian:server:dhcp

dhcpd - υπηρεσία dhcp

Εγκατάσταση

aptitude install dhcp3-server

Ρυθμίσεις

Βασική

Τροποποιούμε το αρχείο /etc/dhcp3/dhcpd.conf

Ένα τυπικό αρχείο είναι μπορεί να είναι το παρακάτω

option domain-name "mynet.local";
option domain-name-servers 2.2.2.2, 3.3.3.3;
option routers 192.168.1.200;
#option nis-domain "mynet.local";
option nis-servers 192.168.1.200;
ddns-update-style none;
default-lease-time 14400;
subnet 192.168.1.0 netmask 255.255.255.0 {
  authoritative;
  range 192.168.1.110 192.168.1.190;
  default-lease-time 14400;
  max-lease-time 172800;
}

Σταθερές ip μέσω dhcp

Εάν θέλουμε να δίνουμε τις ίδιες ip πάντα σε συγκεκριμένους υπολογιστές, μπορούμε με βάση την mac address τους.

Για παράδειγμα

host pentium {
  option host-name "mypc.mynet.local";
  hardware ethernet 00:80:48:28:92:3A;
  fixed-address 192.168.100.20;
}

interfaces

Εάν θέλουμε να ορίσουμε σε ποια interfaces ακούει ο dhcp server, τροποποιούμε το αρχείο /etc/default/dhcp3-server

INTERFACES="eth0"

Για να ακούει σε όλα το αφήνουμε κενό

INTERFACES=""

Release on Shutdown - Windows XP

Στα ΛΣ Linux, Windows Vista, Windows 7 οι clients κατά τον τερματισμό τους απελευθερώνουν την ip που έχουν πάρει από τον server. Στα Windows XP προκαθορισμένα δεν την απελευθερώνουν. Προσθέτωντας τις παρακάτω γραμμές στο dhcpd.conf ορίζουμε και σε αυτούς τους clients να απελευθερώνουν την ip κατά τον τερματισμό.

# For Microsoft Windows 2000 and XP clients to release on reboot
option space MSFT;
option MSFT.release-on-shutdown code 2 = unsigned integer 32;
class "win2k-clients" {
  match if option vendor-class-identifier = "MSFT 5.0";
  send fqdn.server-update true;
  send fqdn.no-client-update true;
  vendor-option-space MSFT;
  option MSFT.release-on-shutdown 1;
}

Άλλα

Leases

Οι ip διευθύνσεις που έχουν ήδη δοθεί από τον dhcp server καταγράφονται στο αρχείο /var/lib/dhcp3/dhcpd.leases

LTSP Load Balancing

Για την ρύθμιση του dhcp server ώστε να δίνει πληροφορίες σε pxes clients από ποιον ltsp server θα ξεκινήσουν βλ. LTSP

Εάν θέλουμε να διαμοιράσουμε τον φόρτο και σε έναν 2ο ltsp server ένας απλοϊκός τρόπος είναι να φιλτράρουμε με βάση την mac address των clients στέλνοντας τους μισούς στον έναν server και τους άλλους μισούς στον άλλον.

subnet 192.168.1.0 netmask 255.255.255.0 {
  authoritative;
  default-lease-time 14400;
  max-lease-time 172800;
  class "even" {
    match if suffix(binary-to-ascii(2, 8, "", substring(hardware, 6, 1)), 1) = "1";
  }
  class "odd" {
    match if suffix(binary-to-ascii(2, 8, "", substring(hardware, 6, 1)), 1) = "0";
  }
  pool {
    range 192.168.1.110 192.168.1.140;
    allow members of "even"; 
    option broadcast-address 192.168.1.255;
    option root-path "/opt/ltsp/i386";
    next-server 192.168.1.11;
    if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
      filename "/ltsp/i386/pxelinux.0";
    } else {
      filename "/ltsp/i386/nbi.img";
    } 
  }  
  pool {
    range 192.168.1.141 192.168.1.170;
    allow members of "odd";
    option broadcast-address 192.168.1.255;
    option root-path "/opt/ltsp/i386";
    next-server 192.168.1.12;
    if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
      filename "/ltsp/i386/pxelinux.0";
    } else {
      filename "/ltsp/i386/nbi.img";
    }
  }
}

Η παραπάνω ρύθμιση στέλνει τους clients που η mac address τους τελειώνει σε άρτιο αριθμό στον ltsp server με ip 192.168.1.11 και τους υπόλοιπους στον 192.168.1.12.

Πηγές

el/linux/debian/server/dhcp.txt · Last modified: Y/m/d H:i by vagk