Ieri mi è capitata una cosa che mi sembra abbia dell'assurdo...

La premessa doverosa è sul cosa ho messo in piedi in casa.

Ho due server, uno è un server DNS l'altro un Web Server. I server sono casalinghi e inizialmente connessi con una ADSL Eutelia 2Mb in download e 512 un upload con una classe di ip statici. Dato che questa maledetta linea era ed è un pianto, e intestardito a voler avere i server in casa, mi sono "inventato" questa cosa per ovviare al problema della linea ADSL cadente che mi lasciavano il sito isolato...

Ho preso un'altra ADSL da NGI anch'essa con una classe di ip statici, mantenendo comunque quella vecchia di Eutelia, quindi ora ho 2 ADSL con un upload da 512 ciascuna.

Ho installato in entrambi i server una seconda scheda di rete, collegandola al nuovo router della nuova ADSL, configurato correttamente le schede di rete nuove e le tabelle di routing ora i server rispondono dall'esterno su entrambi gli ip, quello della classe di Eutelia e quello della classe di NGI.

Il Server DNS l'ho configurato con bilanciamento di carico aggiungendo una nuova zona A, in modo che il server DNS, alle richieste di risoluzione del nome www.miodominio.it una volta risponda con l'ip di Eutelia, e la volta successiva con l'ip di NGI, in questo modo ho splittato il carico di banda su entrambe le connessioni avendo una sorta di banda in upload di 1Mb.

I dns autoritativi di miodominio.it ovviamente sono ns1.miodominio.it e ns2.miodominio.it, il server fisico è uno solo, sempre lo stesso, con le sue due interfacce di rete collegate alle due rispettive ADSL, spero che fino a qui non si sia perso nessuno.

Il problema che sorgeva in questo meccanismo, è che se una ADSL è Down, il server DNS continuava a rispondere alla metà delle richieste dicendo di passare per l'ip della ADSL down, quindi la metà delle visite andavano in timeout, ed ho "ovviato" al problema creando uno script che ogni minuto controlla che entrambe le ADSL siano Up, e se una è DOWN, elimina dalla configurazione del DNS la zona A relativa all'ip della classe della ADSL down cambiando infine il default gateway usando ovviamente il router che è ancora Up. Il TTL del DNS ovviamente è al minimo, per cui, praticamente, se una ADSL è Down, il server DNS se ne accorge e da li in avanti dice a tutti di raggiungere il server web SOLO dall'ip della ADSL Up, cioè l'unico funzionante, e tutto questo meccanismo sembra funzionare...

Ora, terminata questa premessa che definirei brevissima, arriva il problema.

Ieri una connessione è andata Down (guarda caso Eutelia) e la cosa strana che mi è capitata è che non ricevevo più la posta fino a che la connessione Eutelia è tornata UP...piccola premessa, ho associato il dominio a un utente Google Apps standard, per cui i record MX del DNS puntano ai server di Google e tutta la posta viene poi gestita da Google. Il problema è quindi relativo al server DNS, nel senso che non ricevevo nessun messaggio di posta perchè il mio DNS autoritativo era Down, e quindi ovviamente gli MTA non sapevano a chi diavolo consegnare i messaggi, ma la realtà era che il server DNS NON era Down...ma solo UNO dei server DNS era down. Mi spiego meglio, anche se la macchina DNS fisicamente era UNA, dall'esterno sembra ce ne siano due, ns1.miodominio.it e ns2.miodominio.it, con relativi ip diversi tra loro. Per cui, se ns1.miodominio.it era DOWN perchè la connessione ADSL era DOWN, ns2.miodominio.it era UP, perchè la seconda connessione ADSL era UP! Quindi il server DNS era comunque raggiungibile...altrimenti perchè le Authority richiedono di avere due server DNS?!
Seconda cosa strana, ns1.miodominio.it punta all'Ip di Ngi che era comunque UP, quindi dall'esterno era ns2 ad essere DOWN, per cui questo problema non doveva neanche porsi visto che il dns autoritativo primario era UP, in teoria il secondario (down) non doveva neanche essere interrogato....mi sto perdendo qualcosa per strada?! Dove sta il problema?

L'unica cosa che mi viene in mente è: in principio, quando la connessione ADSL era una sola, ns1 e ns2 puntavano a due indirizzi che facevano parte della classe pubblica di Eutelia, entrando in gioco NGI, ho semplicemente cambiato la zona A ns1 facendola puntare all'ip pubblico di NGI, ed il provider mi disse che questo era sufficente per far propagare il nuovo name server autoritativo primario, ma io ricordo bene che quando registrai il dominio tanti anni fa, all'epoca quando ho richiesto di cambiare i DNS autoritativi da quelli del provider che registrò il dominio al mio server DNS, mi venne chiesto il nome ed anche l'IP dei DNS...quindi non vorrei che l'Authority abbia nel database sia il nome degli host che gli Ip dei DNS autoritativi e che sono LORO che devono aggiornare il database con i nuovi Ip...che il provider mi abbia detto una fandonia?! Non sono un espertissimo in materia...ma questo spiegherebbe il motivo della stranezza di ieri...