Hostname, Domain, dan FQDN
Hostname, domain, dan FQDN (Fully Qualified Domain Name) adalah konsep dasar penamaan mesin di jaringan. Halaman ini menjelaskan ketiganya, aturan penamaan yang berlaku, konvensi untuk jaringan internal, serta perintah-perintah yang relevan untuk administrasi sistem berbasis Linux.
Ringkasan singkat
| Istilah | Definisi singkat | Contoh |
|---|---|---|
| Hostname | Nama satu mesin spesifik | node1
|
| Domain | "Wilayah" / grup tempat mesin bernaung | lab.internal
|
| FQDN | Nama lengkap = hostname + domain | node1.lab.internal
|
Hostname
Hostname adalah nama yang mengidentifikasi satu mesin tertentu di dalam sebuah jaringan. Ini ibarat "nama panggilan" komputer.
Contoh: pve, web-server-01, node1, db-master.
Aturan penamaan hostname
Berdasarkan RFC 952 dan RFC 1123:
| Aturan | Keterangan |
|---|---|
| Karakter yang diizinkan | Huruf (a–z), angka (0–9), dan tanda hubung (-)
|
| Tidak boleh | Spasi, underscore (_), titik di tengah label, simbol lain
|
| Posisi tanda hubung | Tidak boleh di awal atau akhir label |
| Panjang maksimum | 63 karakter per label |
| Case | Case-insensitive (PVE = pve)
|
Catatan: Underscore sering dipakai di praktik nyata, tetapi secara RFC tidak valid untuk hostname dan bisa menyebabkan masalah pada beberapa resolver DNS. Gunakan tanda hubung sebagai gantinya.
Domain
Domain adalah "keluarga" atau wilayah administratif tempat sebuah mesin bernaung. Domain memberi konteks: mesin ini bagian dari organisasi atau jaringan mana.
Yang penting dipahami: domain bersifat hierarkis, dibaca dari kanan ke kiri dengan tingkat kespesifikan yang makin tinggi.
mail . google . com . (root) │ │ │ │ │ │ │ └── root (titik tak terlihat di paling ujung) │ │ └───────── TLD (Top Level Domain) │ └───────────────── second-level domain (SLD) └───────────────────────── subdomain / hostname
Komponen domain
| Level | Nama | Contoh |
|---|---|---|
| Paling kanan | Root (implisit, titik kosong) | .
|
| 1 | TLD (Top Level Domain) | com, org, id
|
| 2 | SLD (Second Level Domain) | google pada google.com
|
| 3+ | Subdomain | mail pada mail.google.com
|
FQDN
FQDN (Fully Qualified Domain Name) adalah nama lengkap dan tidak ambigu sebuah mesin di seluruh pohon DNS. FQDN = hostname + domain.
node1 . lab.internal
───── ────────────
hostname domain
└──────────┬──────────┘
FQDN
Sebuah FQDN secara teknis diakhiri titik (node1.lab.internal.) yang menandakan root, walaupun titik akhir ini hampir selalu disembunyikan dalam penggunaan sehari-hari.
- Panjang maksimum sebuah FQDN penuh: 253 karakter.
- Hostname hanya perlu unik di dalam domain-nya, sehingga
node1.lab-a.internaldannode1.lab-b.internalbisa hidup berdampingan tanpa konflik.
Hierarki DNS
Seluruh sistem penamaan ini membentuk sebuah pohon terbalik. Resolusi nama → IP dilakukan dengan menelusuri pohon ini dari kanan (root) ke kiri.
. (root)
/ | \
com org id
/ \
google co.id
/ \
mail telkom.co.id
Keuntungan struktur hierarkis ini adalah delegasi: setiap level dapat dikelola oleh pihak yang berbeda. TLD .com dikelola satu registry, google.com dikelola Google, dan seterusnya. Tidak ada satu pihak pun yang harus mengetahui seluruh nama di dunia.
Catatan: Analogi bagi developer: hierarki ini mirip namespace di pemrograman. std::vector dan boost::vector sama-sama bernama vector tetapi tidak collision karena berada di namespace berbeda. Hostname adalah nama variabelnya, domain adalah namespace-nya.
Konvensi penamaan untuk jaringan internal
Untuk lab, jaringan internal, atau cluster, jangan memakai TLD publik sembarangan atau domain yang tidak kamu miliki. Gunakan TLD khusus yang memang dicadangkan untuk penggunaan internal:
| TLD / domain | Status | Keterangan |
|---|---|---|
.internal |
Direkomendasikan | Dicadangkan ICANN (2024) khusus untuk penggunaan privat/internal |
home.arpa |
Direkomendasikan | Ditetapkan RFC 8375 untuk jaringan rumah/residensial |
.lan |
Umum dipakai | Konvensi de-facto, walau bukan standar resmi |
.local |
HINDARI | Dicadangkan untuk mDNS/Bonjour (RFC 6762); bisa merusak resolusi nama |
.dev, .app |
HINDARI | TLD publik nyata; memaksa HTTPS dan bisa bentrok dengan internet |
Contoh skema penamaan cluster
Untuk cluster multi-node, beri hostname berbeda tiap node dengan domain yang sama:
node1.lab.internal node2.lab.internal node3.lab.internal
Perintah berguna (Linux)
# Menampilkan hostname pendek
hostname
# Menampilkan FQDN penuh
hostname -f
# Menampilkan / mengatur hostname secara persisten (systemd)
hostnamectl
hostnamectl set-hostname node1
# Resolusi nama (cek apakah nama bisa di-resolve ke IP)
resolvectl query node1.lab.internal
dig node1.lab.internal
File konfigurasi terkait
| File | Fungsi |
|---|---|
/etc/hostname |
Menyimpan hostname mesin |
/etc/hosts |
Pemetaan statis nama → IP (dibaca sebelum DNS) |
/etc/resolv.conf |
Konfigurasi resolver DNS (nameserver, search domain) |
Contoh entri /etc/hosts yang benar (FQDN didahulukan, lalu hostname pendek):
192.168.1.10 node1.lab.internal node1
Catatan untuk Proxmox VE
Saat instalasi Proxmox VE, installer meminta sebuah FQDN, bukan sekadar hostname. Hal ini karena banyak komponen Proxmox (sertifikat SSL, sistem cluster, notifikasi email) memerlukan nama yang unik dan resolvable. Gunakan FQDN seperti pve.lab.internal dan hindari .local.
Kesalahan umum
- Menyamakan hostname dengan FQDN. Di Linux,
hostnamememberi nama pendek sedangkanhostname -fmemberi FQDN penuh. - Memakai
.localuntuk jaringan internal → bentrok dengan mDNS. - Memakai underscore (
_) pada hostname → tidak valid menurut RFC. - Lupa mengisi
/etc/hostssehingga FQDN tidak resolvable secara lokal.
Referensi
- RFC 952 — DoD Internet Host Table Specification (aturan hostname awal)
- RFC 1123 — Requirements for Internet Hosts (pelonggaran aturan hostname)
- RFC 1034 & RFC 1035 — Domain Names: Concepts and Facilities / Implementation
- RFC 6761 — Special-Use Domain Names
- RFC 6762 — Multicast DNS (mendefinisikan
.local) - RFC 8375 — Special-Use Domain "home.arpa."