{"id":936,"date":"2011-10-24T16:52:06","date_gmt":"2011-10-24T14:52:06","guid":{"rendered":"http:\/\/www.daniel-ritter.de\/blog\/?p=936"},"modified":"2011-10-25T15:09:37","modified_gmt":"2011-10-25T13:09:37","slug":"howto-quick-and-dirty-dhcp-server-und-dns-cache-mit-dnsmasq-unter-debian","status":"publish","type":"post","link":"https:\/\/www.daniel-ritter.de\/blog\/howto-quick-and-dirty-dhcp-server-und-dns-cache-mit-dnsmasq-unter-debian\/","title":{"rendered":"Howto: Quick and dirty DHCP-Server und DNS-Cache mit dnsmasq unter Debian"},"content":{"rendered":"<p><a href=\"https:\/\/www.daniel-ritter.de\/blog\/wp-content\/uploads\/2011\/10\/dnsmasq.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.daniel-ritter.de\/blog\/wp-content\/uploads\/2011\/10\/dnsmasq.jpg\" alt=\"\" title=\"dnsmasq\" width=\"300\" height=\"225\" class=\"alignleft size-full wp-image-946\" \/><\/a>DHCP im LAN ist praktisch. Man muss nicht mehr die Netzwerkkonfiguration jedes einzelnen Rechners im Netzwerk an den Clients selbst verwalten, sondern hat alles sch\u00f6n zentral auf dem Server. Durch DNS-Caching sparen die Clients ein wenig Zeit beim Aufl\u00f6sen von Hostnames, da die Anfragen f\u00fcr bekannte Hostnames vom lokalen Cache \u00fcbernommen werden k\u00f6nnen und nicht mehr an einen Server im Internet gestellt werden m\u00fcssen.<\/p>\n<div height=20><\/div>\n<p>Ein kleiner DHCP-Server ist mit dnsmasq sehr schnell eingerichtet.<\/p>\n<pre>\r\n# dnsmasq installieren\r\napt-get install dnsmasq\r\n<\/pre>\n<p>Die Konfiguration findet zentral in der Datei \/etc\/dnsmasq.conf statt. Man sollte sich vor den geballten Konfigurationsoptionen in der Datei nicht abschrecken lassen. So gut wie alles dient nur als Beispiel und ist per default auskommentiert. Eine sehr kurze Konfig reicht bereits f\u00fcr ein funktionierendes Setup:<\/p>\n<p><strong>DHCP<\/strong><\/p>\n<pre>\r\n# DHCP netmask\r\n# Clients bekommen 255.255.255.0 als Netmask\r\ndhcp-option=1,255.255.255.0\r\n\r\n# default gateway\r\n# Clients bekommen als Gateway 192.168.1.251\r\ndhcp-option=3,192.168.1.251\r\n\r\n# dns\r\n# Clients bekommen als Nameserver 192.168.1.4\r\n# Falls man dnsmasq auch als DNS-Cache benutzen m\u00f6chte, sollte dies die\r\n# IP des Servers sein, auf dem dnsmasq l\u00e4uft\r\ndhcp-option=6,192.168.1.4\r\n\r\n\r\n# F\u00fcr bekannte Rechner immer dieselbe IP anhand der MAC-Adresse vergeben:\r\n# Hier bekommt der Rechner mit der MAC 00:11:22:33:44:55 die IP 192,168.1.1 f\u00fcr 12 Stunden\r\n\r\ndhcp-host=00:11:22:33:44:55,lobby,192.168.1.1,12h\r\ndhcp-host=00:11:22:33:44:66,lobby2,192.168.1.2,12h\r\n\r\n# Alle Rechner, die nicht per MAC identifiziert werden k\u00f6nnen, erhalten IPs\r\n# aus dem Pool 192.168.1.120 bis 150\r\n\r\ndhcp-range=192.168.1.120,192.168.1.150,12h\r\n\r\n<\/pre>\n<p><strong>DNS<\/strong><\/p>\n<p>Die DNS-Funktionalit\u00e4t von dnsmasq ben\u00f6tigt eigentlich keine Konfiguration.<br \/>\ndnsmasq besorgt sich seine Nameserver aus \/etc\/resolv.conf . Hier sollten die<br \/>\nbekannten Nameserver des Providers eingetragen werden und evtl noch als Fallback<br \/>\ndie 8.8.8.8 f\u00fcr Googles DNS-Server.<\/p>\n<p>Weitere Hostnames, die im lokalen Netz gelten sollen, k\u00f6nnen dnsmasq in der Datei<br \/>\n\/etc\/hosts bekannt gemacht werden. Hier eingetragene Hostnames stehen allen Rechnern<br \/>\nim LAN zur Verf\u00fcgung.<\/p>\n<p><strong>Fallstricke<\/strong><\/p>\n<p>dnsmasq muss nach Konfig\u00e4nderungen seine Konfigurationsdateien neu einlesen<\/p>\n<pre>\r\n\/etc\/init.d\/dnsmasq restart\r\n<\/pre>\n<p>Falls Clients noch eine Lease vom alten DHCP-Server haben, kann man sie manuell dazu bringen, einen neuen DHCP-request zu starten.<\/p>\n<pre>\r\n#Linux\r\ndhclient eth0\r\n\r\n#Windows\r\nipconfig \/RELEASE\r\nipconfig \/RENEW\r\n<\/pre>\n<p>Dringend muss man darauf achten, den bisher genutzen DHCP-Server (meistens im Router zum Internet) zu deaktivieren. 2 DHCP-Server im LAN k\u00f6nnen viel Chaos generieren.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>DHCP im LAN ist praktisch. Man muss nicht mehr die Netzwerkkonfiguration jedes einzelnen Rechners im Netzwerk an den Clients selbst verwalten, sondern hat alles sch\u00f6n zentral auf dem Server. Durch DNS-Caching sparen die Clients ein wenig Zeit beim Aufl\u00f6sen von Hostnames, da die Anfragen f\u00fcr bekannte Hostnames vom lokalen Cache \u00fcbernommen werden k\u00f6nnen und nicht [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[136],"class_list":["post-936","post","type-post","status-publish","format-standard","hentry","category-ubuntu","tag-dnsmasq-dns-dhcp"],"_links":{"self":[{"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/posts\/936","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/comments?post=936"}],"version-history":[{"count":11,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/posts\/936\/revisions"}],"predecessor-version":[{"id":951,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/posts\/936\/revisions\/951"}],"wp:attachment":[{"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/media?parent=936"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/categories?post=936"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.daniel-ritter.de\/blog\/wp-json\/wp\/v2\/tags?post=936"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}