cache-domains/scripts/README.md
2024-10-29 13:46:57 +01:00

1.8 KiB
Executable File

DNS Generation Scripts

Introduction

The respective shell scripts contained within this directory can be utilised to generate application specific compliant configuration which can be utilised with:

  • AdGuard Home
  • BIND9
  • Dnsmasq/Pi-hole
  • Squid
  • Unbound
  • FortiOS

Usage

  1. Copy config.example.json to config.json.
  2. Modify config.json to include your Cacheserver's IP(s) and the CDNs you plan to cache.

The following example assumes a single shared Cacheserver IP:

{
    "combined_output": false,
    "ips": {
        "monolithic":   ["10.10.10.200"]
    },
    "cache_domains": {
        "blizzard":     "monolithic",
        "epicgames":    "monolithic",
        "nintendo":     "monolithic",
        "origin":       "monolithic",
        "riot":         "monolithic",
        "sony":         "monolithic",
        "steam":        "monolithic",
        "uplay":        "monolithic",
        "wsus":         "monolithic"
    }
}
  1. Run generation script relative to your DNS implementation: bash create-dnsmasq.sh.
  2. If combined_output is set to true this will result in a single output file: lancache.conf with all your enabled services (applies to Adguard Home, Dnsmasq, Unbound or FortiOS).
  3. Copy files from output/{adguardhome,dnsmasq,rpz,squid,unbound}/* to the respective locations for Dnsmasq/Unbound.
  4. Restart the appropriate service.

Notes for Dnsmasq users

This also applies to users utilising the script alongside Pi-hole.

Multi-IP Lancache setups are only supported with Dnsmasq or Pi-hole versions >= 2.86 or 2021.09 respectively.

Notes for AdGuard Home users

  1. Utilising "combined_output": true is more convenient.
  2. Once you have run the script and uploaded the file to the appropriate location, you should navigate to Adguard Home -> Filters -> DNS blocklists -> Add blocklist -> Add a custom list.