Commit Graph

15 Commits

Author SHA1 Message Date
31b2ba1e0a Tell dnsmasq not to pass requests upstream (#223)
* Tell dnsmasq not to pass requests upstream

The behavior of dnsmasq changed in version 2.86 -- before then, if a record was set for a domain name with dnsmasq, and a record for a type not specified for that domain was requested, dnsmasq would indicate no data existed for that record type. After 2.86, record types that are not specified are instead passed upstream. The latter behavior causes problems for, e.g., the Steam client, which will disregard a correctly set A-record for lancache.steamcontent.com, if no AAAA is set with dnsmasq and dnsmasq passes the AAAA query upstream. The documentation for dnsmasq indicates the correct way to restore the old behavior is to use the local=/host/ syntax -- emit this syntax for each of our lancache-hosted DNS entries.

* Update scripts/create-dnsmasq.sh

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>

---------

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2023-03-28 11:36:46 +01:00
9ea56243de Simplify Dnsmasq script
[Dnsmasq version >= 2.86](https://thekelleys.org.uk/dnsmasq/CHANGELOG) supports passing multiple IP addresses via the `address=` syntax now.

>Major rewrite of the DNS server and domain handling code. The change makes multiple addresses associated with a domain work address=/example.com/1.2.3.4 address=/example.com/5.6.7.8.

This allows us to simplify the script and the `.hosts` file workaround is no longer necessary.
2021-09-12 10:15:11 +10:00
8fbf55bdbe Handle newlines in generation scripts
The generation scripts will now properly handle/ignore empty lines as this previously would cause issues with the generated Unbound output.
2021-01-28 10:16:44 +11:00
14ccfecb1f Include advice for unbound script 2021-01-15 21:43:21 +11:00
634b7dfff8 Provide advice to users upon completion of script 2021-01-15 20:09:32 +11:00
c05d2cfec4 Output *.hosts file in output/dnsmasq/hosts/ directory 2021-01-15 19:01:02 +11:00
654d19ce84 Change Dnsmasq *.hosts reference to /etc/dnsmasq/ 2021-01-15 10:20:51 +11:00
74cab757af Fix generation scripts
This change leverages #130 and also applies this to the dnsmasq script.

As it currently stands both generation scripts (unbound and dnsmasq) have a condition where a domain will be skipped if it fuzzy matches a domain already parsed that is higher in the CDN domain list.

For example the latter of the below two samples would never be added.
8793ce1531/steam.txt (L20) 8793ce1531/steam.txt (L29)

I've also taken the liberty to sort the output of said scripts for readability and troubleshooting purposes.

Closes #130.
2020-10-29 23:05:45 +11:00
b4431bcfaa Fix wildcard domains in dnsmasq script (#143)
While #140 added support for round-robin DNS the script needs a slight modification to ensure that wildcard domains are still added with the old method due to dnsmasq limitations.
This change will include all wildcard domains in the generated `lancache.conf` along with all the `addn-hosts=` entries.
2020-10-22 09:56:07 +01:00
494a89f181 Generate lancache.conf based on specified cache entries 2020-06-25 09:15:42 +10:00
85f05fcc77 Refactor Dnsmasq script to support multiple cache ips
This change is a continuation of #54, it modifies the output of the dnsmasq script to host file format which allows round robin DNS entries.

There is a caveat with round robin DNS entries in dnsmasq, they only supports a single address for wildcard domains, for example: *.cdn.blizzard.com.

If previously you had the generated .conf files dumped into a directory where dnsmasq automatically loaded on start-up, you will need to create config that loads all the host files, for example:

**lancache.conf**
```conf
addn-hosts=/etc/dnsmasq/conf.d/blizzard.hosts
addn-hosts=/etc/dnsmasq/conf.d/steam.hosts
addn-hosts=/etc/dnsmasq/conf.d/uplay.hosts
```

Closes #107.
2020-06-06 20:32:24 +10:00
6557fda4d6 create-dnsmasq: Run through shellcheck
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-10-11 12:56:40 -07:00
66194b3db5 Support passing multiple IP addresses
Signed-off-by: Christophe Vanlancker <carroarmato0@inuits.eu>
2019-06-15 23:27:16 +02:00
88a2026b5c Add executable bit for create-dnsmasq.sh 2019-01-30 10:47:31 +11:00
1525b5e243 Add Dnsmasq variant of Unbound generation script 2019-01-29 15:05:28 +11:00