Menggunakan CNAME untuk menunjuk ke domain lain untuk menyimpan alamat IP

39

Saya memiliki satu server yang saya hostingkan beberapa situs.

Saat ini, setiap situs memiliki domain yang di-host oleh penyedia independen dan masing-masing memiliki catatan A yang menunjuk ke alamat IP server.

Tetapi jika saya ingin mengubah server di masa depan, saya harus kembali memperbarui setiap alamat IP di setiap catatan DNS.

Apakah mungkin untuk menggunakan catatan CNAME di setiap domain untuk menunjuk ke domain lain yang saya kontrol langsung?

Ini agar saya dapat memperbarui alamat IP di 1 tempat sendiri dan tidak harus mendapatkan semua penyedia DNS lainnya untuk memperbarui catatan mereka secara terpisah?

wow
sumber

Jawaban:

25

Itulah titik CNAME. CNAME tidak perlu menunjuk ke DNS di zona yang sama, itu dapat menunjuk ke nama DNS apa pun yang terdaftar dengan server nama apa pun.

Apa artinya bagi klien Anda adalah pencarian DNS tambahan di NS untuk host lain, tapi itu harga yang sangat kecil untuk membayar sebagian besar situs web di internet.

Mark Henderson
sumber
biasanya itu adalah server rekursif yang akan melakukan pencarian tambahan itu, bukan resolver stub di klien.
Alnitak
27

Per jawaban Farseeker, ya, ini adalah (semacam) untuk apa CNAMEcatatan itu.

Namun sementara Anda dapat menggunakan ini untuk titik www.example.netuntuk www.example.com, Anda tidak dapat menggunakannya untuk menunjuk example.netsendiri (yaitu tanpa wwwawalan) ke sesuatu yang lain.

Ini karena example.netharus juga memiliki SOAcatatan dan NScatatan, dan itu tidak sah dalam DNS untuk memiliki CNAMEhadiah di bagian yang sama dengan catatan lainnya (kunci DNSSEC dikecualikan).

Kualifikasi "semacam" di atas, adalah karena secara ketat CNAMEcatatan tersebut memperkenalkan "sisi kiri" sebagai alias untuk target CNAMErekaman, di mana target tersebut sebenarnya adalah "nama kanonik".

Karenanya jika Anda melihat misalnya:

www.example.net IN CNAME www.example.com.

Itu tidak mengatakan bahwa www.example.netharus "diarahkan" ke www.example.com, itu mengatakan bahwa itu www.example.netadalah nama lain untuk www.example.com .

Alnitak
sumber
2
"example.net juga harus memiliki catatan SOA". Beberapa orang curang: lihat lrnskls.com.
bortzmeyer
ini adalah peretasan yang tidak menyenangkan, dan mereka akan memiliki masalah besar jika mereka ingin menandatanganinya.
Alnitak
5
+1 ini adalah poin yang bagus dan salah satu kelemahan yang lebih besar (dan alasan mengapa tidak ada situs saya yang dapat digunakan www-less karena domain tersebut juga membutuhkan data MX, melarang ini).
Oskar Duveborn
3

Ya itu mungkin.

Begitulah cara saya melakukan server web eksperimental saya yang juga memiliki IP dinamis (meskipun jarang berubah).

Oskar Duveborn
sumber
0

Saya harus kembali memperbarui setiap alamat IP di setiap catatan DNS.

Nah, CNAME memang solusi yang mungkin (lihat balasan Alnitak untuk batas CNAME) tetapi ada satu lagi: alih-alih mengelola file zona Anda dengan tangan, buat program sepuluh baris (Perl / Python / Ruby / cpp / m4 / apa pun) yang akan menghasilkan file zona dari master (file teks, file XML, DBMS, apa pun)

Dengan begitu, alamat IP Anda hanya bisa di satu tempat. Ketika itu berubah, jalankan kembali program.

bortzmeyer
sumber