
ublockdnsclient v0.3.1
Plattformübergreifender System-DNS-Client für uBlockDNS mit geräteweiter Werbe- und Tracker-Blockierung sowie Filter-Updates in Echtzeit.
uBlockDNS Client
uBlockDNS Client ist ein unabhängiges Projekt und steht in keiner Verbindung zu uBlock Origin oder dessen Maintainer, wird von diesen nicht unterstützt und ist nicht mit ihnen verwandt.
uBlockDNS Client bringt DNS-basiertes Werbe- und Tracker-Blocking auf Ihr gesamtes Gerät. Es verwendet von der Community gepflegte Filterlisten wie EasyList und EasyPrivacy, die auf der DNS-Ebene angewendet werden, sodass Apps, Browser und Hintergrunddienste ohne Browser-Erweiterungen abgedeckt sind.
Website: ublockdns.com
uBlockDNS Client ist für Desktop- und Server-Umgebungen gedacht, in denen Sie einen einzigen Installationspunkt, systemweiten Schutz und Fernkonfiguration über das uBlockDNS-Dashboard wünschen.
Highlights
- Systemweite DNS-Filterung für Browser, Apps und Hintergrundverkehr
- Verschlüsselte Upstream-DNS-over-HTTPS-Verbindung zum uBlockDNS-Dienst
- Echtzeit-Updates für Filterlisten und benutzerdefinierte Regeln über Ihr Dashboard
- Lokales Dienstmodell mit Statusprüfungen und Dienstverwaltungsbefehlen
- Plattformübergreifende Unterstützung für macOS, Linux, Windows 10+ und FreeBSD
Installation
Erstellen Sie ein kostenloses Konto auf ublockdns.com und folgen Sie dann der Einrichtungsanleitung in Ihrem Dashboard. Die Anleitung deckt alle unterstützten Plattformen mit Copy-Paste-Befehlen und Schritt-für-Schritt-Anweisungen ab.
Schnellinstallation für macOS und Linux:
curl -sSfL https://ublockdns.com/install.sh | sh -s -- <profile-id>
Verwenden Sie -L, damit curl Cloudflare-Weiterleitungen auf dem gehosteten Installationsskript folgt.
Während der Installation werden Sie möglicherweise nach Ihrem Mac- oder Linux-Administratorpasswort gefragt, um die System-DNS-Einstellungen zu aktualisieren.
Prüfsumme des Installationsskripts verifizieren (Linux):
curl -sSfLO https://ublockdns.com/install.sh
curl -sSfLO https://github.com/ugzv/ublockdnsclient/releases/latest/download/SCRIPT_SHA256SUMS
grep " install.sh$" SCRIPT_SHA256SUMS | sha256sum -c -
sh install.sh <profile-id>
Windows 10 oder neuer (PowerShell als Administrator):
irm https://ublockdns.com/install?id=<profile-id> | iex
Das Dashboard verwendet diesen Bootstrap-Ablauf. Es lädt das Installationsprogramm von /install-script herunter, wodurch Cloudflare-Weiterleitungsprobleme vermieden werden, die direkte /install.ps1-Downloads unterbrechen können.
Veröffentlichte Windows-Installationsprogramme und Binärdateien erfordern Windows 10 oder neuer. Windows 7, Windows 8 und Windows 8.1 werden nicht unterstützt.
Prüfsumme des Installationsskripts verifizieren (PowerShell):
iwr https://ublockdns.com/install-script -OutFile install.ps1
iwr https://github.com/ugzv/ublockdnsclient/releases/latest/download/SCRIPT_SHA256SUMS -OutFile SCRIPT_SHA256SUMS
$expected = (Select-String -Path .\SCRIPT_SHA256SUMS -Pattern " install.ps1$").Line.Split()[0].ToLower()
$actual = (Get-FileHash .\install.ps1 -Algorithm SHA256).Hash.ToLower()
if ($actual -ne $expected) { throw "install.ps1 checksum mismatch" }
powershell -ExecutionPolicy Bypass -File .\install.ps1 -ProfileId <profile-id>
Ein Windows-GUI-Installationsprogramm (.exe) ist ebenfalls auf der Releases-Seite verfügbar.
Aktualisieren
Der Dienst aktualisiert sich täglich selbst; Releases werden vor der Anwendung gegen den uBlockDNS-Signaturschlüssel verifiziert. Setzen Sie UBLOCKDNS_NO_AUTOUPDATE=1 in der Dienstumgebung, um sich abzumelden, oder aktualisieren Sie manuell mit sudo ublockdns upgrade.
Automatische Updates gelten für macOS, Windows und Linux. Auf FreeBSD startet rc.d einen Dienst, der beendet wird, nicht neu, daher aktualisiert sich der Client dort nicht selbst; verwenden Sie sudo ublockdns upgrade. Der Client protokolliert beim Start, in welchem Modus er sich befindet.
Ältere Versionen ohne den Befehl upgrade: Führen Sie den Installationsbefehl einmal erneut aus, und automatische Updates übernehmen.
Deinstallation
macOS und Linux:
sudo ublockdns uninstall
Windows (PowerShell als Administrator):
& "$env:ProgramFiles\uBlockDNS\ublockdns.exe" uninstall
Das führende & ist erforderlich. Ohne es behandelt PowerShell den in Anführungszeichen gesetzten Pfad als einfachen String und meldet Unexpected token 'uninstall'.
Die Deinstallation stoppt den Dienst und stellt Ihre vorherigen DNS-Einstellungen wieder her. Die Binärdatei bleibt auf der Festplatte; löschen Sie sie manuell, wenn Sie sie nicht mehr benötigen. Führen Sie anschließend ublockdns status aus, um zu bestätigen, dass das System-DNS nicht mehr auf 127.0.0.1 zeigt.
Andere Plattformen
Die Einrichtungsanleitung im Dashboard deckt auch Chrome, Firefox, iOS, Android und Router ab. Diese verwenden DNS-over-HTTPS direkt und benötigen diesen Client nicht.
Unterstützte Architekturen
linux/amd64, linux/arm64, linux/armv7, darwin/amd64, darwin/arm64, windows/amd64, windows/arm64, freebsd/amd64
Verwendung
ublockdns install -profile <profile-id> Als Systemdienst installieren
ublockdns uninstall Dienst entfernen und DNS wiederherstellen
ublockdns start Dienst starten
ublockdns stop Dienst stoppen
ublockdns status Dienststatus und Bereitschaftsdetails anzeigen
ublockdns status -json Maschinenlesbaren Status mit ready_code und probe_error anzeigen
ublockdns wait-ready -timeout 45s Warten, bis Dienst und DNS aktiv sind
ublockdns wait-ready -timeout 45s -json Maschinenlesbaren Bereitschaftszustand für Automatisierung ausgeben
ublockdns upgrade Auf die neueste Version aktualisieren und Dienst neu starten
ublockdns version Version ausgeben
Verwalten Sie Ihre Filterlisten, benutzerdefinierten Regeln und das Abfrageprotokoll über das Dashboard. Die CLI ist bewusst schlank gehalten: Installieren Sie den lokalen Dienst, verifizieren Sie, dass er fehlerfrei ist, und überlassen Sie Richtlinienänderungen dem Dashboard.
So funktioniert es
Der Client führt einen lokalen DNS-Proxy auf 127.0.0.1:53 und, wenn IPv6 verfügbar ist, auf [::1]:53 aus. Er leitet alle Abfragen über verschlüsseltes DNS-over-HTTPS an den uBlockDNS-Dienst weiter. Der Dienst bewertet jede Abfrage anhand der Filterlisten und benutzerdefinierten Regeln, die für Ihr Profil aktiviert sind, und gibt dann entweder die normale DNS-Antwort oder eine Blockierantwort zurück.
Wenn Sie Filterlisten oder benutzerdefinierte Regeln im Dashboard aktualisieren, empfängt der Client diese Änderungen in Echtzeit und leert den lokalen DNS-Cache automatisch, sodass neue Entscheidungen schnell wirksam werden.
Aus dem Quellcode erstellen
Erfordert Go 1.25 oder neuer.
go build -o ublockdns .
sudo ./ublockdns install -profile <profile-id>
Feedback und Probleme
Einen Fehler gefunden oder einen Vorschlag? Ein Issue eröffnen.
Bei Blockierungsproblemen (Werbung kommt durch oder eine Website wird fälschlicherweise blockiert) prüfen Sie zuerst, welche Filterlisten Sie in Ihrem Dashboard aktiviert haben. uBlockDNS verwendet von der Community gepflegte Listen und hat keine Kontrolle über deren Inhalte.
Sicherheit
Melden Sie Sicherheitslücken privat über GitHub Security Advisories. Öffnen Sie keine öffentlichen Issues für Sicherheitsprobleme.
Details zum Vertrauensmodell, zur Entwicklungstransparenz und zum aktuellen Audit-Status finden Sie in SECURITY.md.
Lizenz
MIT