Step by Step - DHCP und DNS unter SuSe Linux

  • Published on
    24-Mar-2016

  • View
    213

  • Download
    0

DESCRIPTION

 

Transcript

  • Step by Step DHCP und DNS unter SuSe Linux

    von Christian Bartl

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 2 von 10

    DHCP und DNS unter SuSe Linux

    1. Konfigurieren des DHCP Servers Dazu muss die /etc/dhcpd.conf editiert werden. Hier werden die Netze eingetragen, aus denen die IP Adressen verteilt werden. Man kann mit dem DHCP Server auch noch Zusatzinformationen mitschicken. Z.B.: Domainnamen, DNS Server, usw.

    option broadcast-address 192.168.1.255; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.1.254; option domain-name "unet19.htl.at"; subnet 192.168.1.0 netmask 255.255.255.0 {

    range 192.168.1.10 192.168.1.20; default-lease-time 86400; max-lease-time 86400; # 86400 sekunden => 24 Stunden => 1 Tag

    }

    Jetzt muss noch festgelegt werden, auf welchem Interface sich Dhcp Server verbinden soll. In diesem Fall wre es das eth1. Dies wird in der Datei /etc/sysconfig/dhcpd eingestellt. Natrlich muss dieses Interface eine passende IP Adresse bekommen, sonst lsst sich der Dhcp Server nicht starten.

    DHCPD_INTERFACE="eth1" DHCP-Server starten: rcdhcpd start

    2. Konfigurieren des DNS Servers Um den DNS Server zu konfigurieren, muss man die /etc/named.conf editieren. Es mssen die Zonen eingetragen werden, fr die der DNS Server zustndig ist. Fr jede Zone die konfiguriert wird, muss ein eignes Zonefile erstellt werden, aber dazu spter. Die erste Zone ist fr die Vorwrtsauflsung der unet19.htl.at Domain und die Zweite ist fr die Rckwertsauflsung.

    zone "unet19.htl.at" { type master; file " unet19.htl.at.zone"; }; zone "1.168.192.in-addr.arpa" { type master; file 192.168.1.zone"; };

    Nun fehlen noch die vorher erwhnten Zonenfiles. Diese Zonenfiles mssen im Verzeichnis /var/lib/named/ selbst angelegt werden.

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 3 von 10

    /var/lib/named/unet19.htl.at.zone

    unet19.htl.at IN SOA unet19.htl.at. root.unet19.htl.at. ( 2005122808 ; Serial 8H ; Refresh 8 hours 2H ; Retry 2 hours 1W ; Expire 1 week 1D ; Minimum 1 day ) IN NS Fischi.unet19.htl.at.

    Notebook IN A 192.168.1.20 /var/lib/named/192.168.1.zone

    1.168.192.in-addr.arpa IN SOA unet19.htl.at. root.unet19.htl.at. ( 2005122807 ; Serial 8H ; Refresh 8 hours 2H ; Retry 2 hours 1W ; Wxpire 1 week 1D ) ; Minimum 1 day

    IN NS Fischi.unet19.htl.at. 20 IN PTR Notebook.unet19.htl.at.

    3. Konfiguration des DDNS Servers Der unterschied zum DNS Server ist der, dass die Eintrge in die Zonefiles nicht mehr selbst statisch eingetragen werden mssen, sonder selbstndig generiert wird. Dazu muss der DNS Server mit dem DHCP Server kommunizieren. Wenn der DHCP Server eine IP Adresse verteilt, fragt er das Gert nach seinem Namen. Dieser Name wird nun eingetragen und der DNS Server kann diesen Namen auflsen. Um dieses zu realisieren erfordert es die dhcpd.conf und named.conf zu bearbeiten. /etc/dhcp.conf

    ddns-update-style interim; ignore client-updates; include "/etc/named.keys"; #unet19.htl.at. subnet subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.20; default-lease-time 86400; max-lease-time 86400;

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 4 von 10

    zone unet19.htl.at. { primary 192.168.1.254; key DHCP_UPDATER; } zone 1.168.192.in-addr.arpa. { primary 192.168.1.254; key DHCP_UPDATER; } }

    /etc/named.conf

    options { # The directory statement defines the name server's working directory directory "/var/lib/named"; notify no; }; #Unet19 zone einstellungen fr das lokale netzwerk zone "unet19.htl.at" { type master; file "dyn/unet19.htl.at.zone"; allow-update { key DHCP_UPDATER; }; }; zone "1.168.192.in-addr.arpa" { type master; file "dyn/192.168.1.zone"; allow-update { key DHCP_UPDATER; }; }; include "/etc/named.conf.include";

    /etc/named.conf.include include "/etc/named.keys";

    /etc/named.keys

    # generated by genDDNSkey on Thu Feb 2 09:53:42 CET 2006

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 5 von 10

    key DHCP_UPDATER { algorithm hmac-md5; secret "04glJCUEFXPmZsgT01eH7HfaZxvtcxHm9o0ksxg9paiQAj84dgia9jqF6a49hjSuYIl97Wb+1OU3xlGAVohiBw=="; };

    Dieses File wird mittels eines Skripts erzeugt.

    linux:/usr/bin # genDDNSkey -help Usage: genDDNSkey Options:

    -f|--key-file includable key is written to this file (default: /etc/named.keys) -n|--key-name name of the key (default: DHCP_UPDATER) -d|--key-dir public / private key directory (default is key-file directory) -r|--random random device to use (default: /dev/random) --force overwrite an existing key file --help print usage info See /usr/share/doc/packages/dhcp-server/DDNS-howto.txt (in dhcp-server package) about configuration of a DHCP server to do DDNS updates.

    Die verndert Zonefiles findet man am Ende dieses Protokolls.

    Achtung: Die Basisverzeichnisse und auch die Unterverzeichnisse fr den Dns Server und den Dhcp Server bentigen schreib und lese Rechte fr die Benutzer. Die betroffenen Verzeichnisse sind /var/lib/named und /var/lib/dhcp.

    linux:/var/lib # chown dhcpd dhcp -R drwxr-xr-x 7 dhcpd root 168 Dec 25 14:17 dhcp linux:/var/lib # ls -l dhcp total 1 drwxr-xr-x 7 dhcpd root 168 Dec 25 14:17 . drwxr-xr-x 51 root root 1328 Feb 8 21:01 .. drwxr-xr-x 2 dhcpd root 112 Feb 8 20:52 db drwxr-xr-x 2 dhcpd root 72 Feb 8 20:45 dev drwxr-xr-x 2 dhcpd root 200 Feb 8 20:51 etc drwxr-xr-x 2 dhcpd root 112 Feb 8 20:51 lib

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 6 von 10

    drwxr-xr-x 3 dhcpd root 72 Dec 25 14:17 var linux:/var/lib # chown named named R drwxr-xr-x 9 named root 312 Feb 8 21:39 named linux:/var/lib # ls -l named total 13 drwxr-xr-x 9 named root 312 Feb 8 21:39 . drwxr-xr-x 51 root root 1328 Feb 8 21:01 .. -rw-r--r-- 1 named root 192 Jul 4 2001 127.0.0.zone drwxr-xr-x 2 named root 120 Feb 8 20:45 dev drwxr-xr-x 2 named named 48 Sep 9 20:46 dyn drwxr-xr-x 3 named root 72 Dec 25 13:54 etc -rw-r--r-- 1 named root 158 Jul 4 2001 localhost.zone drwxr-xr-x 2 named named 48 Sep 9 20:46 log drwxr-xr-x 2 named root 48 Sep 9 20:46 master -rw-r--r-- 1 named root 2517 Sep 9 20:46 root.hint drwxr-xr-x 2 named named 48 Sep 9 20:46 slave drwxr-xr-x 4 named root 120 Dec 25 13:54 var

    Fehlerbehebung: Wenn die Fehlermeldung auftritt, dass der Dns Key nicht korrekt ist, oder so hnlich, sollte man nachsehen, ob die .keys Files in die etc Verzeichnisse der Dhcp und Dns Servers sind. Wenn dies nicht der Fall ist, knnen diese hndisch nachkopiert werden. Diese File sollte in den Verzeichnissen /var/lib/named/etc/xxx.keys und /var/lib/dhcp/etc/xxx.keys liegen. Wenn sie nicht vorhanden sind, kopiert man einfach die named.keys aus dem /etc Verzeichnis in diese beiden Verzeichnisse.

    Am ende mssen dem User named noch Rechte auf die named.keys im Verzeichnis /var/lib/named/etc zugeteilt werden:

    /var/lib/named/etc#chown named named.keys

    4. DHCP- und DNS-Server starten DNS-Server starten: rcnamed start DHCP-Server starten: rcdhcpd start

    Starten mit start Stoppen mit stop Status abfragen mit status

    tail f dateiname gibt immer das Ende der Datei aus und aktualisiert auch die Ausgabe.

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 7 von 10

    Konfigurationsdateien /etc/sysconfig/dhcpd

    ## Path: Network/DHCP/DHCP server ## Description: DHCP server settings ## Type: string ## Default: "" ## ServiceRestart: dhcpd # # Interface(s) for the DHCP server to listen on. # # Instead of the interface name, the name of its configuration can be given. # If the configuration file is named # /etc/sysconfig/network/ifcfg-eth-id-00:50:fc:e4:f2:65 # then id-00:50:fc:e4:f2:65 would be suitable to identify the configuration. # # Examples: DHCPD_INTERFACE="eth0" # DHCPD_INTERFACE="eth0 eth1 eth2 tr0 wlan0" # DHCPD_INTERFACE="internal0 internal1" # DHCPD_INTERFACE="id-00:50:fc:e4:f2:65 id-00:a0:24:cb:cc:5c wlan0" # DHCPD_INTERFACE="eth1" ## Type: yesno ## Default: yes ## ServiceRestart: dhcpd # # Shall the DHCP server dhcpd run in a chroot jail (/var/lib/dhcp)? # # Each time you start dhcpd with the init script, /etc/dhcpd.conf will # be copied to /var/lib/dhcp/etc/. # # Some files that are important for hostname to IP address resolution # (/etc/{hosts,host.conf,resolv.conf,localtime}, /lib/libnss_dns.so.2, # /lib/libresolv.so.2) will also be copied to the chroot jail by the # init script when you start it (about 100kB altogether). # # The pid file will be in /var/lib/dhcp/var/run/dhcpd.pid. # DHCPD_RUN_CHROOTED="yes" ## Type: string ## Default: "" ## ServiceRestart: dhcpd # # Since version 3, dhcpd.conf can contain include statements. # If you enter the names of any include files here, _all_ conf # files will be copied to $chroot/etc/, when dhcpd is started in the # chroot jail. (/etc/dhcpd.conf is always copied.) # # For your convenience, you can also specify entire directories, like # "/etc/dhcpd.conf.d". # # Example: "/etc/dhcpd.conf.shared /etc/dhcpd.conf.bootp-clients" # DHCPD_CONF_INCLUDE_FILES="/etc/named.keys" ## Type: string ## Default: "dhcpd" ## ServiceRestart: dhcpd

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 8 von 10

    /etc/dhcpd.conf

    option broadcast-address 192.168.1.255; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.1.254; option domain-name "unet19.htl.at"; ddns-update-style interim; ignore client-updates; include "/etc/named.keys"; #unet19.htl.at. subnet subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.20; default-lease-time 86400; max-lease-time 86400; zone unet19.htl.at. { primary 192.168.1.254; key DHCP_UPDATER; } zone 1.168.192.in-addr.arpa. { primary 192.168.1.254; key DHCP_UPDATER; } }

    /etc/named.conf

    options { # The directory statement defines the name server's working directory directory "/var/lib/named"; notify no; }; # The following zone definitions don't need any modification. The first one # is the definition of the root name servers. The second one defines # localhost while the third defines the reverse lookup for localhost. zone "." in { type hint; file "root.hint"; }; zone "localhost" in { type master; file "localhost.zone"; allow-update { none; }; };

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 9 von 10

    zone "0.0.127.in-addr.arpa" in { type master; file "127.0.0.zone"; allow-update { none; }; }; #Unet19 zone einstellungen fr das lokale netzwerk zone "unet19.htl.at" { type master; file "dyn/unet19.htl.at.zone"; allow-update { key DHCP_UPDATER; }; }; zone "1.168.192.in-addr.arpa" { type master; file "dyn/192.168.1.zone"; allow-update { key DHCP_UPDATER; }; }; # Include the meta include file generated by createNamedConfInclude. This # includes all files as configured in NAMED_CONF_INCLUDE_FILES from # /etc/sysconfig/named include "/etc/named.conf.include";

    /var/lib/named/dyn/unet19.htl.at.zone

    $ORIGIN. $TTL 86400 unet19.htl.at IN SOA unet19.htl.at. root.unet19.htl.at. ( 2005122808 ; Serial 8H ; Refresh 8 hours 2H ; Retry 2 hours 1W ; Expire 1 week 1D ; Minimum 1 day ) IN NS Fischi.unet19.htl.at. $ORIGIN 1.168.192.in-addr-arpa.

    /var/lib/named/dyn/192.168.1.zone

    $ORIGIN . $TTL 600 1.168.192.in-addr.arpa IN SOA unet19.htl.at. root.unet19.htl.at. ( 2005122807 ; Serial 8H ; Refresh 8 hours

  • Step by Step - DHCP und DNS unter SuSe Linux Christian Bartl

    14.10.2012 Seite 10 von 10

    2H ; Retry 2 hours 1W ; Wxpire 1 week 1D ) ; Minimum 1 day IN NS Fischi.unet19.htl.at. $ORIGIN unet19.htl.at.