Cara membuat CNAME untuk nama root domain

12

Saya ingin menetapkan nama root domain menjadi CNAME alih-alih catatan A biasa.

Berikut adalah contoh sempurna dari apa yang saya coba lakukan:

dig lrnskls.com

Perhatikan bagian jawaban:

;; ANSWER SECTION:

lrnskls.com.            300     IN      CNAME   partner.adjix.com.

partner.adjix.com.      300     IN      A       67.121.212.61

Alasan saya mencoba melakukan ini adalah agar saya dapat mengarahkan nama root domain, melalui CNAME alias, ke Amazon S3. Menggunakan catatan A tidak berfungsi karena IP S3 berubah setiap beberapa menit untuk tujuan penyeimbangan beban.

PS - Ini sepertinya legal di bawah bagian 3.6.2 dari RFC 1034 (perhatikan contoh USC-ISIC.ARPA): http://www.faqs.org/rfcs/rfc1034.html

Kristian Glass
sumber
2
Poin bagus tentang itu tampaknya legal menurut contoh di bagian 3.6.2. RFC1034 berasal dari tahun 1987, dan harus dibaca dengan mata untuk kebutuhan saat ini. Beberapa orang / banyak orang menganggapnya ilegal dalam konteks modern, lihat serverfault.com/questions/55528/… . Yang terbaik adalah IMHO untuk berbuat salah di sisi hati-hati, yaitu jangan mencoba untuk mendorong DNS dengan menggunakan konfigurasi yang beberapa server DNS bisa tolak.
Jesper M
2
@ jesper - contoh RFC 1034 tidak relevan. Ini menunjukkan CNAME sebagai catatan mandiri. Domain .com yang didelegasikan harus memiliki catatan SOA dan catatan NS. Konfigurasi lrnskls.com secara teknis tidak valid.
Alnitak
Anda harus memperbaiki terminologi Anda, "nama root" bukan istilah umum untuk apa yang Anda jelaskan (yang tampaknya merupakan nama dari puncak zona Anda).
bortzmeyer

Jawaban:

14

Amazon mengetahui masalah dengan domain akar dan Penyeimbang Beban Elastik. Mereka merekomendasikan solusi ini:

  • Konfigurasikan domain root ke layanan yang mengarahkan ulang mydomain.com ke www.mydomain.com (atau subdomain lain pilihan Anda)
  • Siapkan catatan CNAME yang memetakan nama DNS penyeimbang beban ke "www.mydomain.com".

Saya tidak suka solusi ini, tetapi lebih "bersih" daripada solusi "force root domain to CNAME".

PEMBARUAN: Amazon sekarang menangani ini untuk ELB / S3 melalui catatan ALIAS, fitur DNS Route53.

hdanniel
sumber
5
+1 untuk menunjukkan cara yang patuh melakukan ini. Untuk mengulangi solusi ini (lihat juga jawaban Amazon yang ditautkan): Anda membuat catatan A yang valid untuk domain root, dengan SOA yang valid. Rekor A itu menunjuk ke layanan pihak ke-3 yang telah Anda kontrak untuk mengirim arahan ulang tingkat HTTP 301/302 ke www.mydomain.com.
Jesper M
@JesperMortensen Bisakah Anda merekomendasikan beberapa kontraktor yang melakukan pengalihan seperti itu? Sangat menjengkelkan bahwa pengguna saya pergi ke mycompany.com dan hanya melihat iklan penyedia nama domain saya. A recordmenunjuk ke alamat IP dan saya pasti tidak akan membeli IP statis hanya untuk tujuan ini.
foresightyj
10

Tidak, itu tidak sah. CNAMEtidak diperbolehkan untuk hidup berdampingan dengan catatan lain dan Anda perlu setidaknya di SOAsini.

Contoh tidak membuktikan sebaliknya, karena tidak menyiratkan memiliki catatan lain di sana.

Michael Krelin - hacker
sumber
Jadi, poin sebenarnya dari pertanyaan saya adalah bagaimana saya melakukan ini? Bagaimana cara mengatur nama akar domain sebagai CNAME dan bukan catatan A? Contoh "dig lrnskls.com" berfungsi persis seperti yang saya harapkan berfungsi. Atau, apakah saya melewatkan sesuatu adalah contoh penggaliannya?
Anda bisa menempatkannya persis seperti itu dilakukan untuk lrnskls.com- hanya menempatkan CNAMEcatatan di sana, tapi itu adalah ilegal untuk memiliki SOA;-)
Michael Krelin - hacker
Jadi saya menduga bahwa tidak ada cara hukum untuk menunjuk nama root domain ke S3 sebagai CNAME?
Ada cara hukum untuk memiliki host, seperti s3stuff.example.commenunjuk secara hukum ke S3.
Michael Krelin - hacker
3
Memang, solusi yang tepat adalah memiliki example.com TIDAK mendelegasikan dan meyakinkan registri .COM, Verisign, untuk menambahkan CNAME di zona .COM ... Secara teknis terdengar baik tetapi Verisign dan ICANN pasti akan menemukan alasan non-teknis untuk menolaknya. .
bortzmeyer
2

Tapi, server DNS saya tidak mengizinkan ini; juga bukan manajer DNS GoDaddy. Jadi, saya ingin melakukan apa yang dilakukan oleh pemilik lrnskls.com. Adakah yang tahu bagaimana dia melakukannya?

Anda mungkin perlu melakukan pencarian ke server DNS. Sebagian besar server DNS tidak mengizinkan Anda melakukan ini. Saya pikir saya ingat melihat pertanyaan lain pada serverfault di mana seseorang memposting server DNS yang digunakan seseorang untuk mengatur cname di root, tapi saya tidak dapat menemukannya.

Lihat juga: - Root Cname - WHM? - Tetapkan catatan domain root menjadi CNAME

Sakit kepala
sumber
Itu 1and1 menurut pertanyaan ini serverfault.com/questions/55528/…
hdanniel
1

Jika Anda menggunakan server DNS Route 53 Amazon, maka itu akan mencapai apa yang Anda inginkan.

Saya ingin tahu: tidak ada CNAME di puncak dilarang oleh RFC. Apa alasan teknis untuk ini (dengan asumsi itu tidak sewenang-wenang).

Charles Nobbert
sumber
1
CNAME menimpa semua catatan lainnya. Oleh karena itu tidak mungkin untuk membangun zona yang valid di mana apeks memiliki CNAME, karena itu juga akan menimpa SOA.
Michael Hampton