Menggunakan dnsmasq untuk menyelesaikan semua host ke alamat yang sama

29

Saya menjalankan server Ubuntu pada komputer yang digunakan sebagai nirkabel AP, tetapi AP ini harus menyelesaikan semua permintaan DNS ke alamat IP internal daripada benar-benar melakukan pencarian.

Saya ingin melakukan hal yang sama dengan melakukan hotspot WiFi publik - Anda dapat terhubung tetapi jika Anda mencoba memuat situs web apa pun mereka menampilkan halaman default. Saya perhatikan mereka melakukan ini dengan menyelesaikan semua domain ke alamat IP internal.

Saya telah menambahkan baris ini ke /etc/dnsmasq.conf:

# Add domains which you want to force to an IP address here.
# The example below send any host in double-click.net to a local
# web-server.
address=/com/192.168.2.1
address=/uk/192.168.2.1
address=/org/192.168.2.1
address=/gov/192.168.2.1
address=/net/192.168.2.1
address=/us/192.168.2.1

yang berfungsi dengan baik untuk TLD itu, tapi saya ingin bisa melakukannya dengan semua domain sehingga saya bisa tidur di malam hari.

Mat
sumber
4
mengapa tidak menggunakan portal captive seperti sputnik atau sejenisnya? Bagaimana Anda berencana untuk mengubah DNS setelah mereka login?
Paul Ackerman
Mencoba mencapai ini? Jika Anda mengedit dhcpd Anda dan kemudian melakukan iptables -PADA PENATALANAN -s 192.168.0.0/255.255.255.0 -p tcp -j DNAT - ke tujuan 192.168.2.1
pengguna
@ PaulAckerman Saya menggunakan WiFi publik sebagai contoh. AP ini tidak akan pernah mengizinkan permintaan DNS nyata dibuat. Saya akan mencoba hal iptables.
Matt

Jawaban:

53

Seperti yang dnsmasqtertulis dalam manual ...

... gunakan saja #wildcard:

alamat = / # / 192.168.2.1

JdeBP
sumber
7
rtfm memang tapi tuhan memberkatimu: D
Pitto
4
Manual yang mana? 'man dnsmasq' memberi saya BOAT LOAD opsi baris perintah, tetapi hampir tidak ada informasi tentang tata letak file konfigurasi.
Avian00
8
Saya tahu ini terlambat, tetapi jika seseorang menemukan ini berguna: semua opsi panjang di halaman manual dnsmasq juga berlaku dalam file konfigurasi - yang perlu Anda lakukan adalah membuang tanda hubung sebelumnya (dan letakkan setiap opsi pada barisnya sendiri) ). Acara sintaks argumen tetap sama.
jaymmer