Bisakah kita memiliki beberapa CNAMES untuk satu Nama?

43

Saya membutuhkan ini untuk load balancing. Sebagai contoh, saya memiliki dua akun penyimpanan biru (katakan adan b) dan alamat gumpalan untuk itu adalah a.blob.core.windows.netdan b.blob.core.windows.net. Keduanya menyimpan data yang identik. Sekarang saya perlu memberikan nama eksternal tunggal (katakanlah example.com) yang menunjuk ke kedua akun penyimpanan dan harus bekerja dalam round robin. Ini dapat dicapai jika saya membuat dua entri CNAME dalam DNS sebagai berikut dan itu akan diputuskan ke salah satu dari mereka di round robing.

  1. example.com CNAME a.blob.core.windows.net
  2. example.com CNAME b.blob.core.windows.net

Tapi saya tidak bisa membuat dua catatan CNAME untuk satu nama di server DNS Windows.

Jadi apakah mungkin?

Raghuram Murthy P
sumber
Saya tidak dapat memeriksa, tetapi saya tidak berpikir Anda bisa melakukan ini dengan CNAMES. Coba A record sebagai gantinya.
Dan
1
@Dan Masalahnya adalah layanan yang tidak memiliki IP tetap, seperti AWS Elastic Load Balancer. Mengingat core.windows.netsaya akan curiga situasi serupa di Azure atau sesuatu.
ceejayoz
Tetapi dengan catatan A, saya harus menentukan alamat IP kan? Saya lebih suka nama DNS daripada alamat IP.
Raghuram Murthy P
mengapa kamu ingin melakukan itu? penyimpanan azure blob sudah disiapkan untuk ketersediaan tinggi dan redundansi geo.
JTKH
@ JTKH itu karena gumpalan memiliki batas unduhan 65MB / detik atau lebih dan jika saya ingin batas unduhan lebih banyak, saya berpikir untuk menggunakan lebih dari satu gumpalan.
Raghuram Murthy P

Jawaban:

58

Beberapa catatan CNAME untuk nama domain berkualifikasi penuh yang sama merupakan pelanggaran terhadap spesifikasi untuk DNS. Beberapa versi BIND akan memungkinkan Anda untuk melakukan ini (beberapa hanya jika Anda menentukan multiple-cnames yespilihan) dan akan menyeimbangkan beban antara saat itu tetapi itu secara teknis tidak sah.

Seharusnya tidak ada catatan sumber daya (RR) dengan nama yang sama dengan CNAME dan, untuk memilih nits, itu akan mencakup beberapa CNAME identik. Quoth RFC 1034, Bagian 3.6.2:

Jika CN CNAME hadir di sebuah node, tidak ada data lain yang harus ada; ini memastikan bahwa data untuk nama kanonik dan aliasnya tidak boleh berbeda. Aturan ini juga memastikan bahwa CNAME yang di-cache dapat digunakan tanpa memeriksa dengan server otoritatif untuk tipe RR lainnya.

Metode letter-of-the RFC untuk menangani apa yang Anda lakukan adalah dengan CNAME tunggal yang mengacu pada catatan "A" yang seimbang.

Evan Anderson
sumber
Lihat docstore.mik.ua/orelly/networking_2ndEd/dns/… untuk lebih jelasnya.
Dipakai
11

Kamu tidak bisa. CNAME membuat satu catatan nama lain untuk yang lain. Jika sebuah catatan bisa memiliki CNAMES untuk dua nama, itu bukan nama lain untuk keduanya, tetapi nama untuk sesuatu yang sama sekali baru, membuat entri CNAME tidak pantas.

Namun, ada kemungkinan cara yang baik untuk menyelesaikan masalah luar Anda. Misalnya, Anda dapat memiliki beberapa catatan A.

David Schwartz
sumber
dapatkah saya memiliki satu CName dan satu A Record untuk situs web pada saat yang sama?
Amesh