File Hosts: Apa Itu, Di Mana Menemukannya, dan Cara Mengeditnya di Semua OS
DNS Override Lokal Anda — Tanpa Koneksi Internet
Setiap kali Anda mengetikkan nama domain di browser, komputer Anda secara diam-diam menjalankan proses pencarian untuk menerjemahkan nama tersebut menjadi alamat IP. Namun sebelum menghubungi server DNS eksternal, komputer memeriksa sebuah file teks kecil yang sering diabaikan dan tersimpan diam-diam di sistem lokal Anda: hosts file.
File ini adalah salah satu alat paling powerful dan kurang diapresiasi yang tersedia bagi para developer, administrator sistem, maupun pengguna tingkat lanjut. File ini memungkinkan Anda memetakan nama domain ke alamat IP secara manual — secara instan, lokal, dan tanpa menyentuh router atau penyedia DNS Anda. Baik saat Anda menguji website baru sebelum diluncurkan, memblokir server iklan, atau memecahkan masalah propagasi DNS, hosts file memberi Anda kontrol langsung dan mendalam atas cara mesin Anda me-resolve nama domain.
Dalam panduan ini, Anda akan mempelajari secara tepat apa itu hosts file, di mana menemukannya di Windows, macOS, dan Linux, serta cara mengeditnya dengan aman dan efektif.
Apa Itu Hosts File?
Hosts file adalah file sistem berupa teks biasa yang memetakan hostname (nama domain) ke alamat IP. File ini mendahului sistem DNS modern dan awalnya merupakan satu-satunya mekanisme yang digunakan untuk me-resolve nama di ARPANET. Saat ini, file ini masih berfungsi sebagai lapisan override DNS lokal — OS Anda memeriksanya terlebih dahulu sebelum membuat kueri DNS eksternal apa pun.
Cara Kerjanya
Saat Anda membuka sebuah website, sistem operasi Anda mengikuti urutan resolusi berikut:
- Periksa hosts file lokal untuk entri yang cocok
- Kueri cache DNS lokal
- Hubungi DNS resolver yang dikonfigurasi (misalnya, DNS ISP Anda atau resolver publik seperti 8.8.8.8)
Jika hosts file berisi entri yang cocok, pencarian berhenti di sana. Tidak ada kueri DNS eksternal yang dibuat. Hal ini membuatnya sangat cepat dan berguna untuk override lokal.
Kasus Penggunaan Umum Hosts File
| Kasus Penggunaan | Cara Kerjanya |
|---|---|
| Pengujian website lokal | Arahkan domain ke 127.0.0.1 atau IP server staging |
| Blokir website yang tidak diinginkan | Alihkan domain iklan atau pelacakan ke 0.0.0.0 |
| Lewati penundaan propagasi DNS | Atur secara manual IP untuk domain yang baru dimigrasikan |
| Routing lingkungan pengembangan | Petakan domain lokal kustom ke container Docker atau VM |
| Override entri DNS yang rusak | Paksa IP yang benar saat DNS salah dikonfigurasi |
> Tips Pro untuk Developer: Jika Anda menjalankan lingkungan pengembangan lokal atau menguji situs di server VPS Hosting sebelum propagasi DNS selesai, mengedit hosts file adalah cara tercepat untuk melihat pratinjau situs live Anda tanpa mengubah pengaturan DNS.
Di Mana Hosts File Berada?
Lokasi hosts file bervariasi tergantung sistem operasi. Berikut referensi singkatnya:
Windows
C:WindowsSystem32driversetchostsmacOS
/etc/hostsLinux (Semua Distribusi Utama)
/etc/hostsDi macOS dan Linux, /etc/hosts biasanya merupakan symlink atau file langsung yang dikelola oleh sistem. Pada distribusi Linux yang menggunakan systemd-resolved, file ini tetap mendapat prioritas untuk override lokal.
Cara Mengedit Hosts File di Windows
Mengedit hosts file di Windows memerlukan hak akses administrator. File ini dilindungi oleh sistem, sehingga akun pengguna standar tidak dapat mengubahnya.
Langkah 1: Buka Notepad sebagai Administrator
- Tekan Windows Key + S dan ketik
Notepaddi bilah pencarian - Klik kanan pada Notepad di hasil pencarian
- Pilih Run as administrator
- Klik Yes jika diminta oleh User Account Control (UAC)
Langkah 2: Buka Hosts File
- Di Notepad, klik File → Open
- Navigasi ke:
C:WindowsSystem32driversetc - Pada dropdown tipe file (di sebelah kolom nama file), ubah dari
Text Documents (*.txt)menjadi All Files (*.*) - Pilih file bernama
hostsdan klik Open
Langkah 3: Tambah atau Ubah Entri
Format untuk setiap entri sangat sederhana:
[IP Address] [Hostname]Tambahkan entri Anda di bagian bawah file. Misalnya:
# Redirect example.com to local development server
127.0.0.1 example.com
# Point testsite.com to a staging VPS
192.168.1.100 testsite.com
# Block an ad network
0.0.0.0 ads.unwanteddomain.comBaris yang diawali dengan # adalah komentar dan diabaikan oleh sistem.
Langkah 4: Simpan File
Klik File → Save. Jika Anda mendapat error izin, pastikan Anda membuka Notepad sebagai administrator. Jangan simpan file dengan ekstensi .txt.
Langkah 5: Flush Cache DNS
Setelah menyimpan, flush cache DNS agar perubahan Anda langsung berlaku:
- Buka Command Prompt sebagai administrator
- Jalankan perintah berikut:
ipconfig /flushdnsAnda akan melihat pesan: *"Successfully flushed the DNS Resolver Cache."*
Cara Mengedit Hosts File di macOS
Di macOS, hosts file diedit melalui Terminal menggunakan editor teks dengan hak akses sudo (superuser).
Langkah 1: Buka Terminal
Tekan Command + Space untuk membuka Spotlight Search, ketik Terminal, dan tekan Enter.
Langkah 2: Buka Hosts File dengan nano
Jalankan perintah berikut:
sudo nano /etc/hostsMasukkan kata sandi administrator Anda saat diminta. Kata sandi tidak akan terlihat saat Anda mengetik — ini normal.
Langkah 3: Edit File
Editor teks nano akan membuka hosts file. Gunakan tombol panah untuk navigasi ke bagian bawah file dan tambahkan entri Anda:
# Development environment
127.0.0.1 myproject.local
# Staging server
203.0.113.45 staging.example.com
# Block tracking domain
0.0.0.0 tracker.example.netLangkah 4: Simpan dan Keluar
- Tekan Control + O untuk menulis (menyimpan) file
- Tekan Enter untuk mengonfirmasi nama file
- Tekan Control + X untuk keluar dari nano
Langkah 5: Flush Cache DNS di macOS
Jalankan perintah yang sesuai untuk versi macOS Anda:
macOS Monterey, Ventura, Sonoma (dan sebagian besar versi modern):
sudo killall -HUP mDNSRespondermacOS Big Sur dan sebelumnya (alternatif):
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponderPerubahan Anda sekarang akan aktif di seluruh sistem.
Cara Mengedit Hosts File di Linux
Linux mengikuti proses umum yang sama seperti macOS, karena keduanya berbasis Unix. Anda memerlukan akses root atau sudo.
Langkah 1: Buka Terminal
Jalankan aplikasi Terminal Anda. Pada sebagian besar lingkungan desktop, Anda dapat menemukannya di menu aplikasi atau tekan Ctrl + Alt + T.
Langkah 2: Buka Hosts File
sudo nano /etc/hostsMasukkan kata sandi root atau sudo Anda saat diminta.
Langkah 3: Tambahkan Entri Anda
Navigasi ke bagian bawah file dan tambahkan pemetaan kustom Anda:
# Local dev environment
127.0.0.1 devsite.local
# Internal server
10.0.0.5 internal.company.com
# Block unwanted domain
0.0.0.0 malicious-ads.example.comLangkah 4: Simpan dan Keluar
- Tekan Control + O, lalu Enter untuk menyimpan
- Tekan Control + X untuk keluar dari nano
Langkah 5: Flush Cache DNS di Linux
Perintah untuk flush DNS bervariasi tergantung distribusi dan DNS resolver:
Ubuntu / Debian (dengan systemd-resolved):
sudo systemd-resolve --flush-cachesAtau pada versi yang lebih baru:
sudo resolvectl flush-cachesCentOS / RHEL / Fedora:
sudo systemctl restart NetworkManagerArch Linux:
sudo systemd-resolve --flush-cachesJika Anda menjalankan daemon caching DNS kustom seperti nscd atau dnsmasq, restart layanan yang relevan:
sudo systemctl restart nscd
# or
sudo systemctl restart dnsmasqMemahami Struktur Default Hosts File
Saat pertama kali membuka hosts file di OS mana pun, Anda akan melihat beberapa entri default. Berikut tampilan hosts file Linux/macOS yang khas secara bawaan:
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhostPenjelasan entri utama:
127.0.0.1 localhost— Memetakan alamat loopback ke “localhost”. Ini penting untuk jaringan lokal dan tidak boleh dihapus.::1 localhost— Setara IPv6 dari alamat loopback.255.255.255.255 broadcasthost— Digunakan untuk broadcasting jaringan (khusus macOS).
Jangan pernah menghapus entri default ini. Melakukannya dapat merusak jaringan aplikasi lokal, koneksi database, dan layanan sistem lainnya.
Praktik Terbaik untuk Mengedit Hosts File
1. Selalu Buat Backup Terlebih Dahulu
Sebelum membuat perubahan apa pun, backup file aslinya:
Linux / macOS:
sudo cp /etc/hosts /etc/hosts.backupWindows (Command Prompt sebagai Administrator):
copy C:WindowsSystem32driversetchosts C:WindowsSystem32driversetchosts.backupJika ada yang rusak, Anda dapat segera memulihkan file aslinya.
2. Gunakan Komentar untuk Mendokumentasikan Perubahan Anda
Selalu beri anotasi pada entri Anda dengan komentar menggunakan #. Ini sangat penting dalam lingkungan tim atau server:
# Added 2024-01-15 — Staging environment for client project
192.168.1.50 staging.clientproject.com
# Temporary block — remove after campaign ends
0.0.0.0 ads.campaign-tracker.net3. Gunakan 0.0.0.0 daripada 127.0.0.1 untuk Pemblokiran
Saat memblokir domain, 0.0.0.0 umumnya lebih disukai daripada 127.0.0.1 karena:
- Tidak mencoba koneksi ke mesin lokal Anda
- Gagal lebih cepat (tidak ada timeout koneksi)
- Tidak mengganggu server web lokal yang berjalan di port 80/443
4. Jangan Blokir Domain Sistem yang Kritis
Berhati-hatilah dalam memblokir domain yang terkait dengan:
- Layanan Windows Update atau macOS Software Update
- Server pembaruan antivirus
- Layanan sinkronisasi cloud (Dropbox, OneDrive, iCloud)
- Server validasi lisensi untuk perangkat lunak yang Anda gunakan
5. Jaga Entri Tetap Terorganisir
Kelompokkan entri terkait bersama dan gunakan header komentar untuk kejelasan:
# ==========================================
# LOCAL DEVELOPMENT ENVIRONMENTS
# ==========================================
127.0.0.1 myapp.local
127.0.0.1 api.myapp.local
# ==========================================
# BLOCKED DOMAINS
# ==========================================
0.0.0.0 ads.example.com
0.0.0.0 tracker.example.net6. Ingat bahwa Perubahan Hosts File Hanya Bersifat Lokal
Hosts file hanya memengaruhi mesin tempat file tersebut berada. Jika Anda mengelola beberapa server atau membutuhkan perubahan DNS yang berlaku di seluruh infrastruktur Anda, Anda perlu mengonfigurasi DNS di tingkat server atau jaringan. Untuk tim yang mengelola beberapa lingkungan, Dedicated Server yang dikonfigurasi dengan baik bersama DNS resolver lokal (seperti BIND atau Unbound) adalah solusi yang lebih skalabel.
Kasus Penggunaan Lanjutan
Menguji Website Sebelum Propagasi DNS
Saat Anda memigrasikan website ke penyedia hosting baru atau VPS dengan cPanel baru, propagasi DNS dapat memakan waktu mulai dari beberapa menit hingga 48 jam. Daripada menunggu, Anda dapat menambahkan IP server baru ke hosts file dan segera menguji situs live sebagaimana yang akan tampil di server baru:
# Testing migration to new VPS — remove after DNS propagates
203.0.113.10 yourdomain.com
203.0.113.10 www.yourdomain.comBuka browser Anda, navigasi ke yourdomain.com, dan Anda akan melihat situs yang di-hosting di server baru — sementara orang lain masih melihat yang lama.
Menyiapkan Domain Pengembangan Lokal
Para developer sering lebih memilih menggunakan nama domain yang realistis untuk proyek lokal daripada localhost:3000. Anda dapat membuat domain lokal kustom:
127.0.0.1 myproject.dev
127.0.0.1 api.myproject.dev
127.0.0.1 admin.myproject.devPadukan ini dengan server web lokal (Apache, Nginx, atau Caddy) yang dikonfigurasi dengan virtual host, dan Anda memiliki lingkungan pengembangan lokal yang bersih dan profesional.
Memblokir Seluruh Jaringan Iklan
Anda dapat menambahkan beberapa entri untuk memblokir domain penyaji iklan dan pelacakan yang dikenal:
0.0.0.0 doubleclick.net
0.0.0.0 googlesyndication.com
0.0.0.0 adservice.google.comUntuk pendekatan yang lebih komprehensif, proyek seperti hosts milik StevenBlack menyediakan hosts file yang diperbarui secara berkala dan terkonsolidasi dengan puluhan ribu domain yang diblokir.
Pemecahan Masalah Umum Hosts File
Perubahan Tidak Berlaku
- Apakah Anda sudah flush cache DNS? Ini adalah penyebab paling umum. Jalankan perintah flush yang sesuai untuk OS Anda.
- Apakah Anda menyimpan file dengan benar? Di Windows, pastikan Anda tidak menyimpannya secara tidak sengaja sebagai
hosts.txt. - Apakah browser Anda menggunakan cache DNS-nya sendiri? Chrome dan Firefox memiliki cache DNS tersendiri. Coba bersihkan cache tersebut atau buka jendela private/incognito.
- Apakah Anda menggunakan VPN? Klien VPN sering kali mengganti pengaturan DNS lokal, melewati hosts file sepenuhnya.
Error Permission Denied
- Windows: Pastikan Notepad (atau editor Anda) berjalan sebagai Administrator.
- Linux/macOS: Pastikan Anda menggunakan
sudosebelum perintah Anda.
Website Masih Me-resolve ke IP Lama
- Verifikasi entri diformat dengan benar:
IP_ADDRESS[TAB or SPACES]hostname— tanpahttp://atau trailing slash. - Periksa typo pada nama domain.
- Konfirmasi tidak ada entri yang bertentangan di bagian atas file.
Tidak Sengaja Merusak Sesuatu
Pulihkan backup Anda:
# Linux/macOS
sudo cp /etc/hosts.backup /etc/hosts
# Windows (as Administrator)
copy C:WindowsSystem32driversetchosts.backup C:WindowsSystem32driversetchostsHosts File vs. DNS: Kapan Menggunakan Masing-masing
| Skenario | Hosts File | Konfigurasi DNS |
|---|---|---|
| Pengujian lokal cepat di satu mesin | ✅ Ideal | ❌ Berlebihan |
| Lingkungan dev untuk seluruh tim | ❌ Tidak skalabel | ✅ Gunakan DNS internal |
| Memblokir situs di satu perangkat | ✅ Berfungsi baik | ❌ Tidak perlu |
| Manajemen domain produksi | ❌ Tidak sesuai | ✅ Diperlukan |
| Pengujian situs sebelum peluncuran | ✅ Sempurna | ❌ Akan memengaruhi semua pengguna |
| Infrastruktur multi-server | ❌ Terlalu manual | ✅ Penting |
Untuk lingkungan produksi, selalu kelola DNS melalui registrar domain atau panel kontrol hosting Anda. Jika Anda perlu mendaftarkan atau mengelola domain secara profesional, Registrasi Domain melalui penyedia yang andal memastikan catatan DNS Anda dipropagasikan dengan benar dan aman di seluruh internet.
Demikian pula, jika Anda menjalankan mail server dan perlu memastikan pengiriman email yang tepat, mengedit hosts file bukan pengganti untuk catatan MX yang dikonfigurasi dengan benar. Jelajahi solusi Email Hosting khusus untuk infrastruktur mail yang andal dan dikonfigurasi dengan benar.
Referensi Cepat: Cheat Sheet Hosts File
Lokasi File
| OS | Path |
|---|---|
| Windows | C:WindowsSystem32driversetchosts |
| macOS | /etc/hosts |
| Linux | /etc/hosts |
Buka untuk Diedit
| OS | Perintah / Metode |
|---|---|
| Windows | Notepad → Run as Administrator → File → Open |
| macOS | sudo nano /etc/hosts |
| Linux | sudo nano /etc/hosts |
Flush Cache DNS
| OS | Perintah |
|---|---|
| Windows | ipconfig /flushdns |
| macOS | sudo killall -HUP mDNSResponder |
| Ubuntu/Debian | sudo systemd-resolve --flush-caches |
| CentOS/RHEL | sudo systemctl restart NetworkManager |
Format Entri
[IP Address] [hostname] [optional alias]
# Examples:
127.0.0.1 localhost
127.0.0.1 myapp.local
0.0.0.0 blocked-site.com
192.168.1.10 staging.example.comKesimpulan: Kuasai DNS Lokal Anda dengan Hosts File
Hosts file adalah alat yang tampak sederhana namun memiliki kegunaan yang sangat luas. Hanya dengan beberapa baris teks biasa, Anda dapat mengalihkan domain, memblokir konten yang tidak diinginkan, menguji konfigurasi server baru, dan memecahkan masalah DNS — semua tanpa menyentuh router, penyedia DNS, atau infrastruktur jaringan Anda.
Poin-poin utama:
- Selalu backup hosts file sebelum mengedit
- Gunakan komentar untuk mendokumentasikan setiap perubahan yang Anda buat
- Flush cache DNS Anda setelah setiap pengeditan untuk memastikan perubahan segera berlaku
- Gunakan
0.0.0.0daripada127.0.0.1saat memblokir domain - Ingat bahwa ini bersifat lokal — perubahan hosts file hanya memengaruhi mesin tempat perubahan dibuat
Bagi developer dan sysadmin yang bekerja dengan lingkungan yang di-hosting, hosts file sangat cocok dipadukan dengan server yang dikonfigurasi dengan baik. Baik saat Anda menguji aplikasi baru di paket VPS Hosting, melihat pratinjau situs di akun Shared Web Hosting sebelum diluncurkan, atau memvalidasi konfigurasi SSL setelah menginstal SSL Certificate, hosts file memberi Anda kontrol lokal yang Anda butuhkan untuk bekerja dengan percaya diri dan efisien.
Sekarang buka file tersebut, buat perubahan Anda dengan hati-hati, flush cache Anda, dan ambil kendali penuh atas cara mesin Anda melihat internet.
