Indihome menerapkan transparant DNS yang memaksa semua request DNS harus melalui DNS indihome. Teknik ini menyebabkan kita tidak bisa begitu saja mengganti DNS pada setting IP atau Router ke DNS lain seperti google dns, cloudflare, dll. Salah satu alasan kita mengganti DNS indihome selain banyak yang diblock, indihome kadang melakukan insert ads yang cukup menganggu. Alasan yang cukup sebenarnya adalah privacy karena kita mungkin tidak mau apa yang kita akses diketahui atau direcord oleh indihome.
Untuk bypass transparant DNS dibutuhkan sebuah mini-server yang akan bertindak sebagai DNS server. Request DNS akan dikirim ke mini-server ini lalu diteruskan ke DNS forwarder seperti cloudflare, google, quad9, dll. Dengan demikian request DNS tidak melalui DNS indihome tetapi melalui mini-server yang kita butuh.
Berikut As-is jaringan saya sebelum penambahan DNS server
Topologi setelah penambahan DNS server
Saya menambahkan sebuah STB Indihome yang sudah dimodifikasi operating sistemnya dengan armbian linux. STB ini saya hubungkan ke LAN port di modem indihome. Antara main wifi router dan STB terhubung di 1 class jaringan yang sama.
Installasi Armbian di STB Indihome
mengenai installasi armbian pada STB indihome sudah banyak tutorialnya. Intinya adalah mengganti sistem operasi STB dari android ke linux dengan bantuan distro armbian. Dengan mengganti OS STB ke Armbian maka STB akan dapat berfungsi layakanya mini server. Armbian sendiri menggunakan basis Linux Debian yang dimodifikasi agar dapat berjalan pada CPU berbasis arm. Tentunya ada perbedaan dan batasan karena tidak semua aplikasi linux bisa diinstall di arm.
Installasi Adguard Server
Setelah STB berhasil diinstall armbian OS langkah selanjutnya adalah melakukan installasi Adguard Server pada STB. Dengan bantuan Adguard kita akan menjadikan STB menjadi DNS server yang akan menggantikan DNS bawaan indihome. Berikut langkah-langkahnya
- Masuk ke Armbian menggunakan koneksi SSH
- Setelah layar command prompt muncul ketik perintah berikut
- wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_arm.tar.gz - sudo tar xvf AdGuardHome_linux_arm.tar.gz - cd AdGuardHome - sudo ./AdGuardHome -s install
3. Setelah selesai adguard bisa di akses melalui browser dengan mengetik IP address STB dengan port 3000. Pada contoh ini saya menggunakan 192.168.1.3:3000
Konfigurasi AdGuard DNS
- Masuk ke adguard DNS dengan mengetikan 192.168.1.3:3000
- Klik next biarkan pada pilihan opsi default
Sampai tahap ini kita sudah berhasil melakukan konfigurasi AdGuard DNS. Di menu dashboard ini kita bisa pilih upstream DNS yang akan kita gunakan. Pada contoh kali ini saya menggunakan cloudflare DNS
Konfigurasi CloudFlare DNS
- masuk ke menu setting lalu isikan url https://dns.cloudflare.com/dns-query berikut pada Upstream DNS.
- Klik Test Upstream jika sudah berhasil silahkan lanjutkan klik Apply
- Pada tahan ini AdGuard pada STB sudah berhasil kita konfigurasi sebagai DNS server yang akan meneruskan DNS request ke cloudflare
Konfigurasi DNS pada router
Setelah STB berhasil kita konfigurasi sebagai DNS server, langkah selanjutnya adalah merubah semua setting DNS pada client ke IP STB dalam hal ini 192.168.1.3. Perubahan ini kita lakukan pada DHCP server yang bertugas memberikan IP otomatis ke client. Pada tutorial ini saya menggunakan ASUS Router sebagai DHCP server.
- Masuk ke router yang menjadi DHCP server
- Isikan kolom DNS menjadi 192.168.1.3 lalu restart ulang router
Pada sisi client untuk windows bisa lakukan flushdns agar informasi DNS terupdate.
Lakukan test akses internet dari setiap perangkat yang terhubung dengan router. Pada AdGuard akan muncul website apa saja yang diakses. Di sini kita sudah berhasil membelokkan akses DNS yang sebelumnya menggunakan DNS indihome kita rubah menjadi DNS Cloudflare.