{"id":378,"date":"2016-01-26T11:51:30","date_gmt":"2016-01-26T11:51:30","guid":{"rendered":"https:\/\/edulab.unitn.it\/tecnici\/?p=378"},"modified":"2018-02-01T09:00:22","modified_gmt":"2018-02-01T09:00:22","slug":"drbl-con-dhcp-esterno","status":"publish","type":"post","link":"https:\/\/edulab.unitn.it\/tecnici\/drbl-con-dhcp-esterno\/","title":{"rendered":"DRBL con DHCP esterno"},"content":{"rendered":"<p>Durante l&#8217;installazione di DRBL viene installato e attivato un servizio DHCP sul server che ospita il DRBL.<\/p>\n<p><strong>Se abbiamo gi\u00e0 un server DHCP<\/strong> funzionante bisogner\u00e0 disabilitare il server DHCP di DRBL emnodificare le configurazioni in modo che i nostri client possano utilizzare il DHCP esterno.<\/p>\n<p>Per prima cosa installiamo e configuriamo DRBL come descritto sul <a href=\"http:\/\/drbl.sourceforge.net\/installation\/\">sito<\/a>.<\/p>\n<p>Nota: Aggiungi queste righe al source.list<\/p>\n<pre>#DRBL\r\ndeb http:\/\/free.nchc.org.tw\/debian stretch main non-free contrib\r\ndeb-src http:\/\/free.nchc.org.tw\/debian stretch main non-free contrib\r\ndeb http:\/\/free.nchc.org.tw\/drbl-core drbl stable<\/pre>\n<p>&nbsp;<\/p>\n<p>Nel mio caso il DRBL serve due sottoreti (192.168.121. e 192.168.2.) e ha quindi tre indirizzi:<\/p>\n<ol>\n<li>eth0: 192.168.121.253 per la clonazione della sottorete 121<\/li>\n<li>eth1 : 192.168.2.5 per la connessione a internet<\/li>\n<li>eth2: 192.168.2.9\u00a0per la clonazione della sottorete 2<\/li>\n<\/ol>\n<h3>DHCP locale<\/h3>\n<p>Fermiamo il servizio DHCP sul DRBL con il comando:<\/p>\n<pre style=\"padding-left: 60px\"># update-rc.d isc-dhcp-server disable<\/pre>\n<p>Questo comado disabilita in modo permanente l&#8217;avvio del servizio DHCP su DRBL.<\/p>\n<p><strong>NB<\/strong>:<\/p>\n<ol>\n<li>si pu\u00f2 sempre riavviare il servizio a mano ma perch\u00e9 farlo?<\/li>\n<li>il comando drbl-all-service pu\u00f2 riavviare il dhcp quindi occhio quando lo si usa a fermare a mano il dhcp.<\/li>\n<li>La riconfigurazione del server con il comando\u00a0drblpush -c \/etc\/drbl\/drblpush.conf riattiva il DHCP locale<\/li>\n<\/ol>\n<h3>Installazione e configurazione di dnsmasq<\/h3>\n<pre># apt-get install dnsmasq<\/pre>\n<p>e con la sua configurazione:<\/p>\n<ul>\n<li>alla fine del file \/etc\/dnsmasq.conf decommentiamo la linea #\u00a0conf-dir=\/etc\/dnsmasq.d\/*.conf e cancelliamo *.conf; la righa diventa quindi:<\/li>\n<\/ul>\n<pre style=\"padding-left: 30px\"># Include all files in a directory which end in .conf\r\nconf-dir=\/etc\/dnsmasq.d\/<\/pre>\n<p style=\"padding-left: 30px\">Questo modo tutti i file di configurazione di dnsmasq verranno creati in \/etc\/dnsmasq.d<\/p>\n<ul>\n<li>Creiamo il file di configurazione per dnsmasq in modo che faccia da proxy dhcp e condivida in modo corretto i file per il PXE;<\/li>\n<\/ul>\n<pre style=\"padding-left: 30px\"># nano \/etc\/dnsmasq.d\/ltsp.conf<\/pre>\n<p style=\"padding-left: 30px\">nel file\u00a0ltsp.conf aggiungiamo le seguenti righe:<\/p>\n<pre style=\"padding-left: 30px\">port=0\r\nlog-dhcp\r\ntftp-root=\/tftpboot\/nbi_img\/\r\ndhcp-boot=net:eth2,pxelinux.0,,192.168.2.9\r\ndhcp-boot=net:eth0,pxelinux.0,,192.168.121.2\r\ndhcp-no-override\r\npxe-prompt=\"Press F8 for LDSS boot menu\", 2\r\npxe-service=X86PC, \"Boot from network\",pxelinux\r\npxe-service=X86PC, \"Boot from local hard disk\", 0\r\ndhcp-range=192.168.121.253,proxy\r\ndhcp-range=192.168.2.9,proxy<\/pre>\n<p style=\"padding-left: 30px\">Spiegazione:<\/p>\n<ol>\n<li style=\"padding-left: 30px\">tftp-root=\/tftpboot\/nbi_img\/ : cartella dove si trove il file del pxe cio\u00e8\u00a0pxelinux.0<\/li>\n<li style=\"padding-left: 30px\">dhcp-boot=net:eth2,pxelinux.0,,192.168.2.9 : indirizzo e file per il pxe-boot uno per ogni sottorete<\/li>\n<li style=\"padding-left: 30px\">\n<p style=\"line-height: 1.42857\">pxe-service=X86PC, &#8220;Boot from network&#8221;,pxelinux<\/p>\n<p><span style=\"line-height: 1.42857\"><span style=\"line-height: 1.42857\">\u00a0 e\u00a0pxe-service=X86PC, &#8220;Boot from network&#8221;,pxelinux\u00a0<\/span><\/span><span style=\"line-height: 1.42857\">:\u00a0dicono al pxe cosa fare in caso di boot da rete ( eseguire il pxelinux) o da disco locale<\/span><\/li>\n<\/ol>\n<h3>Abilita il servizio dnsmasq<\/h3>\n<p>Dopo un nuova installazione ricordati di abilitare il servizio dnsmasq. Per abilitare un servizio vedi il seguente <a href=\"https:\/\/edulab.unitn.it\/tecnici\/disabilitare-servizi-in-debian\/\">post<\/a><\/p>\n<p>&nbsp;<\/p>\n<h3>Modifica al DHCP esistente<\/h3>\n<p>Affinch\u00e9 le nostre macchine faccia il boot correttamente da rete dobbiamo istruire il DHCP esistente su dove si trova il servizio di boot da rete. Per fare questo aggiungiamo una seguente riga al file \u00a0<strong>\/etc\/dhcp\/dhcpd.conf \u00a0<\/strong>( se il dhcp \u00e8 linux altrimenti cercare su google a seconda del tipo di dhcp) all&#8217;inizio del file appena prina del pool e degli host.<\/p>\n<pre>next-server 192.168.2.9;<\/pre>\n<h3>Modifica del DRBL<\/h3>\n<p>Il client DRBL controlla all&#8217;avvio della macchina che il server dhcp da cui ha ottenuto l&#8217;IP sia quello locale del DRBL e se non lo \u00e8 pianta un errore.<\/p>\n<p>Per evitare questo controllo modifichiamo il file<strong>\u00a0\/usr\/lib\/mkpxeinitrd-net\/initrd-skel\/bin\/udhcpc-post<\/strong> sul server e commentiamo la righa 62:<\/p>\n<pre>## [ \"$sname\" != \"$dhcp_server_name\" ] &amp;&amp; exit<\/pre>\n<p>per applicare le modifiche fatte al file eseguiamo il comando:<\/p>\n<pre>\/usr\/sbin\/mknic-nbi -n<\/pre>\n<p>&nbsp;<\/p>\n<p>Buon DRBL con DHCP esterno<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Durante l&#8217;installazione di DRBL viene installato e attivato un servizio DHCP sul server che ospita il DRBL. Se abbiamo gi\u00e0 un server DHCP funzionante bisogner\u00e0 disabilitare il server DHCP di [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26,3],"tags":[],"class_list":["post-378","post","type-post","status-publish","format-standard","hentry","category-drbl","category-how-to"],"_links":{"self":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/378","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/comments?post=378"}],"version-history":[{"count":9,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/378\/revisions"}],"predecessor-version":[{"id":721,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/378\/revisions\/721"}],"wp:attachment":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/media?parent=378"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/categories?post=378"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/tags?post=378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}