DNS: sottodomini che richiedono sia un record MX che un CNAME

Diciamo di possedere la zona mywebservice.com.

Vorrei che ognuno dei miei clienti ottenga il proprio sottodominio, ad esempio customer.mywebservice.com.

  • Perché la radice di un dominio non può essere un CNAME?
  • Fornitura di reindirizzamento DNS al server honeypot per domini cattivi noti
  • Foresta di Active Directory con lo stesso nome della zona DNS root e la navigazione sul sito con lo stesso nome
  • Sito Web interno e configuration DNS
  • Puoi fare riferimento a un record CNAME in un record MX?
  • Aggiornamento del piano Zerigo DNS attraverso il fallimento di Heroku
  • customer.mywebservice.com deve essere un CNAME di un determinato server offsite. Poiché questo sito gestisce le proprie attrezzature e può cambiare gli indirizzi in qualsiasi momento, il CNAME è un requisito.

    Anche le persone devono essere in grado di submit e-mail a inbox@customer.mywebservice.com, che richiederebbe un semplice record MX.

    Tuttavia, e questo è where vorrei una guida:

    Secondo RFC 1034 :

    If a CNAME RR is present at a node, no other data should be present; this ensures that the data for a canonical name and its aliases cannot be different. 

    Ho anche verificato che il mio server DNS si rifiuterà di submit altro che un CNAME per gli host che li utilizzano.

    Quindi, sembra che possa avere una situazione perdente. Se voglio utilizzare il record MX, devo utilizzare un A invece di un CNAME.

    Qualcuno può pensare a soluzioni alternative? Grazie!

    8 Solutions collect form web for “DNS: sottodomini che richiedono sia un record MX che un CNAME”

    Purtroppo, ciò che stai eseguendo è una limitazione della specifica DNS. Avere un record MX per lo stesso nome host definito come un record CNAME non sarà riuscito nella maggior parte delle implementazioni del server DNS. Alcuni server DNS più anziani lo consentiranno, ma sono stati per lo più scaduti a favore di implementazioni più recenti e più sicure.

    Invece di utilizzare i record CNAME, sarà necessario utilizzare i record "A" con gli indirizzi IP dei siti del cliente direttamente anziché aliasare i nomi.

    Dopo un sacco di lavoro e ricerca qui, ho trovato una soluzione accettabile. In primo luogo, è importnte che tutti noi seguiamo i RFC. Ho patchato il mio server DNS per violare la RFC e ho scoperto che diversi altri server DNS più importnti non rispettano il cambiamento.

    La mossa appropriata è quella di mettere l'MX sull'host che il CNAME punta. Quindi, se customer.mywebservice.com è un CNAME al record A loadbalancer.mywebservice.com, è opportuno anche creare un record MX per loadbalancer.mywebservice.com. Ho verificato che questo funziona con tutti i principali resolver.

    Se viene fatta una query MX per customer.mywebservice.com, la libreria di resolver seguirà il CNAME e riceverà l'MX corretta per il record finale A. Evviva!

    customer.mywebservice.com deve essere un CNAME di un determinato server offsite. Poiché questo sito gestisce le proprie attrezzature e può cambiare gli indirizzi in qualsiasi momento, il CNAME è un requisito.

    Qualcuno può pensare a soluzioni alternative? Grazie!

    Hai un requisito che i clienti devono essere in grado di modificare l'indirizzo, hai pensato di consentire al cliente di aggiornare dynamicmente il proprio record? Con dns dinamici è ansible utilizzare il record A e il cliente potrebbe modificare il record, se necessario. Ci vorrebbe un po 'di lavoro, ma è ansible che each singolo sotto-dominio sia una zona separata in modo da assicurarsi che un cliente possa toccare solo la propria zona.

    Non lo ho provato ma gnudip sembra essere uno strumento open source per facilitare gli aggiornamenti dinamici senza wherer affrontare l'authentication e l'impostazione di un sacco di zone sul server DNS.

    Se i tuoi record MX saranno gli stessi per tutti questi record, puoi tentare di utilizzare un DNAME per redirect XYZ.mywebservice.com a hosting.mywebservice.com. Sotto hosting.mywebservice.com aggiungi i tuoi record MX e A relavent.

    Devo dire che non ho mai utilizzato i record DNAME nella produzione, ma puoi leggere di più su di loro in RFC2672 .

    L'RHS del CNAME di customer.mywebservice.com ha una voce MX?

    In caso affermativo, il server di posta utilizzerà tale MX per trovare il server di posta da utilizzare. Speriamo di poterlo controllare.

    La risposta di Michael Gorsuch è in gran parte corretto, la catena CNAME -> A + MX funziona … per lo più . Tuttavia, esso provoca un cattivo comportmento in determinate MTAs. Quello che ho trovato per eseguire questa soluzione ad una discreta scala:

    • alcuni MTA rifiuteranno semplicemente di trovare il record.
    • altri sostituiranno erroneamente il record A where il CNAME dovrebbe essere: cioè ho inviato la posta a "joe@foo.example.com", che CNAMES a web.example.com, che ha un MX di mail.example.com e il MTA riscrive l'intestazione della busta come "To: joe@web.example.com".

    Non è ancora chiaro quanto questi problemi siano pervasivi (google / hotmail / yahoo / etc tutti sembrano occuparsi di questo correttamente), ma certamente ci stanno cercando di trovare soluzioni migliori.

    Una soluzione ansible e valida sarebbe quella di creare un nome host di base per tutti i tuoi clienti e impostarla sul record a e aaaa del server web esterno e del tuo mx, quindi CNAME tutti i tuoi domini clienti a quel nome host singolo. In questo modo dovrai solo cambiare un record quando l'indirizzo IP del sito esterno cambia.

    È l'unico modo ansible e ansible, poiché CNAME è un alias per un insieme completo di record, non solo.

    MX e CNAME sono record completamente separati – innanzitutto si determina il server di posta per il dominio specifico, il secondo fornisce l'indirizzo per un dominio. Questo dovrebbe funzionare:

     @ IN SOA ns1.mywebservice.com.  root.mywebservice.com.  (
                             2009060201
                             12h
                             1h
                             1w
                             8h
     )
    
                             NS ns1.mywebservice.com.
                             NS ns2.mywebservice.com.
    
     cliente CNAME offsite.host.
     cliente MX 10 mail.server.
    
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.