PDA

View Full Version : Aiuto per server dhcp


ilos3
06-12-2007, 14:07
Ciao a tutti, non sapevo se postare qui o in networking, ho deciso alla fine di postare qui. Se ho sbagliato chiedo venia ai moderatori e chiedo che mi spostino :)
Ho bisogno di un aiuto per configurare un server DHCP/DNS con dnsmasq (mi serve x l'uni).
Ho trovato un po di guide in giro ma per ora non funziona. Vi dico cosa ho fatto:
1) ho editato il file /etc/resolv.conf con:
- nameserver 208.67.222.222
- nameserver 208.67.220.220
- nameserver 192.168.1.1
2) ho editato il file /etc/dnsmasq.conf con:
- dhcp-range=192.168.1.100,192.168.1.120,2h
- dhcp-option=1,255.255.255.0 #per specificare la subnet mask
- dhcp-option=3,192.168.1.254 #per specificare il default gateway
- dhcp-option=6,192.168.1.1 #per specificare il server dns locale
- dhcp-option=28,192.168.1.255 #per specificare l'indirizzo di broadcast

3) ho riavviato dnsmasq
- /etc/init.d/dnsmasq restart

Mi sono limitato a questo, il problema è che se provo a collegare un altro pc a questo (lo collego direttamente perchè non ho una rete, da me non c'è neppure un'adsl :cry: ) su cui c'è winXp mi da "connettività limitata o assente" e assegna un indirizzo 169.254.172.81 che non so da dove spunti fuori!
Se dal pc linux apro Wireshark e faccio capture alla eth0 vedo i pacchetti DHCP_DISCOVER ma non c'è alcuna risposta, quindi nessuna DHCP_OFFER.
Se setto tutto manualmente invece la rete funziona, e qui chiedo il vostro aiuto, dove sbaglio?
Scusate se sono andato per le lunghe e grazie a tutti coloro che mi aiuteranno :D

ilos3
06-12-2007, 14:15
Dimenticavo :doh: , dopo che modifico i file e riavvio dnsmasq a volte mi esce nella finestra terminale il messaggio

ICE default io error handler doing an exit(), pid =3818, errno =0

Spero possa essere utile :fagiano:

ilos3
07-12-2007, 13:51
Dai raga, proprio nessuno? Nessun luminare di linux è in linea? :D
Mi consigliate di postare in networkink? Ciao. :)

Gimli[2BV!2B]
07-12-2007, 16:38
Mi sono accorto che non parli proprio di dhcpd... ti sei dimenticato di postare il suo file di configurazione, vero?

Non è che hai un firewall che blocca la porta del server?
La porta che dev'essere aperta sul server dovrebbe essere la 67 UDP.

Hai provato a specificare l'interfaccia di ascolto di dnsmasq?
Per esempio:interface=eth1

Il DNS locale è configurato e funzionante?

ilos3
07-12-2007, 21:18
;20003675']Mi sono accorto che non parli proprio di dhcpd... ti sei dimenticato di postare il suo file di configurazione, vero?

Non è che hai un firewall che blocca la porta del server?
La porta che dev'essere aperta sul server dovrebbe essere la 67 UDP.

Hai provato a specificare l'interfaccia di ascolto di dnsmasq?
Per esempio:interface=eth1

Il DNS locale è configurato e funzionante?

Grazie mille della risposta :)
Devi sapere che sono mooooooolto ignorante su linux :D quindi andiamo a tappe.
Non sapevo nemmeno dell'esistenza del file dhcpd, ne ho trovato uno in /usr/share/logwatch/scripts/services/dhcpd
e lo allego al post :read:


Per la mia prova sto usando un pc con win e come server un pc con fedora, e non so se c'è un firewall che mi blocca la porta 67, come si fa?
Nel dnsmasq.conf ho aggiunto
interface=eth0
quindi questo almeno l'ho saputo fare :sofico:

Che significa se il dns locale è configurato e funzionante? A parte modificare il resolv.conf io non so fare purtroppo :stordita:

Spero tu possa aiutarmi :ave: :ave: :ave:
Ciao ;)

Gimli[2BV!2B]
08-12-2007, 02:05
Cavolo, mi sono accorto che dnsmasq fa da jolly! Il nome mi ha sviato, ha un piccolo server DHCP integrato + DNS relay... Il dhcpd di cui ti ho accennato è il demone DHCP che viene subito in mente quando si parla di questo protocollo.

Il quadro che hai fornito purtroppo è molto frammentario, non mi ci raccapezzo.

Che distribuzione è?

Qual è l'IP della macchina?

Il server DNS più comune è bind9, controlla se è installato, ma se non c'è per adesso dimenticalo. Se invece c'è prova a postare il file/etc/bind/named.conf.local

Ma il PC lo hai installato tu da zero o stai usando un'installazione fatta da qualcun altro?

Per adesso scordati del firewall.

WebWolf
08-12-2007, 07:10
Ma devi usare per forza dnsmasq o potresti farlo anche a mano ?

In caso:

http://www.linuxguide.it/docs.php?Server (c'è anche la sezione networking)

Oppure:

http://www.fedora-it.org/index.php?topic=45.msg142

ilos3
08-12-2007, 10:13
Grazie delle risposte :)
Per rispondere a WebWolf si, devo per forza usare dnsmasq :mad: Cmq grazie dei link, la mia cultura personale ti ringrazia ;)

x Gimli[2BV!2B]
La distro è Fedora Core 7 con KDE, l'IP della macchina è 192.168.1.1, l'ho settato staticamente, ho editato il file /etc/network/interfaces con
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.254
network 192.168.1.0
auto eth0

La distro l'ho installata io sul mio secondo pc che era inutilizzato, almeno così mi è utile.
Per il bind adesso controllo se c'è e in caso lo posto. Cmq ho provato a far partire una live di ubuntu su questo pc (windows) e non prende neppure questa l'ip in automatico, come se il pc linux che fa da server non è impostato come server o se non è in grado di mandare il paccheto dhcp offer, però le dhcp discover arrivano in abbondanza (le vedo sempre con wireshark) :confused:

PS:perchè mi esce un indirizzo del tipo 169.254.xxx.xxx sul pc client? (curiosità :D )
PPS:Gimli[2BV!2B] ma tu dormi la notte? :sofico: :D :D :D

ilos3
08-12-2007, 10:29
Ho controllato, nel percorso che mi hai dato non esiste /etc/bind/named.conf.local, non c'è proprio la cartella /etc/bind.
Col cerca ne ho trovata una in /usr/include/boost/bind
:help:
Che dite, meglio cambiare distro? :fagiano:

Gimli[2BV!2B]
08-12-2007, 14:05
Ok, Fedora, le mie conoscenze sono più su distribuzioni Debian based.
In ogni caso i programmi principali sono gli stessi ed i files di configurazione dovrebbero essere tutte in /etc, non c'è alcun bisogno di cambiare tutto...

Ora che si sa che è un'installazione nuova direi che non hai bind9 installato, ne un firewall diverso dalle regole standard di iptables, escludiamo un po' di possibili problemi.

Le tue configurazioni mi sembrano corrette... L'unico punto che mi insospettisce è il fatto che dici di non avere adsl (ma come fai a postare?? Hai una 56K o qualcosa del genere?), quindi quando cerchi di avviare dnsmasq potrebbe non partire perchè non trova i server DNS su cui si appoggia per fare uno dei suoi lavori (DNS relay).
Il computer in questione è in qualche modo connesso ad internet o è proprio isolato nella sua rete privata?

Per l'indirizzo 169.254.xxx.xxx ti posso dire che Windows sembra si scelga un indirizzo di quel tipo quando il DHCP non funziona, non so i dettagli ma mi è successo più di una volta.

Ultima cosa, sì, sì dormo, :) ma stamattina ero appena tornato e non avevo ancora sonno...

ilos3
08-12-2007, 15:04
;20014830']Ok, Fedora, le mie conoscenze sono più su distribuzioni Debian based.
In ogni caso i programmi principali sono gli stessi ed i files di configurazione dovrebbero essere tutte in /etc, non c'è alcun bisogno di cambiare tutto...

Ora che si sa che è un'installazione nuova direi che non hai bind9 installato, ne un firewall diverso dalle regole standard di iptables, escludiamo un po' di possibili problemi.

Le tue configurazioni mi sembrano corrette... L'unico punto che mi insospettisce è il fatto che dici di non avere adsl (ma come fai a postare?? Hai una 56K o qualcosa del genere?), quindi quando cerchi di avviare dnsmasq potrebbe non partire perchè non trova i server DNS su cui si appoggia per fare uno dei suoi lavori (DNS relay).
Il computer in questione è in qualche modo connesso ad internet o è proprio isolato nella sua rete privata?

Per l'indirizzo 169.254.xxx.xxx ti posso dire che Windows sembra si scelga un indirizzo di quel tipo quando il DHCP non funziona, non so i dettagli ma mi è successo più di una volta.

Ultima cosa, sì, sì dormo, :) ma stamattina ero appena tornato e non avevo ancora sonno...

In effetti il pc è isolato perchè il modem 56k è sul pc win :doh: se è per questo che non va :doh: :doh: :doh: :doh: :doh:
Cmq vada per il dns, ma mi blocca anche il dhcp??? :confused: In teoria non dovrebbe comunque mandare gli indirizzi, io non vedo proprio le DHCP Offer che partono dal server! :muro: :muro: :muro:
Cmq il dnsmasq se ti può servire è avviato, e non mi da errore... anche se faccio /etc/dnsmasq restart non mi da alcun problema..... bho....

ilos3
08-12-2007, 15:11
Novità, non so se utili. Ho scritto i comandi trovati in internet su una guida

• echo "1" > /proc/sys/net/ipv4/ip_forward
• iptables -P INPUT DROP
• iptables -P OUTPUT ACCEPT
• iptables -P FORWARD DROP
• iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
• iptables -A INPUT -i eth0 -p UDP --dport 53 -j ACCEPT #dns
• iptables -A INPUT -i eth0 -p UDP --dport 67 -j ACCEPT #dhcpd
• iptables -A FORWARD -i eth1 -j ACCEPT
• iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
• iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Il server continua a non dare la dhcp offer ma adesso manda dei pacchetti MDNS in multicast all'indirizzo 224.0.0.251. Può servire? Grazie :D

Gimli[2BV!2B]
08-12-2007, 15:20
Effettivamente se si avvia correttamente direi che dovrebbe funzionare almeno la parte DHCP (se è fatto bene o se non hanno scelto diversamente per qualche motivo)...

C'era anche quell'errore generico che mi insospettiva "ICE default io error handler doing an exit()...", ma non ho trovato nulla che fosse collegato a dnsmasq... (http://www.google.it/search?hl=it&safe=off&client=firefox-a&rls=org.mozilla%3Ait%3Aofficial&hs=cfg&q=dnsmasq+"ICE+default+io+error+handler+doing+an+exit()"&btnG=Cerca&meta=)

Visto che hai Kde fai un controllo, premi Ctrl+Esc, ti apparirà un "task manager", controlla se c'è dnsmasq dopo che lo hai avviato.

ilos3
08-12-2007, 15:37
Si, ci sono 2 processi di dnsmasq uno che si avvia in automatico e l'altro col comando
Ci sto capendo sempre meno :confused: :mc:

Gimli[2BV!2B]
08-12-2007, 15:59
Il server c'è ma non fa nulla... :what:

Il fatto che si sdoppi è strano, ma lo avvii manualmente da utente normale o root? Anche se credo che non dovrebbe partire se ci provi da utente.

Ho visto un dettaglio che mi era sfuggito:
dhcp-option=3,192.168.1.254 #per specificare il default gateway
ma questo ip nella tua rete non esiste, prova a metteredhcp-option=3,192.168.1.1 #per specificare il default gateway poi fai (da root)killall dnsmasq
/etc/init.d/dnsmasq start
Se ancora non funziona serve un log: vediamo se in Fedora daemon.log è nello stesso posto... Allega il file /var/log/daemon.log, usa un file di solo testo zippato, un doc è inutile...

ilos3
08-12-2007, 16:13
Mi credi se ti dico che non ho alcun file /var/log/daemon.log :muro: :muro: :muro: e in nessun percorso esiste il file daemon.log :muro: :muro: :muro:

Cmq ho usato il comando

netstat -an

e sulle porte UDP non mi da LISTEN mentre su quelle TCP si... ma sono io che non ce la faccio a fare niente? :mc: :muro:

Gimli[2BV!2B]
08-12-2007, 19:17
Purtroppo ero quasi sicuro che il file sarebbe stato in un altro luogo, e abbastanza sicuro che avrebbe avuto un altro nome. In ogni caso prova a spulciare quel che trovi nella cartella /var/logs, che da quel che ho trovato è la cartella dei logs di Fedora. Guarda la parte finale dei files, in ogni caso dovrebbero avere nomi esplicativi; dovresti rintracciare l'output di dnsmasq all'avvio/riavvio, perchè senz'altro non parte bene.

Se trovi l'output postalo che cerchiamo di capire cosa disturba il nostro simpatico dnsmasq.

Non disperarti, purtroppo anch'io sto andando un po' a tentoni, e purtroppo cerchi di utilizzare questo programmello che fa due o tre cose insieme in una situazione che forse gli sviluppatori non hanno previsto (assenza di connettività).

Gimli[2BV!2B]
08-12-2007, 19:35
Mi sono perso il post 12!

I comandi che hai scritto creano un firewall che consente connessioni alle sole porte DNS e DHCP, inoltre trasforma il computer in un gateway.
Mi sembra completo, lo giudicherei corretto per quel che vuoi far fare al computer in questione.

Gli MDNS devono essere generati da qualche demone/server che si accorge dell'assenza di DNS nella rete, non so se lo fa il nostro dnsmasq.

ilos3
08-12-2007, 21:10
Diamine ti sto facendo uscire pazzo! Ti meriti un birra :cincin: (per ora virtuale, un giorno chissà :D )
Domani controllo dov'è il log, o anche più tardi, sto avendo problemi di corrente dovuti ai temporali (se ne va la luce per qualche attimo ogni tanto ) e l'altro pc è senza gruppo di continuità. Grazie di nuovo, ti faccio sapere :)

ilos3
08-12-2007, 23:05
Ecco il contenuto di /var/log

[root@pc1 log]# ls
anaconda.log cups messages.1 secure.1 xen
anaconda.syslog dmesg mysqld.log setroubleshoot Xorg.0.log
anaconda.xlog exim news spooler Xorg.0.log.old
audit faillog pm-suspend.log spooler.1 Xorg.20.log
BackupPC gdm ppp squid Xorg.20.log.old
bittorrent httpd prelink tallylog Xorg.21.log
boot.log lastlog rpmpkgs vbox yum.log
boot.log.1 mail rpmpkgs.1 vdr
btmp maillog samba vdradmin
cron maillog.1 scrollkeeper.log wtmp
cron.1 messages secure wtmp.1

Sinceramente non so dove mettere mano...

Gimli[2BV!2B]
09-12-2007, 01:06
Punto tutto su messages!

Gli altri non mi sembrano inerenti, poi nel mio "serverino" ho gli output di dhcpd in quel file, spero sia così anche per il nostro programma...

Grazie per la birra :cincin: ! Tra l'altro stasera ti ho risposto molto più presto di ieri!

ilos3
09-12-2007, 09:52
Ehm... mi sa che non riesco ad allegare il file neanche in notepad zippato :stordita: E' troppo grande, però non mi va neppure di fare un post kilomentrico :sofico: , al max se mi dai un tuo recapito email te lo mando. Vedi tu :)

ilos3
09-12-2007, 12:43
Ho allegato i file mettendo solo le righe che hanno come data quella di oggi per messages e quella del 5/12 per messages.1 (era l'ultima disponibile). Se ti serve di più pero li devo fare a pezzi o te le spedisco a un'email. Ciao.

Gimli[2BV!2B]
09-12-2007, 16:09
Dec 9 10:32:03 pc1 dnsmasq[3587]: started, version 2.38 cachesize 150
Dec 9 10:32:03 pc1 dnsmasq[3587]: compile time options: IPv6 GNU-getopt no-ISC-leasefile DBus no-I18N TFTP
Dec 9 10:32:03 pc1 dnsmasq[3587]: DHCP, IP range 192.168.1.32 -- 192.168.1.52, lease time 2h
Dec 9 10:32:03 pc1 dnsmasq[3587]: running as root
Dec 9 10:32:03 pc1 dnsmasq[3587]: reading /etc/resolv.conf
Dec 9 10:32:03 pc1 dnsmasq[3587]: using nameserver 192.168.1.1#53
Dec 9 10:32:03 pc1 dnsmasq[3587]: using nameserver 208.67.220.220#53
Dec 9 10:32:03 pc1 dnsmasq[3587]: using nameserver 208.67.222.222#53
Dec 9 10:32:03 pc1 dnsmasq[3587]: read /etc/hosts - 2 addresses

Non da alcun errore.
Ho le ultime due idee: l'IP range lo interpreta a modo suo, probabilmente vuole una rete propria, non un range casuale, per esempio potresti provare 192.168.1.128-192.168.1.191 che è la sotto-rete 192.168.1.128/26.

Poi vedo che come primo DNS prende lui stesso (192.168.1.1), non so se sia una buona cosa, prova a togliere 192.168.1.1 da resolv.conf.

Se nemmeno questo serve a qualcosa, mi dispiace ma credo di dovermi arrendere...


Tra l'altro si è scoperto cosa manda i mDNS: avahi-daemon, come ci si doveva aspettare...Dec 9 10:32:20 pc1 avahi-daemon[2453]: Joining mDNS multicast group on interface eth0.IPv4 with address 192.168.1.1.
Dec 9 10:32:20 pc1 avahi-daemon[2453]: New relevant interface eth0.IPv4 for mDNS.
Dec 9 10:32:20 pc1 avahi-daemon[2453]: Registering new address record for 192.168.1.1 on eth0.IPv4.
Ho fatto qualche ricerca per capire se potesse dar fastidio al nostro programma, ma non ho trovato nulla.

ilos3
09-12-2007, 20:03
Mi arrendo anche io! :muro: :muro: :muro:

Non so come tu abbia fatto a sopportarmi, cmq ti ringrazio tantissimo, ti vorrei chiedere solo gli ultimi favori (sfrutto fino all'ultimo :D :sofico: ) Mi dici dove posso trovare guide sui comandi del post 12? E cmq guide buone in generale sul networking, la mia base teorica è molto buona sulle reti (univ e corso ccna) ma mi manca la pratica su linux che credo sia importante.

PS:mi hai stimolato a usare la debian :D mi dici un link per scaricarne una molto completa (tipo su dvd con già molti programmi all'interno) visto che sono ancora un po imbranato?

PPS: grazie ancora! :)

Gimli[2BV!2B]
10-12-2007, 09:34
Consigliarti una guida su iptables? Impresa ardua... ce ne sono davvero tante, dalle più corpose e complete (http://iptables-tutorial.frozentux.net/iptables-tutorial.html), alle introduzioni per uno uso molto basilare (http://wiki.ubuntu-it.org/Sicurezza/Iptables).
Ho allegato il mio firewall, credo contenga una buona quantità di esempi, visto l'uso abbastanza assortito che faccio del mio piccolo server; non credo sia perfetto, ma fa il suo lavoro.

Debian, Debian... io uso proprio la Debian schietta, versione SID (http://www.debian.org/releases/unstable/) (Still In Development secondo qualcuno o unstable), ma purtroppo sia la SID che la Testing (http://www.debian.org/releases/testing/) sono in continua evoluzione, ciò porta ad incontrare ogni tanto bug fastidiosi, che vengono corretti spesso in 24/48h nella SID, più lentamente nella Testing.
La quantità di aggiornamenti quotidiani è ragguardevole, sconsigliata per connessioni 56k.
L'altra opzione è la versione stable (http://www.debian.org/releases/stable/): è una roccia, ma passano anni tra le release definitive; si può tenere aggiornata alle ultime versioni dei programmi aggiungendo i repository backports (http://backports.org/dokuwiki/doku.php), ma anche senza funziona molto bene, anche se non avrai le ultime novità.
Utilizzare i backports porta sempre alla necessità di scaricare una buona quantità di roba...

Ultimo dettaglio: dicono che Debian non sia molto intuitiva, effettivamente installa solo il software necessario al funzionamento. Dovrai spulciare un po' l'archivio dei software, preferibilmente con l'ottimo Synaptic (http://it.wikipedia.org/wiki/Synaptic), per installare tutto quel che ti serve. In ogni caso ogni problema che ho incontrato nella mia non lunghissima esperienza Debian ha sempre trovato risposte in Google.

Questo è il portale per entrare nel mondo Debian (http://www.debian.org/distrib/), come vedrai c'è la possibilità di scaricare tre DVD (+ 1 di aggiornamento), il software contenuto dovrebbe essere suddiviso in base alla popolarità: il primo disco contiene la roba praticamente indispensabile, il secondo quella utile, ecc...

Altrimenti si finisce al solito a parlare di *buntu, su cui purtroppo nutro sempre maggiori riserve, poi da quel che so è distribuita solo in singolo cd, cosa molto negativa per il tuo problema di connessione.

Questo per quel che riguarda il lato Debian dell'universo GNU/Linux.

ilos3
10-12-2007, 09:45
Ciao Gimli[2BV!2B], volevo dirti che non sei un grande, ma immenso :sofico: :D
Vedrò di seguire i tuoi consigli (*buntu sta sulle xalle anche a me...), anche la mia 56K non mi aiuta nella ricerca delle soluzioni :stordita:

Grazie ancora :mano: :D ;)

WebWolf
10-12-2007, 11:11
Puoi valutare di usare un virtualizzatore (tipo virtualbox o qemu) per creare una rete virtuale su un solo pc e fare delle prove come se fossi in una wan.

ilos3
10-12-2007, 12:28
Puoi valutare di usare un virtualizzatore (tipo virtualbox o qemu) per creare una rete virtuale su un solo pc e fare delle prove come se fossi in una wan.

Grazie mille anche per questa idea :cool: :D