[ANLEITUNG] [VERALTET] Unbound/AdGuard-Home/LANCache LXC Container


Recommended Posts

On 10/10/2023 at 11:23 PM, Roalkege said:

Ich würde jetzt doch erstmal einen weiteren Patch von Apple abwarten, da dies anscheinend ein bekanntes Problem ist.

Was ist ein bekanntes Problem von Apple?

 

On 10/10/2023 at 11:23 PM, Roalkege said:

Wäre es noch möglich mit einer weiteren Schicht hinzuzufügen, mit der man DPI umgeht?

Bei DPI bin ich mir nicht sicher ob das so einfach ist.

Du kannst dem container alles hinzufügen oder entfernen was du willst das wäre auf keinen Fall ein Problem.

Link to comment
26 minutes ago, ich777 said:

Was ist ein bekanntes Problem von Apple?

Dass Inhalte auf Websites gar nicht laden, oder nur sehr langsam. z.B. hier https://www.apfellike.com/2023/10/ios-17-macht-wlan-probleme-auf-manchen-iphones-bei-euch-auch/

 

27 minutes ago, ich777 said:

Bei DPI bin ich mir nicht sicher ob das so einfach ist.

Du kannst dem container alles hinzufügen oder entfernen was du willst das wäre auf keinen Fall ein Problem.

Okay, dann schaue ich mir das mal an. Anscheinend gibt es dafür docker container.

Link to comment
38 minutes ago, Roalkege said:

Dass Inhalte auf Websites gar nicht laden, oder nur sehr langsam. z.B. hier https://www.apfellike.com/2023/10/ios-17-macht-wlan-probleme-auf-manchen-iphones-bei-euch-auch/

Okay, das hatte ich noch nie, aber ich nutze auch AdGuard in Verbindung mit DNSCloak auf meinem iPhone und nutze somit immer meinen DNS Server von zu Hause.

 

38 minutes ago, Roalkege said:

Okay, dann schaue ich mir das mal an. Anscheinend gibt es dafür docker container.

Aber was soll denn das bringen? Ein Ping steht nicht unbedingt in Verbindung mit dem DNS server, zumindest nicht in allen Zusammenhängen.

Link to comment

Hi ich777,

 

erst einmal vielen Dank für die sehr gute Anleitung.

Es hat alles auf Anhieb geklappt.

 

Ich hätte nur eine Frage, vielleicht wurde die auch schon beantwortet, welche Einstellungen sind denn für den Lancache sinnvoll. Mich wundert z.B. die lange Vorhaltezeit von 3650 Tagen: -e CACHE_MAX_AGE="3650d" \

Oder verstehe ich da was falsch.
Wenn ich das nachträglich ändern will z.B. auf 300 Tage - wie mache ich das am besten.
Im Terminal z.B. über diese Befehle (aus der update-containers.de ausgeliehen):
 

# pull new containers
docker pull lancachenet/monolithic

# stop containers
docker container stop LANCache
# remove containers
docker container rm LANCache

# start container again
# LANCache Monolithic


docker run -d --name='LANCache' \
  --net='bridge' \
  -e CACHE_DISK_SIZE="1000000m" \
  -e CACHE_INDEX_SIZE="250m" \
  -e CACHE_MAX_AGE="300d" \
  -e TZ="Europe/Vienna" \
  -v '/mnt/lancache/cache':'/data/cache':'rw' \
  -v '/mnt/lancache/logs':'/data/logs':'rw' \
  -p 80:80 -p 443:443 \
  --no-healthcheck --restart=unless-stopped \
  'lancachenet/monolithic'

# remove dangling images
docker rmi $(docker images -f dangling=true -q)

# clear access log from lancache monolithic
echo -n "" > /mnt/lancache/logs/access.log

 

Was mir in Bezug auf Adguard übel aufgestoßen ist, ist diese Anmerkung zu der DNS Blockliste von ph00lt0:

"We recommend against using the AdGuard DNS filter, they whitellist many tracking domains using @@ which overwrite your settings in the name of functionality. They allow for trackers in emails links and page ads in search results, something we do not compromise for."

Und wenn man sich die DNS Liste anschaut, dann findet man wirklich diese Einträge, die alle anderen Regeln überschreiben/whitelisten:
 

@@||ad.10010.com^
@@||ad.abchina.com^
@@||ad.kazakinfo.com^
@@||ad.ourgame.com^
@@||adcdn.pingan.com^
@@||advert.kf5.com^
@@||api.ads.tvb.com^
@@||app-advertise.zhihuishu.com^
@@||buyad.bi-xenon.cn^
@@||captcha.su.baidu.com^
@@||img.ads.tvb.com^


So etwas gibt es bei Pi-Hole nicht. Was denkt ihr dazu?

 

Dann noch eine kurze letzte Frage, habt ihr DNSSEC in Adguard aktiviert?
Unbound kann ja die Anfragen nicht verschlüsselt senden, da die Root-Nameserver das DNS over HTTPS (DoH) Protokolle (noch) nicht unterstützen.
"Unbound unterstützt zwar DNS over TLS (DoT) und auch DNS over HTTPS (DoH), aber die Root-Nameserver unterstützen diese Protokolle (noch) nicht. Wenn wir also auf einen DNS-Mittelsmann verzichten wollen, müssen wir auch auf die Verschlüsselung unserer DNS-Anfragen verzichten. Der Einsatz von DNSSEC unter unbound stellt aber zumindest sicher, dass die zurückgelieferten Daten echt (Authentizität) und unverändert (Integrität) sind."  kuketz-blog.de

Edited by gilladur
Link to comment
On 10/16/2023 at 10:32 PM, gilladur said:

Mich wundert z.B. die lange Vorhaltezeit von 3650 Tagen: -e CACHE_MAX_AGE="3650d" \

Ich möchte alles so lang wie möglich im Cache behalten damit nix gelöscht wird falls ich wieder mal was runter lade, per se nicht falsch meiner bescheidenen Meinung nach. :)

 

On 10/16/2023 at 10:32 PM, gilladur said:

Wenn ich das nachträglich ändern will z.B. auf 300 Tage - wie mache ich das am besten.

Einfach das script ändern und danach einmal ausführen.

 

On 10/16/2023 at 10:32 PM, gilladur said:

So etwas gibt es bei Pi-Hole nicht. Was denkt ihr dazu?

Dann lösch es raus wenn es für dich nicht passt. ;)

 

On 10/16/2023 at 10:32 PM, gilladur said:

Dann noch eine kurze letzte Frage, habt ihr DNSSEC in Adguard aktiviert?

Nein, das wäre unnötig weil das Unbound schon macht.

 

On 10/16/2023 at 10:32 PM, gilladur said:

"Unbound unterstützt zwar DNS over TLS (DoT) und auch DNS over HTTPS (DoH), aber die Root-Nameserver unterstützen diese Protokolle (noch) nicht. Wenn wir also auf einen DNS-Mittelsmann verzichten wollen, müssen wir auch auf die Verschlüsselung unserer DNS-Anfragen verzichten. Der Einsatz von DNSSEC unter unbound stellt aber zumindest sicher, dass die zurückgelieferten Daten echt (Authentizität) und unverändert (Integrität) sind."  kuketz-blog.de

Das wäre mir neu, ich bin aber auch nicht allwissend. :)

 

Übrigens wenn du PiHole mit der gleichen Kombi verwenden willst schreib mich einfach kurz per PN an, hab was schönes und ist nicht so viel Aufwand. :)

  • Like 1
Link to comment
  • 2 weeks later...
On 9/13/2023 at 5:40 PM, p0thi said:

Jetzt ist das setup schon fertig und das Script kann verwendet werden:

cd /root/cache-domains/ && ./create-rewrites.sh <lancache_ip> /docker/adguard_home/c
onfig/AdGuardHome.yaml

WICHTIG: auch hier <lancache_ip> durch die IP des LXC Containers ersetzen.

 

Hi @p0thi

ich habe das ganze nach deiner Beschreibung durchgeführt.

 

Ich bekomme im Terminal Output folgende Meldung:

./create-rewrites.sh: line 32: jq: command not found

 

Das wäre in deinem Script diese Zeile:

jq -c '.cache_domains[]' $JSON_FILE | while read -r cache_domain; do

 

Es läuft zwar alles durch, aber im AdGuard sind dann die DNS Rewrites nicht vorhanden.

 

Hast du hier eine Idee was zu machen ist?

 

Danke dir im Voraus für deine Hilfe.

 

Gruß Tobi

Link to comment
  • 2 weeks later...

Hallo zusammen.

Erstmal vielen Dank für deine Anleitung @ich777,  gute Arbeit von dir. 

Ich bin, als Laie was Linux Distributionen betrifft, auf der Suche nach einer LANCache Lösung mit guter Performance gewesen. Habe diese Anleitung gefunden und versucht alles genau zu befolgen. 

 

Ich habe einen Qnap TS-253B mit 2x6TB HDD als Parity und als Disk 1 im Array. Außerdem als unassigned Device eine 2TB Nvme für die Performance. Diese ist gemountet und shared und beinhaltet den lancache Ordner.

 

LXC Container habe ich 2 erstellt, da bei der ersten Erstellung ein Fehler war, den ich aber gefunden habe. Der zweite war zur Fehlersuche und zum besseren Verständnis. 

 

Ein Problem was ich habe, ist dass mit den DNS und den IP's. 

Mein Router ist eine Fritzbox 7590. Hier ist die Adresse 192.168.178.1 und alle anderen Geräte fortlaufend. 

Ist es egal wie die IP für den LXC Container lautet, den ich habe jetzt die 192.168.178.148 (wurde von der Fritzbox definiert) verwendet. Desweiteren in der Übersicht vom LXC die 172.17.0.1 und eine Adresse mit 2003:d1:.... usw. 

Die 192.168.178.148 ist statisch mit der Gateway- und DNS-Adresse 192.168.178.1 vom Router in der eth0.network eingebunden.

Überall wo die 10.0.0.185 in der Anleitung, als Beispiel vorhanden ist, habe ich diese durch 192.168.178.148 ersetzt.

In der Fritzbox ist für DNS die  192.168.178.148 von mir eingetragen. 

Bei Adguard bin ich so wie in der Anleitung vorgegangen. Dies scheint zu funktionieren.

 

Wenn ich nachdem alles erledigt wurde, für LANCache den Test laufen lasse 

Quote

tail -f /mnt/lancache/logs/access.log

 

 und einen Download bei Steam starte, passiert nichts. Keine Rückmeldung oder man sieht das was übertragen wird.

Dann testweise mit steam-lancache-prefill versucht, hier bekomme ich eine Meldung, das ich mit einer public Ip von Steam verbunden bin und keiner private IP. 

 

Dann wollte ich den lancache Order auf der unassigned Disk (über Main und klicken auf den lancache Ordner--> Parent Directory ) löschen, aber der bleibt trotz "done" Meldung erhalten.

 

Entweder habe ich von Grund auf versagt und falsch begonnen oder ich generell ein Verständnisproblem. 

 

Danke für das Lesen des doch sehr lang gewordenen Textes und der Hoffnung das ich mich verständlich ausdrücken konnte.

 

Grüß

Thorsten

Link to comment
17 hours ago, Chakuza76 said:

 und einen Download bei Steam starte, passiert nichts. Keine Rückmeldung oder man sieht das was übertragen wird.

Hast du denn auch den DNS Cache geleert, dies ist aber ein Thema das du direkt an den PCs machen musst weil die DNS server gecached waren.

 

17 hours ago, Chakuza76 said:

Dann wollte ich den lancache Order auf der unassigned Disk (über Main und klicken auf den lancache Ordner--> Parent Directory ) löschen, aber der bleibt trotz "done" Meldung erhalten.

Ich weiß nicht genau was du hier meinst bzw. wie du löscht.

 

Was passiert im access log wenn du die IP direkt aufrufst über einen Browser?

Link to comment
2 hours ago, ich777 said:

Hast du denn auch den DNS Cache geleert, dies ist aber ein Thema das du direkt an den PCs machen musst weil die DNS server gecached waren.

Ok, das hatte ich nicht gemacht.

3 hours ago, ich777 said:

Ich weiß nicht genau was du hier meinst bzw. wie du löscht.

 

2.thumb.png.d2a47ae3b10d4c0ad219a664ab0b91ae.png

 

3 hours ago, ich777 said:

Was passiert im access log wenn du die IP direkt aufrufst über einen Browser?

Welche IP meinst du?

 

 

Heute hatte ich das Problem, das ich über IP4 keine Internetverbindung mehr am PC hatte, nachdem ich Ihn das erste mal  wieder gestartet habe. Liegt wahrscheinlich an meinen DNS Einstellungen, denn die habe ich am Router zurückgesetzt und dann ging es wieder.

Welche IP muss ich, von den mir genannten, wo überall eintragen?  

Link to comment
15 hours ago, Banuseka said:

der LXC auf unraid bedient sich ja aller Kerne.

Du kannst die Kerne doch auch auf Unraid begrenzen (genau so wie den RAM) :

 

15 hours ago, Banuseka said:

was wären die min. anforderungen bzgl kernbe und ram und grund hdd?

Das was für dich funktioniert. Ich kann da leider keine genaue Auskunft geben da es stark nach eingesetzter Hardware differiert, Leistung braucht das alles aber nicht wirklich viel, wenn du eine konventienelle HDD nutzt dann kann es dazu kommen das du hohe I/O wait hast.

  • Like 1
Link to comment
14 hours ago, Chakuza76 said:

Ok, das hatte ich nicht gemacht.

Schau mal hier: Klick

 

14 hours ago, Chakuza76 said:

2.thumb.png.d2a47ae3b10d4c0ad219a664ab0b91ae.png

So wie es aussieht ist das direkt eine ganze Platte die du lancache benannt hast richtig?

Du kannst keine Platte löschen, du musst mit Unassigned Devices schon die Partition löschen wenn du da drin alles löschen willst.

...oder du gehst in den Ordner rein und löscht dann dort alles raus, ich würde dir aber empfehlen einen Unterordner auf der Platte zu machen für lancache und nicht die vollständige Platte dafür zu verwenden.

 

15 hours ago, Chakuza76 said:

Welche IP meinst du?

Die IP von deinem LXC container, wenn du die Aufrufst und lancache läuft dann solltest du im access.log eine Meldung bekommen und dann weißt du das er zumindest mal funktioniert und antwortet.

 

15 hours ago, Chakuza76 said:

Heute hatte ich das Problem, das ich über IP4 keine Internetverbindung mehr am PC hatte, nachdem ich Ihn das erste mal  wieder gestartet habe.

Dann wird vermutlich dein PC endlich die Einstellungen übernommen haben und nun den LXC container als DNS server genommen haben.

Lief denn dein LXC container?

 

15 hours ago, Chakuza76 said:

Welche IP muss ich, von den mir genannten, wo überall eintragen?  

Die IPs die ich angeführt habe musst du nirgends eintragen, du musst das auf deine IPs ummüntzen, die IP vom LXC Container ist dann praktisch der lancache und gehört dann in deinem DHCP server bei dem DNS eingetragen.

Link to comment
5 hours ago, ich777 said:

Du kannst die Kerne doch auch auf Unraid begrenzen (genau so wie den RAM) :

 

Das was für dich funktioniert. Ich kann da leider keine genaue Auskunft geben da es stark nach eingesetzter Hardware differiert, Leistung braucht das alles aber nicht wirklich viel, wenn du eine konventienelle HDD nutzt dann kann es dazu kommen das du hohe I/O wait hast.

also nur fyi: es läuft reibungslos auf Proxmox 1 core, 2gb ram, 4gb storage, nesting an, und local folder vom RAID/HBA/etc in den LXC mounten.

 

LG, Banuseka

Link to comment
2 minutes ago, Banuseka said:

heissen, sonst kann die root.hints nicht geupdated werden. Oder wurde das schjon erwähnt und ich wwar zu faul alles zu lesen? ! B)

Da hast du recht, dieses Tutorial wird aber sowieso bald nicht mehr aktuell sein das es dann eine viel einfachere Methode geben wird, ich werde die Datei die nächsten Tage mal updaten.

Danke für den Hinweis. :)

Link to comment
1 minute ago, Banuseka said:

also nur fyi: es läuft reibungslos auf Proxmox 1 core, 2gb ram, 4gb storage, nesting an, und local folder vom RAID/HBA/etc in den LXC mounten.

Ja das glaube ich auch weil es ja ein sehr generisches Tutorial ist und auch so auf jedem Debian OS so laufen würde wenn du dem Tutorial folgst.

 

Ich bin nur kein Proxmox freund weil es für die Heimnutzung doch ein wenig aufgeblasen ist und für die meisten übertrieben.

Link to comment
7 hours ago, ich777 said:

 

So wie es aussieht ist das direkt eine ganze Platte die du lancache benannt hast richtig?

Du kannst keine Platte löschen, du musst mit Unassigned Devices schon die Partition löschen wenn du da drin alles löschen willst.

...oder du gehst in den Ordner rein und löscht dann dort alles raus, ich würde dir aber empfehlen einen Unterordner auf der Platte zu machen für lancache und nicht die vollständige Platte dafür zu verwenden.

 

 

1.thumb.png.4d47368d3438adc5dd38757577d9cd00.png

 

Müsste doch ein Ordner sein, war zumindest so von mir geplant.

 

7 hours ago, ich777 said:

 

Die IP von deinem LXC container, wenn du die Aufrufst und lancache läuft dann solltest du im access.log eine Meldung bekommen und dann weißt du das er zumindest mal funktioniert und antwortet.

 

im access.log kommt nix. 

 

Bild_2023-11-10_162820596.thumb.png.45acd54cb90b9d8fe530ce995b7dd27e.png

im AdGuard wird passiert jedenfalls was wenn ich in Steam ein Download starte. Aber gedowloaded wir nur kurz mit wenigen kB/s und geht auf Null. Wenn ich noch Update aus der Liste starte, bekommt der vorgherige Download eine Meldung "Verbindungszeitüberschreitung".

 

2.thumb.png.833c5a7c23f31a744f472f678ab8709f.png

 

Die IP von LXC ist in der Fritz.Box  nur für das Netzwerk als DNS eingetragen.

 

Link to comment
1 hour ago, Chakuza76 said:

Müsste doch ein Ordner sein, war zumindest so von mir geplant.

Das ist kein Ordner das ist eine ganze festplatte.

 

1 hour ago, Chakuza76 said:

im access.log kommt nix. 

Hast du dir denn den verlinkten artikel von lancache denn durchgelesen wie du testest ob dein cache funktioniert?

Link to comment

 

2 hours ago, ich777 said:

Hast du dir denn den verlinkten artikel von lancache denn durchgelesen wie du testest ob dein cache funktioniert?

Quote

ipconfig /flushdns

nslookup steam.cache.lancache.net

nslookup lancache.steamcontent.com

Bild_2023-11-10_210940930.png.71f33c6b17102eb3e30f8e4394b0992d.png

 

3 hours ago, ich777 said:

Das ist kein Ordner das ist eine ganze festplatte.

Habe jetzt noch einen Ordner lancache erstelt  und config 

von     lxc.mount.entry = /mnt/disks/lancache mnt/lancache none bind 0 0

in        lxc.mount.entry = /mnt/disks/lancache/lancache mnt/lancache none bind 0 0

 

 

Link to comment

Seit es bei Pools den "exklusiven" Zugriff gibt, dürfte es Perfonmancetechnisch gesehen egal sein, ob ein Storage durch UnassignedDevices gemounted ist oder ein Pool benutzt wird.

 

Oder wird sobald man "/mnt/user/lxc/" eingibt trotz "exklusiven Zugriff" immer FUSE Verwendet? 🙄

 

Habe ich Perfonmance Einbußen wenn ich es in mein ZFS RAIDZ-1 Pool lege?

Wobei ich mir da mehr sorgen um die Abnutzung alle drei 970 Evo mehr sorgen mache 😅

 

Edit: Ich habe mir mal "/mnt/user" angeschaut. Bei dem "Excklusiven Zugriff" haldelt es sich lediglich um eine verlinkung, was bedeutet das das FUSE nicht greift.

Edited by guybrush2012
Link to comment
On 11/11/2023 at 12:27 AM, guybrush2012 said:

Edit: Ich habe mir mal "/mnt/user" angeschaut. Bei dem "Excklusiven Zugriff" haldelt es sich lediglich um eine verlinkung, was bedeutet das das FUSE nicht greift.

Das tutorial wurde geschrieben bevor Exclusive Access ein ding war.

 

On 11/11/2023 at 12:27 AM, guybrush2012 said:

Habe ich Perfonmance Einbußen wenn ich es in mein ZFS RAIDZ-1 Pool lege?

Nein, aber warum willst du das machen? So etwas unwichtiges wie den LANCache auf einen RAID pool legen, es wird auch vom lancache Team selbst empfohlen das auf eine SSD und noch besser eine NVME zu legen.

 

On 11/11/2023 at 12:27 AM, guybrush2012 said:

Wobei ich mir da mehr sorgen um die Abnutzung alle drei 970 Evo mehr sorgen mache 😅

Ich glaube das du dir in dem Fall eher weniger sorgen machen musst, die Daten werden einmal geschrieben und dann nur immer zugegriffen, klar wenn der Cache voll ist werden die ältesten Daten wieder gelöscht aber je nachdem wie groß du deinen Cache und dei gesamte Konfiguration aussieht sollte das eher selten passieren.

  • Like 1
Link to comment
  • ich777 changed the title to [ANLEITUNG] [VERALTET] Unbound/AdGuard-Home/LANCache LXC Container

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.