DNS A merekam ALIAS, dan ANAME merekam perbedaan

8

Kami memiliki sejumlah grup server di AWS yang menggunakan trio server untuk melayani situs. Setiap server, atau sekumpulan server berada dalam wilayah ketersediaan yang berbeda, salah satunya adalah server pengalihan sementara dua lainnya adalah server utama yang diakses di belakang penyeimbang beban elastis. Kami akhirnya memiliki satu klien untuk menggunakan Route53 dan mencari beberapa detail domain puncak zona penunjuk pada saldo beban elastis. Sebagian besar penyedia DNS yang mendukung ini tampaknya menyebutnya sebagai alias DNS dari catatan A. Namun beberapa situs tampaknya merujuk pada catatan serupa yang disebut catatan ANAME. Ini bukan CNAME biasa, atau catatan DNAME yang tidak lazim. Sebagian besar situs-situs ini juga merujuk kembali ke DNSMadee EasyDNS sederhana yang menggunakannya.

Jadi apa perbedaan antara Route53 (atau di tempat lain) catatan ALIAS dan catatan ANAME? Apakah ada satu? Apakah salah satu dari ini memiliki, atau dimasukkan dalam dokumen implementasi IEFT RFC atau catatan alias semua diimplementasikan dalam penyedia yang mereka gunakan?

[edit]: penyedia DNS yang salah terdaftar untuk penggunaan ANAME

dcmbrown
sumber
4
"Catatan" ALIAS dan ANAME tidak dimasukkan oleh RFC.
Andrew B
Ini harus diperbarui untuk menunjukkan bahwa catatan ANAME ada dalam draft kelompok kerja IETF: datatracker.ietf.org/doc/draft-ietf-dnsop-aname
Christopher_G_Lewis

Jawaban:

10

Sepertinya ANAMEitu hanya nama yang terdengar standar yang dibuat oleh DNS Made Easy untuk menggambarkan penawaran layanan mereka yang sangat mirip dengan apa yang dilakukan Route 53 Alias.

Saya menggambarkan perbedaan antara Alias ​​dan CNAMEbaru - baru ini di Stack Overflow , tetapi untuk meringkas di sini:

Server DNS yang dilengkapi dengan CNAMEuntuk host tertentu memberikan referensi yang menunjukkan nama kanonik host yang dicari, sering kali memerlukan permintaan kedua oleh resolver asal untuk mencari nama alternatif itu; sebuah Alias ​​(dan dari tampilannya, an ANAME) menggunakan informasi internal yang diketahui oleh server DNS tentang tujuan "benar" untuk langsung merespons permintaan tersebut, tanpa perlu pencarian kedua dan tanpa visibilitas informasi perantara di Pertukaran protokol DNS.

Apa yang disediakan oleh Alias, selain itu, adalah kemampuan untuk menggunakan informasi yang dimiliki oleh Route 53 tentang alamat IP yang saat ini berlaku untuk titik akhir situs web S3, ELB, dan Cloudfront, untuk menanggapi pertanyaan A-record dengan informasi otoritatif yang akurat dalam waktu dekat, yang, jika Anda menggunakan layanan itu, bukanlah sesuatu yang akan dimiliki penyedia lain; tentu saja, kebalikannya juga benar, Route 53 Alias ​​tidak dapat digunakan untuk menemukan dan mengembalikan informasi yang secara intrinsik tidak tersedia untuk Route 53. Anda tidak bisa hanya menggunakan target "apa pun" untuk alias - hanya titik akhir dari tiga layanan yang saya sebutkan di atas, atau catatan lain di zona yang dihosting yang sama dalam Rute 53.

Dalam hal ini, sebuah ANAMEdan sebuah Alias ​​tidak setara, tergantung pada layanan apa yang menyediakan back-end ... kecuali yang ANAMEmenunjuk (secara internal) ke informasi yang statis.

Sebuah ANAMEcatatan pada layanan DNS host lain tidak akan mampu untuk memberikan kemampuan yang sama seperti Route 53 jika tujuan adalah S3, ELB, atau CloudFront, dengan cara yang sama bahwa Alias di Route 53 tidak akan dapat kembali jawaban menunjuk ke yang lain Lokasi tepi penyedia CDN menggunakan informasi yang tersedia secara internal, karena informasi tersebut tidak tersedia secara internal untuk infrastruktur penyedia. Kalau tidak, fungsinya tampaknya sama.

Michael - sqlbot
sumber
Hanya catatan singkat bahwa, hingga saat ini, Rute 53 masih tidak mendukung domain puncak CNAME atau alternatif apa pun.
Fabien Snauwaert
@FabienSnauwaert yang tidak akurat. Route 53 mendukung A-Record Aliases di apex, yang dapat mencerminkan nilai titik akhir S3, CloudFront, ELB / ALB, atau Elastic Beanstalk. Rute 53 tidak mendukung CNAME di puncak zona, dan kemungkinan tidak akan pernah, karena itu bukan konfigurasi yang valid.
Michael - sqlbot
1
Terima kasih atas klarifikasi, Michael, saya menghargainya. Saya mencoba untuk merujuk pada apa yang disebut ALIASdi DNSimple, ANAMEdi DNS Made Easy, ANAMEdi easyDNS, ALIASdi PointDNS, dan CNAME(misnommer) di CloudFlare dan membiarkan titik mengatakan mydomain.com (kurang-www) ke domain lain (mis: myapp.herokuapp. com). Sejauh yang saya tahu, Rute 53 tidak menawarkan opsi seperti itu saat ini. (EDIT: Saya membahas ini di sini tentang perusahaan hosting lain.)
Fabien Snauwaert
Kurangnya CNAME di root domain adalah kekhilafan dalam RFC asli yang seharusnya sudah diperbaiki sejak lama. Jelas, CNAME di root harus untuk semua permintaan rekaman KECUALI SOA, daripada membuatnya menjadi kesalahan, karena itu sama sekali tidak ambigu dan berfungsi dengan baik ... bahkan dengan server caching lawas (coba ... hack server DNS dan sajikan CNAME dari root ... itu akan menyelesaikan, dan di-cache dengan benar!).
Erik Aronesty
@ErikAronesty benar-benar tidak sepenuhnya ambigu. Meretas server DNS dan kemudian mencoba mengirim email ke domain. Siapa penukar suratnya? Jika Anda akan membuat pengecualian untuk SOA, Anda memerlukan pengecualian untuk MX, TXT, NS, ... karena CNAME berarti nama host ini adalah alias untuk yang lain, ini menyiratkan bahwa catatan tersebut harus dicari untuk nama host lain dan ini biasanya tidak masuk akal, terutama untuk hosting web.
Michael - sqlbot
1

Mulai di sini di FAQ, ini menjelaskan bahwa catatan alias adalah pointer spesifik Route53, mirip dengan catatan CNAME, tetapi tidak terlihat oleh resolver.

mortenya
sumber
Itu yang saya harapkan. Sementara pengujian ini diatur hanya dalam format catatan sederhana, tampaknya bekerja kira-kira seperti catatan DNS-round-robin, dengan DNS lokal menyimpan rekaman hingga habis, dan kemudian lebih sering daripada tidak beralih ke catatan yang berlawanan.
dcmbrown