Untuk tujuan pengembangan, saya ingin semua permintaan DNS ke .dev TLD untuk diteruskan ke PC saya sendiri.
File host tidak cukup. Saya menggunakan banyak domain dan juga beberapa subdomain. Saya harus menambahkan baris untuk setiap kombinasi.
Saya telah membaca bahwa forwarder DNS seperti DNSmasq dapat digunakan untuk melakukan pekerjaan itu (misalnya seperti yang dijelaskan di sini ). Juga perangkat lunak ini sudah diinstal pada Ubuntu 12.10.
Masalahnya adalah saya gagal melihat bagaimana dan di mana saya harus mengkonfigurasi DNSmasq, yaitu di mana saya harus meletakkan baris ini:
address=/dev/127.0.0.1
.dev
saat Google mengambilnya. Saya masih meneliti untuk apa mereka akan menggunakannya dan apakah mereka berencana untuk menghubungkan orang biasa atau hanya karyawan, tetapi Anda mungkin tidak ingin mengarahkan semua akses jika itu yang pertama, kecuali ini murni kotak uji yang tidak akan pernah terhubung ke host eksternal.Jawaban:
Dnsmasq mandiri lengkap (DHCP dan server DNS) tidak diinstal secara default di Ubuntu 12.04 dan 12.10, tetapi paket yang disebut dnsmasq-base diinstal secara default di Ubuntu Desktop 12.04 dan 12.10. Paket dnsmasq-base berisi biner dnsmasq dan digunakan oleh NetworkManager.
Untuk melakukan apa yang Anda inginkan, Anda perlu menggunakan dnsmasq sebagai server DNS caching. Kamu butuh:
Buat
/etc/dnsmasq.d/dev-tld
dengan konten ini:Perintah pertama mengatakan
*.dev
permintaan tidak dapat diteruskan ke server DNS Anda yang sebenarnya. Yang kedua mengatakan*.dev
resolve ke127.0.0.5
yang localhost.sumber
Di Ubuntu 12.10 atau lebih baru Anda dapat melakukan ini dengan dnsmasq yang dijalankan oleh NetworkManager.
Buat direktori
mkdir /etc/NetworkManager/dnsmasq.d
jika belum ada.Lemparkan baris berikut ke dalam
/etc/NetworkManager/dnsmasq.d/dev-tld
.(Ubuntu 12.10) Mulai ulang NetworkManager.
(Ubuntu> 13,04) Mulai ulang Dnsmasq.
Nikmati kehebatannya.
sumber
Berikut ini berfungsi untuk saya di Ubuntu 16.04:
Memasang
dnsmasq
Edit
dnsmasq.conf
file:Tambahkan perintah Anda:
Untuk wild card (*) maka Anda dapat menggunakan dot (.) Lalu dnsmasq untuk menyelesaikan
WHATEWER_YOU_PUT_HERE.yourmachine.yourdomain
ke ip yang sama. Misalnya,address=/.localhost.dev/127.0.0.1
Mulai ulang layanan dnsmasq:
sumber
Baru saja menginstal 19,04 baru dan satu-satunya cara saya membuatnya berfungsi adalah menonaktifkan
systemd-resolved
danNetworkManager
menggunakandnsmasq
sebagai gantinya untuk DNS.NetworkManager
memiliki dukungan bawaan untukdnsmasq
dandnsmasq-base
paket diinstal secara default.Saya menunjuk beberapa domain untuk berbagai VMS seperti
*.customerX.test
untuk192.168.33.10
dan*.productY.test
untuk192.168.33.20
dan sebagainya. Saya tidak akan menggunakan*.dev
lagi melainkan sebagai salah satu domain tingkat atas yang dicadangkan .Larutan
Nonaktifkan
systemd-resolved
Edit
/etc/NetworkManager/NetworkManager.conf
untuk digunakandnsmasq
untuk DNS.Masukkan
dnsmasq
konfigurasi/etc/NetworkManager/dnsmasq.d/test-tld.conf
dan akhirnya restart
NetworkManager
yang akan menghasilkan yang baru/etc/resolv.conf
sumber