Newsgroup: it.comp.os.linux.sys
Titolo: CNAME e dubbi

Ciao a tutti,
Evidentemente mi manca un tassello per la configurazione di bind9...
$ttl 10h
pippo.net
.	IN	SOA	
dns1.pippo.net
. 
admin.pippo.net
. (
			1010201141; Serial
			8h; Refresh
			1h; Retry
			1w; Expire
			1h); Negative cache minimum TTL
pippo.net
.		IN	NS	
dns1.pippo.net
.
pippo.net
.		IN	NS	
dns2.pippo.net
.
s1			IN	A	1.2.3.4
s2			IN	A	1.2.3.5
dns1			IN	A	1.2.3.6
dns2			IN	A	1.2.3.7
www1			IN	A	1.2.3.8
pop			IN A  1.2.3.9
pippo.net
.		IN	CNAME	www1   <----- ERRORE
www			IN	CNAME	www1
pippo.net
.		IN	MX	5 pop
Quello che mi da errore � nella riga evidenziata. Il mio obiettivo � far 
s� che se digito "
pippo.net
" nel browser ottengo lo stesso risultato di 
quando digito "
www.pippo.net
";
Voglio inoltre far si che se dovessi cambiare l'ip della macchina www1 
dovrei soltanto cambiare l'A record di www1, e non quello di 
pippo.net
 
(ed � per questo che uso [impropriamente?] il CNAME).
Come si ottiene questo risultato?
-- 
g4b0, linux user n. 369000
http://brosulo.net


Non si ottiene.
Un CNAME deve essere l'unica entry per un record.
pippo.net
. ha anche (e *deve* avere)
- due record NS
- un record MX
- un record SOA
Ergo, non pu� essere un CNAME.
Consiglio viva lettura di RFC1912...
-- 
Paranoia is a disease unto itself. And may I add: the person standing
next to you may not be who they appear to be, so take precaution.
-----------------------------------------------------------------------------
http://bofhskull.wordpress.com/

 @	IN CNAME www1
Ci ho provato, ma continua con gli stessi errori:
21-Oct-2010 08:37:23.081 general: error: dns_master_load: 
/etc/bind/zones/pippo.net.db:28: 
pippo.net
: CNAME and other data
21-Oct-2010 08:37:23.081 general: error: zone 
pippo.net/IN
: loading from 
master file /etc/bind/zones/pippo.net.db failed: CNAME and other data
21-Oct-2010 08:37:23.081 general: error: zone 
pippo.net/IN
: not loaded 
due to errors.


 Consiglio viva lettura di RFC1912...
Ipotizziamo una situazione:
pippo.net
 é il mio dominio "principale", nel quale mappo tutte le mie 
macchine fisiche (es. www1, www1, pop, smtp, ecc ecc)con un record A.
Ho altri 1000 domini con servizi sparsi sulle macchine di 
pippo.net
 (es. 
www.pluto.net
  IN  CNAME www1).
A me piace configurare 
pluto.net
 e 
pippo.net
 in modo tale che siano 
identici a 
www.pluto.net
 e 
www.pippo.net
 (non credo sia una 
configurazione fuori dal comune)
Per motivi vari devo cambiare l'indirizzo IP di 
www1.pippo.net
. Mi devo 
perforza passare 1000 file di configurazione? ok, si puó usare uno 
script, ma non é questo il punto..


 
www.pluto.net
  IN  CNAME www1).
Puoi farlo per tutti gli host inclusi nel dominio.
*Non puoi* farlo per il dominio in quanto tale, come già detto.
Un CNAME non può essere affiancato da altri record che facciano
riferimento allo stesso oggetto.
E' esattamente il senso dell'errore che ricevi "CNAME and other data".
Altri DNS accettano ugualmente la scrittura senza segnalare l'errore,
salvo poi causare effetti collaterali imprevisti in dozzine di altri
aspetti[1].
Bind9 rifiuta proprio la scrittura.
[1]
http://groups.google.com/group/it.comp.os.linux.sys/browse_frm/thread/4305f614d4f6f24a/607501aa165de764


 Consiglio viva lettura di RFC1912...
Giá che ci siamo, visto che sto studiando...
Che differenze ci sono tra il TTL ed il minimum definito nel record SOA?
Da quel che ho capito il minimum é il tempo minimo per cui un server che 
ha eseguito una recursive query si tiene in cache il matching. Ed il TTL 
a che serve?


 a che serve?
Dipende dall'implementazione di riferimento, il che spiega la tua
confusione.
Originariamente quel campo (l'ultimo del record SOA) definiva il TTL di
default per la zona: se un record non aveva TTL esplicito, valeva quello.
Da Bind9 (con l'applicazione di RFC2308) è stato introdotta la variabile
di zona $TTL, che ha espressamente quel significato (server-side, nel
senso che il resolver non ha necessità di sapere a cosa sia impostata,
dato che sarà applicata "trasparentemente" dall'authoritative a tutti i
record privi di TTL esplicito, senza che il resolver che chiesto il
record abbia bisogno di saperlo).
Quel valore è pertanto stato "riutilizzato" cambiandone il significato:
nelle implementazioni RFC2308-compliant, assume il significato di "TTL
per le risposte negative" (NXDOMAIN): se il resolver è RFC2308-compliant
e domanda un RR che non esiste nella zona, considererà inesistente quel
record per un tempo pari al valore di quel campo.
Bye.



Ora mi é tutto chiaro, grazie mille!


 Ci ho provato, ma continua con gli stessi errori:
Perchï¿œ hai riscritto la stessa cosa con una forma differente.
Skull ti ha chiaramente detto come stanno le cose.


Sisi, ne ho anche discusso con skull.
Non avevo mai fatto caso a questa particolaritï¿œ dello standard DNS, 
speravo che l'uso dei CNAME semplificasse maggiormente la vita del sysadmin.
