Newsgroup: it.comp.os.linux.sys
Titolo: [OT] Query udp verso libero

Scusate, mi sono perso qualcosa o c'è stato un problema nei server dns di libero 
  (
ns1.libero.it
) ?
Fino a ieri (o l'altro ieri non sono certo) il mio mail server risolveva gli 
host di libero attravero una normale query UDP poi, misteriosamente ora i server 
rispondono solo alle query TCP. Perchè ? Cosa mi sono perso ?
Grazie e scusate dell'OT ma non sò a chi chiedere lumi
Rizio

 ora i server rispondono solo alle query TCP. Perchè ? Cosa mi sono perso ?
Perchè mai affermi ciò?
zarathustra:~ skull$ dig +norec a 
www.libero.it
 @
ns1.libero.it
; <<>> DiG 9.6.0-APPLE-P2 <<>> +norec a 
www.libero.it
 @
ns1.libero.it
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1567
;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;
www.libero.it
.                 IN      A
;; ANSWER SECTION:
www.libero.it
.          86400   IN      CNAME   
vs-fe.iol.it
.
vs-fe.iol.it
.           86400   IN      A       195.210.91.83
;; AUTHORITY SECTION:
iol.it
.                 86400   IN      NS      
ns2.libero.it
.
iol.it
.                 86400   IN      NS      
ns1.libero.it
.
;; ADDITIONAL SECTION:
ns1.libero.it
.          86400   IN      A       195.210.91.100
ns2.libero.it
.          86400   IN      A       193.70.192.100
;; Query time: 14 msec
;; SERVER: 195.210.91.100#53(195.210.91.100)
;; WHEN: Thu Apr 21 14:27:56 2011
;; MSG SIZE  rcvd: 139
-- 
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/

 zarathustra:~ skull$ dig +norec a 
www.libero.it
 @
ns1.libero.it
Guarda la seconda riga:
root@mail:~# dig +norec 
liberomx1.libero.it
 @
ns1.libero.it
;; Truncated, retrying in TCP mode.
Poi me lo risolve però mi effettua la query via TCP quando fino all'altro giorno 
era solo UDP tranquillamente.
Il dubbio sta solo lì: perchè adesso via UDP non riesco più a contattare gli 
autoritativi di libero.
; <<>> DiG 9.3.1 <<>> +norec 
liberomx1.libero.it
 @
ns1.libero.it
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12573
;; flags: qr aa ra; QUERY: 1, ANSWER: 28, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;
liberomx1.libero.it
.           IN      A
;; ANSWER SECTION:
liberomx1.libero.it
.    300     IN      A       212.52.84.92
liberomx1.libero.it
.    300     IN      A       212.52.84.93
liberomx1.libero.it
.    300     IN      A       212.52.84.96
liberomx1.libero.it
.    300     IN      A       212.52.84.170
liberomx1.libero.it
.    300     IN      A       212.52.84.171
liberomx1.libero.it
.    300     IN      A       212.52.84.172
liberomx1.libero.it
.    300     IN      A       212.52.84.173
liberomx1.libero.it
.    300     IN      A       212.52.84.174
liberomx1.libero.it
.    300     IN      A       212.52.84.175
liberomx1.libero.it
.    300     IN      A       212.52.84.176
liberomx1.libero.it
.    300     IN      A       212.52.84.177
liberomx1.libero.it
.    300     IN      A       212.52.84.178
liberomx1.libero.it
.    300     IN      A       212.52.84.179
liberomx1.libero.it
.    300     IN      A       212.52.84.180
liberomx1.libero.it
.    300     IN      A       212.52.84.181
liberomx1.libero.it
.    300     IN      A       212.52.84.182
liberomx1.libero.it
.    300     IN      A       212.52.84.183
liberomx1.libero.it
.    300     IN      A       212.52.84.184
liberomx1.libero.it
.    300     IN      A       212.52.84.185
liberomx1.libero.it
.    300     IN      A       212.52.84.190
liberomx1.libero.it
.    300     IN      A       212.52.84.191
liberomx1.libero.it
.    300     IN      A       212.52.84.222
liberomx1.libero.it
.    300     IN      A       212.52.84.223
liberomx1.libero.it
.    300     IN      A       212.52.84.66
liberomx1.libero.it
.    300     IN      A       212.52.84.67
liberomx1.libero.it
.    300     IN      A       212.52.84.68
liberomx1.libero.it
.    300     IN      A       212.52.84.69
liberomx1.libero.it
.    300     IN      A       212.52.84.70
;; AUTHORITY SECTION:
libero.it
.              86400   IN      NS      
ns1.libero.it
.
libero.it
.              86400   IN      NS      
ns2.libero.it
.
;; ADDITIONAL SECTION:
ns1.libero.it
.          86400   IN      A       195.210.91.100
ns2.libero.it
.          86400   IN      A       193.70.192.100
;; Query time: 15 msec
;; SERVER: 195.210.91.100#53(195.210.91.100)
;; WHEN: Thu Apr 21 15:54:47 2011
;; MSG SIZE  rcvd: 553
Grazie
Rizio

 ;; MSG SIZE  rcvd: 553
               ^^^^^^^^^
La parola chiave è "EDNS0"
<spot>
Prova a leggere questo e vedi se aiuta:
http://bofhskull.wordpress.com/2009/12/11/preoccupazioni-da-radici-firmate/
</spot>
Bye


 Bye
Si, mi ha aiutato, grazie mille, sei sempre una notevole fonte d'apprendimento 
per me. Ho capito il problema.
Grazie ancora
Rizio

 ora i server rispondono solo alle query TCP. Perchè ? Cosa mi sono perso ?
Ti sei perso che oggi che le query DNS sono aumentate di dimensioni i
firewall configurati in modo "errato" (ovvero che non avevano aperto
anche la TCP) cominciano a sperimentare problemi.
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.

 anche la TCP) cominciano a sperimentare problemi.
Si, hai ragione.
Rizio

 Si, hai ragione.
| > root@mail:~# dig +norec 
liberomx1.libero.it
 @
ns1.libero.it
| > ;; Truncated, retrying in TCP mode.
        ^^^^^^^^^
| > Poi me lo risolve però mi effettua la query via TCP quando fino
| > all'altro giorno era solo UDP tranquillamente.
| > Il dubbio sta solo lì: perchè adesso via UDP non riesco più a
| > contattare gli autoritativi di libero.
Riporto sopra quanto hai scritto in un reply.
Quindi non e' che "non riesci a contattarli", il fatto e' che la
dimensione della risposta alla query e' troppo grande e quindi
ritenta con tcp...
bye G.L.
-- 
Da i.d.c.tutela:
P.S. Quando ci sarà lo switch-off, avrò problemi anche col
monitor del PC? Ho visto che è collegato in modalità analogica.

 ritenta con tcp...
Si, esatto, la query udp è troppo grande (come da doc di Skull) e viene segata 
allora il server ritenta la query in tcp che io, amabilmente ignorante come da 
copione, avevo prontamente chiuso sul firewall..... shit happen :)
Rizio


La situazione peggiore in assoluto è peraltro quando:
- il tuo resolver annuncia buffer size > 512 byte nella query
- l'authoritative invia risposta UDP > 512 byte
- il firewall solertemente sega pacchetti UDP provenienti da porta 53 e
di size >512 byte
In questo caso, infatti, il tuo resolver non ottiene alcuna risposta UDP
con flag TC (ovvero "risposta tronca, rifai in TCP"): resterà lì ad
attendere come un pirla una risposta che non arriverà mai, fino a quando
considererà l'autoritativo morto. Riproverà con gli altri record NS per
l'RR da risolvere e se nessuno risponde (come è il caso se tutti onorano
EDNS0) il tuo resolver non risolve un tubo...


 EDNS0) il tuo resolver non risolve un tubo...
E in questo caso come fai a correggere il problema ? Nel senso: è possibile dire 
al client (nel mio caso il resolver di postfix -che non sò se appoggia a dig o 
se è built-in) di lavorare direttamente in tcp per le query ?
Sarebbe sbagliata come pratica ? Vista la rotta che si è presa mi sembra un 
comportamento consono, sbaglio ?
Rizio

512 ma ha davanti un apparato che sega quei pacchetti), le
implementazioni serie (in primis bind) effettuano da sè il fallback,
annunciando (e contrattando) EDNS0 con size di 512 per i server remoti
che altrimenti danno timeout.


 che altrimenti danno timeout.
Aggiungo perchè mi rendo conto che così mancano le conclusioni:
Per la ragione succitata, se dalla tua rete la risoluzione la fa un
resolver e non una libreria stub che demanda tutta la logica a un
resolver su cui non hai il controllo, sei quantomeno nella condizione in
cui il sistema è in grado di uscire da sè dall'impasse (grazie alla
logica presente nel resolver), anzichè dare problemi fino a quando
qualcuno non se ne accorge e si attiva per risolverli...


 qualcuno non se ne accorge e si attiva per risolverli...
Mah, riguardo alla soluzione potrei prendere in esame anche l'installazione du 
uno stub però ripeto, mi sembra troppo per la mia realtà così su 2 piedi.
Rizio

 per libero (che abbia potuto vedere io per lo meno).
Fidati che oramai le query DNS > 512 sono praticamente la norma, e lo
saranno sempre di più...
Perchè tanto per dire, la priming query...
zarathustra:~ skull$ dig +bufsize=4096 NS . @
198.41.0.4
 | tail -2
;; MSG SIZE  rcvd: 671
Vedi te...


 Vedi te...
Grazie delle chiacchiere e dei preziosi consigli
Rizio

 12 no dai.... solo 3/4 ;)
Nono.
http://www.ietf.org/rfc/rfc2671.txt
Guarda la data in alto a destra... ;-)


 Guarda la data in alto a destra... ;-)
Eddaiii.... i numerini in alto a destra delle rfc fanno sempre paura dai !!!
Mi ricordo di aver visto dei protocolli che stavo cominciado ad usare nel 2001 e 
portavano date della fine anni 80; non ricordo quale fossero ma era il tempo in 
cui Microsoft si ostinava ad usare NetBeui.
Sei crudele !!! ^_^
Rizio

 senza poi sapere come  usarlo almeno un minimo per non fare casini.
Personalmente metto unbound ovunque dove ci sia posta, anche su
installazioni che trattano 50 mail buone al giorno. In primis perché
così carico meno le blacklist con query multiple ed è una questione di
rispetto, in secundis perché risolvi facilmente tutti i problemi di
risoluzione come indicato da Skull.
Unbound è leggerissimo e realmente non è necessario configurare nulla
oltre al default per il 99.9999% dei casi. L'unica cosa è eventualmente
impostare do-ipv6 = no se non hai ipv6 per evitare di loggare
risoluzioni inutili.
Per il resto vai tranquillissimo.


 Per il resto vai tranquillissimo.
Grazie mille per il feedback, lo tengo presente e vedo di adeguarmi ai tempi ;)
Grazie
Rizio