Unter Ubuntu 14.04 verwende ich dnsmasq, um Wildcard-Domains von example.com auf dem lokalen Computer (Desktop-Computer zu Hause) aufzulösen.
Nach langem Durchlesen kann ich das für mein ganzes Leben bei einer Neuinstallation vom 18.04. Nicht gleich aussortieren.
Im Moment möchte ich nur Folgendes erreichen:
- für
ping example.com
zu pingen 127.0.0.1 und nicht 93.184.216.34; - um
ping anysubdomain.example.com
auch 127.0.0.1 zu pingen; - und um
ping google.com
die echte google.com über den Router / IP-DNS zu pingen.
Das muss doch einfach, ja sogar trivial sein?
Aber ich bin ratlos. Ich bekomme die Auflösung von example.com, aber nur auf Kosten von allem anderen.
Wie kann ich das machen?
Antworten:
Hier sind die Schritte für Ubuntu 18.04. Es ist ein bisschen lang, da
systemd-resolved
es nicht sehr gut mit spielt,NetworkManager
wenn es mit konfiguriert istdnsmasq
.Dennoch empfehle ich immer noch ausgehend
dnsmasq
vonNetworkManager
, weil die Netzwerkverbindung ändert (WIFI, verdrahtet, ...) werden transparent behandelt werden.Aktivieren Sie dnsmasq in NetworkManager
Bearbeiten Sie die Datei
/etc/NetworkManager/NetworkManager.conf
und fügen Sie die Zeiledns=dnsmasq
in den[main]
Abschnitt ein. Dies sieht folgendermaßen aus:Überlassen Sie NetworkManager die Verwaltung
/etc/resolv.conf
Konfigurieren
example.com
Nachladen
NetworkManager
und testenNetworkManager sollte neu geladen werden, damit die Änderungen wirksam werden.
Dann können wir überprüfen, ob wir eine übliche Site erreichen können:
Stellen Sie zum Schluss sicher, dass die
example.com
und Subdomains wie folgt aufgelöst sind127.0.0.1
:quelle
/etc/resolv.conf
auf/run/systemd/resolve/stub-resolv.conf
verwiesen.Stellen Sie zunächst sicher, dass in
/etc/NetworkManager/NetworkManager.conf
der folgenden Zeile nicht vorhanden oder auskommentiert ist:Starten Sie NetworkManager neu:
Stellen Sie sicher, dass das von NetworkManager gesteuerte dnsmasq nicht mehr ausgeführt wird, indem Sie den Prozess beenden oder das System neu starten.
Dann installiere dnsmasq:
Fügen Sie Folgendes hinzu zu
/etc/dnsmasq.d/example.com
:Starten Sie dnsmasq neu:
Jetzt sollten Sie ein Wildcard-DNS für example.com überschreiben.
quelle
sudo apt install dnsmasq
Fehler "Empfangs-Socket für Port 53 konnte nicht erstellt werden: Bereits verwendete Adresse" ausgegeben. Ich fuhr trotzdem bis zum Ende fort, falls ein späterer Schritt das behebt, aber es hat nicht geklappt und das hat nicht geklappt.Dies ist nicht so einfach wie das Bearbeiten der Hosts-Datei. Sie haben mehrere Möglichkeiten:
Dieser Python-DNS-Proxy , der Platzhalter in / etc / hosts verarbeitet
Verwenden von DNSmasq
quelle
netstat -tulpn
überprüfen, was den Port verwendet? EDIT: Nevermind, sah die akzeptierte Antwort. das problem ist systemd-resolve.