Verwenden Sie dnsmasq, um alle Hosts an dieselbe Adresse aufzulösen

29

Ich verwende einen Ubuntu-Server auf einem Computer, der als WLAN-Zugriffspunkt verwendet wird. Dieser Zugriffspunkt sollte jedoch alle DNS-Anforderungen in eine interne IP-Adresse auflösen, anstatt die Suche tatsächlich durchzuführen.

Ich möchte das Gleiche tun, was bezahlte öffentliche WLAN-Hotspots tun - Sie können eine Verbindung herstellen, aber wenn Sie versuchen, Websites zu laden, wird eine Standardseite angezeigt. Ich habe festgestellt, dass sie dies tun, indem sie alle Domänen in eine interne IP-Adresse auflösen.

Ich habe diese Zeilen hinzugefügt zu /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

Das funktioniert gut für diese TLDs, aber ich würde es gerne mit allen Domains machen, damit ich nachts schlafen kann.

Matt
quelle
4
Warum nicht einfach ein Captive-Portal wie Sputnik oder ähnliches verwenden? Wie planen Sie, DNS nach der Anmeldung zu ändern?
Paul Ackerman
Versuchen Sie dies zu erreichen? Wenn Sie Ihren DHCP-Code bearbeiten und dann iptables -A PREROUTING -s 192.168.0.0/255.255.255.0 -p tcp -j DNAT --zum Ziel 192.168.2.1
Benutzer
@PaulAckerman Ich habe öffentliches WLAN als Beispiel verwendet. Dieser AP lässt niemals echte DNS-Anfragen zu. Ich werde die Iptables-Sache versuchen.
Matt

Antworten:

53

Wie das dnsmasqHandbuch sagt ...

… Benutze einfach #einen Platzhalter:

address = / # / 192.168.2.1

JdeBP
quelle
7
RTFM in der Tat, aber Gott segne dich trotzdem: D
Pitto
4
Welches Handbuch? 'man dnsmasq' gibt mir eine BOOTLADUNG von Befehlszeilenoptionen, aber fast keine Informationen zum Layout der Konfigurationsdatei.
Avian00,
8
Ich weiß, dass dies zu spät ist, aber für den Fall, dass jemand dies nützlich findet: Alle langen Optionen in der Manpage von dnsmasq sind auch in Konfigurationsdateien gültig. Sie müssen lediglich die vorangegangenen Bindestriche entfernen (und jede Option in eine eigene Zeile setzen) ). Event die Argument-Syntax bleibt gleich.
Jaymmer - Wiedereinsetzung von Monica