Konfigurasi wildcard DNS domain di Mac OS X

Kadang kadang ketika sedang ngoding web based application kita membutuhkan domain / subdomain. Contoh: example.test, *.example.test (wildcard subdomain). Kenapa butuh wildcard subdomain? yahh, mungkin lagi buat suatu aplikasi yang memanfaatkan ini nih. Langsung aja deh, kalau untuk kasus ini, di OSX kita membutuhkan dnsmasq

Install Dnsmasq via Homebrew

# Install
brew install dnsmasq

# Buat folder etc (kalau belum ada di laptopnya)
mkdir -p /usr/local/etc

Screenshot:
screenshot

Buat file konfigurasi

Pada contoh kali ini, kita akan membuat file konfigurasi untuk domain: *.test dan diarahkan ke IP: 127.0.0.1
Silahkan jalankan perintah di bawah ini satu per satu. *anda dapat mengganti nama domain sesuai dengan yang anda butuhkan.

# Info lebih lanjut bisa dilihat di: /usr/local/opt/dnsmasq/dnsmasq.conf.example
echo "address=/.test/127.0.0.1" > /usr/local/etc/dnsmasq.conf

# Install file daemon untuk startup
sudo cp -fv /usr/local/opt/dnsmasq/*.plist /Library/LaunchDaemons

# Start daemon. 
sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist

Ingin memberhentikan / memulai service ketika dibutuhkan saja ? silahkan improvisasi sendiri 😀
Gampang kok, cukup manfaatkan perintah yang ada di launchctl -h

Configurasi resolver di osx

Kita harus memberitahu resolver pada OSX agar menggunakan Dnsmasq for *.test domain:

# man 5 resolver
sudo mkdir -p /etc/resolver
sudo sh -c 'echo "nameserver 127.0.0.1" > /etc/resolver/test'

Yiihaaa..! sekarang kita dapat menggunakan *.test domain yang akan selalu resolve ke 127.0.0.1:

Saatnya uji coba

Scnreenshot uji coba dnsmasq

Hasilnya (berdasarkan gambar di atas):

  • Kita dapat mengakses efriandika.test -> 127.0.0.1 (anda dapat menggunakan apapunitu.test)
  • Kita dapat mengakses subdomain.efriandika.test -> 127.0.0.1
  • Tentu saja kita masih dapat mengakses domain selain *.test contoh: google.com -> ke ip servernya google 😀

Ada pertanyaan? tanya aja jangan malu malu. Nanti nyasar… Gratis kok.. :p

(Visited 171 times, 1 visits today)