Innanzitutto, alcuni retroscena: abbiamo un laboratorio contenente una manciata di server Linux dedicati che funzionano su una LAN isolata. Tutti i server eseguono lo stesso sistema operativo (Debian Linux) e lo stesso software server proprietario, ei processi del server comunicano tra loro per mantenere sincronizzati i loro dati. Ciò significa che, per quanto riguarda qualsiasi client, non importa a quale server si connette il client - qualsiasi server restituirà gli stessi dati di qualsiasi altro.
Tutti questi server Linux eseguono avahi-daemon per pubblicare nomi host mDNS autonomamente, il che significa che un client può inserire ad esempio " http: //linux-server-1.local ". nel suo browser Web e connettersi al server Linux n. 1 e così via.
Tutto questo va bene, tranne per il fatto che un utente seduto sul computer client (in genere un laptop Mac o Windows con Bonjour installato) deve sapere (o capire) quali server Linux sono attualmente online, e deve assicurati che si colleghi a uno di quelli. Ad esempio, se il server n. 2 non è in linea oggi e il client immette " http: //linux-server-2.local ". nella sua barra degli URL, non otterrà una risposta. Ovviamente non è la fine del mondo, ma è fastidioso per gli utenti inesperti che si aspettano che tutto funzioni "semplicemente", e rende anche più complicato lo sviluppo di potenti script lato client (dal momento che lo script lato client dovrebbe sapere come gestire esplicitamente i server offline).
Con questo in mente, la mia domanda è questa: è possibile configurare Avahi per pubblicare anche un alias hostname mDNS in stile anycast? L'obiettivo è che chiunque possa sedersi con il suo laptop, inserire " http: //any-linux-server.local ". (o simile) e connettersi a uno dei server attualmente in linea (di nuovo, non importa quale).
Si noti che questo deve funzionare senza alcuna configurazione speciale dei laptop client, poiché non abbiamo alcun controllo su di essi (a parte il requisito che hanno installato Bonjour).
Si noti inoltre che non possiamo fare affidamento sulla presenza di un nameserver o proxy box separato o sulla presenza di un particolare server Linux, poiché ciò introdurrebbe un singolo punto di errore, che stiamo cercando di evitare.