Name |
Date |
Size |
#Lines |
LOC |
||
---|---|---|---|---|---|---|
.. | - | - | ||||
CNAME-basedRedirectionDesignNotes.pdf | HD | 12-May-2018 | 55.6 KiB | |||
CREDITS | H A D | 27-May-2015 | 1.2 KiB | 24 | 20 | |
Changelog | H A D | 18-Oct-2024 | 457.6 KiB | 11,997 | 9,824 | |
FEATURES | H A D | 10-Feb-2021 | 3.6 KiB | 105 | 92 | |
IP-BasedActions.pdf | HD | 12-May-2018 | 241.8 KiB | |||
LICENSE | H A D | 19-Aug-2014 | 1.5 KiB | 31 | 24 | |
README | H A D | 18-Oct-2024 | 7.1 KiB | 151 | 137 | |
README.DNS64 | H A D | 19-Sep-2023 | 1.9 KiB | 51 | 34 | |
README.ipset.md | H A D | 31-Dec-2019 | 1.8 KiB | 66 | 57 | |
README.svn | H A D | 27-May-2015 | 656 | 18 | 14 | |
README.tests | H A D | 03-Dec-2021 | 1.4 KiB | 33 | 25 | |
TODO | H A D | 10-Feb-2021 | 4.5 KiB | 76 | 71 | |
control_proto_spec.txt | H A D | 07-Aug-2013 | 2.5 KiB | 71 | 64 | |
example.conf | H A D | 18-Feb-2022 | 46 KiB | 1,193 | 5 | |
example.conf.in | H A D | 18-Oct-2024 | 54.2 KiB | 1,359 | 1,129 | |
ietf67-design-02.odp | HD | 07-Aug-2013 | 323.8 KiB | |||
ietf67-design-02.pdf | HD | 07-Aug-2013 | 615.4 KiB | |||
libunbound.3 | H A D | 18-Feb-2022 | 14.8 KiB | 435 | 426 | |
libunbound.3.in | H A D | 18-Oct-2024 | 14.8 KiB | 435 | 426 | |
requirements.txt | H A D | 12-May-2018 | 14.9 KiB | 295 | 257 | |
unbound-anchor.8 | H A D | 18-Feb-2022 | 7.5 KiB | 190 | 181 | |
unbound-anchor.8.in | H A D | 18-Oct-2024 | 7.5 KiB | 190 | 181 | |
unbound-checkconf.8 | H A D | 18-Feb-2022 | 1.3 KiB | 53 | 44 | |
unbound-checkconf.8.in | H A D | 18-Oct-2024 | 1.4 KiB | 57 | 48 | |
unbound-control.8 | H A D | 18-Feb-2022 | 26.5 KiB | 700 | 691 | |
unbound-control.8.in | H A D | 18-Oct-2024 | 31 KiB | 766 | 757 | |
unbound-host.1 | H A D | 18-Feb-2022 | 3.8 KiB | 119 | 110 | |
unbound-host.1.in | H A D | 18-Oct-2024 | 3.8 KiB | 119 | 110 | |
unbound.8 | H A D | 18-Feb-2022 | 2.5 KiB | 89 | 80 | |
unbound.8.in | H A D | 18-Oct-2024 | 2.5 KiB | 89 | 80 | |
unbound.conf.5 | H A D | 18-Feb-2022 | 128.6 KiB | 2,741 | 2,731 | |
unbound.conf.5.in | H A D | 18-Oct-2024 | 147.4 KiB | 3,054 | 3,043 | |
unbound.doxygen | H A D | 18-Oct-2024 | 121.7 KiB | 2,778 | 2,179 |
README.DNS64
1The DNS64 code was written by Viagenie, 2009, by Simon Perrault as part 2of the Ecdysis project. The code is copyright by them, and has the BSD 3license (see the dns64/dns64.c file). 4 5To enable DNS64 functionality in Unbound, two directives in unbound.conf must 6be edited: 7 81. The "module-config" directive must start with "dns64". For example: 9 10 module-config: "dns64 validator iterator" 11 12If you're not using DNSSEC then you may remove "validator". 13 142. The "dns64-prefix" directive indicates your DNS64 prefix. For example: 15 16 dns64-prefix: 64:FF9B::/96 17 18The prefix must be a /96 or shorter. 19 20To test that things are working right, perform a query against Unbound for a 21domain name for which no AAAA record exists. You should see a AAAA record in 22the answer section. The corresponding IPv6 address will be inside the DNS64 23prefix. For example: 24 25 $ unbound -c unbound.conf 26 $ dig @localhost jazz-v4.viagenie.ca aaaa 27 [...] 28 ;; ANSWER SECTION: 29 jazz-v4.viagenie.ca. 86400 IN AAAA 64:ff9b::ce7b:1f02 30 31 32NAT64 support was added by David Lamparter in 2022; license(s) of the 33surrounding code apply. Note that NAT64 is closely related but functionally 34orthogonal to DNS64; it allows Unbound to send outgoing queries to IPv4-only 35servers over IPv6 through the configured NAT64 prefix. This allows running 36an Unbound instance on an IPv6-only host without breaking every single domain 37that only has IPv4 servers. Whether that Unbound instance also does DNS64 is 38an independent choice. 39 40To enable NAT64 in Unbound, add to unbound.conf's "server" section: 41 42 do-nat64: yes 43 44The NAT64 prefix defaults to the DNS64 prefix, which in turn defaults to the 45standard 64:FF9B::/96 prefix. You can reconfigure it with: 46 47 nat64-prefix: 64:FF9B::/96 48 49To test NAT64 operation, pick a domain that only has IPv4 reachability for its 50nameservers and try resolving any names in that domain. 51
README.ipset.md
1## Created a module to support the ipset that could add the domain's ip to a list easily. 2 3### Purposes: 4* In my case, I can't access the facebook, twitter, youtube and thousands web site for some reason. VPN is a solution. But the internet too slow whether all traffics pass through the vpn. 5So, I set up a transparent proxy to proxy the traffic which has been blocked only. 6At the final step, I need to install a dns service which would work with ipset well to launch the system. 7I did some research for this. Unfortunately, Unbound, My favorite dns service doesn't support ipset yet. So, I decided to implement it by my self and contribute the patch. It's good for me and the community. 8``` 9# unbound.conf 10server: 11 ... 12 local-zone: "facebook.com" ipset 13 local-zone: "twitter.com" ipset 14 local-zone: "instagram.com" ipset 15 more social website 16 17ipset: 18 name-v4: "gfwlist" 19``` 20``` 21# iptables 22iptables -A PREROUTING -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-ports 10800 23iptables -A OUTPUT -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-ports 10800 24``` 25 26* This patch could work with iptables rules to batch block the IPs. 27``` 28# unbound.conf 29server: 30 ... 31 local-zone: "facebook.com" ipset 32 local-zone: "twitter.com" ipset 33 local-zone: "instagram.com" ipset 34 more social website 35 36ipset: 37 name-v4: "blacklist" 38 name-v6: "blacklist6" 39``` 40``` 41# iptables 42iptables -A INPUT -m set --set blacklist src -j DROP 43ip6tables -A INPUT -m set --set blacklist6 src -j DROP 44``` 45 46### Notes: 47* To enable this module the root privileges is required. 48* Please create a set with ipset command first. eg. **ipset -N blacklist iphash** 49 50### How to use: 51``` 52./configure --enable-ipset 53make && make install 54``` 55 56### Configuration: 57``` 58# unbound.conf 59server: 60 ... 61 local-zone: "example.com" ipset 62 63ipset: 64 name-v4: "blacklist" 65``` 66
README.svn
1README.svn 2 3For a svn checkout: 4* configure script, aclocal.m4, as well as yacc/lex output files are 5 committed to the repository. 6* use --enable-debug flag for configure to enable dependency tracking and 7 assertions, otherwise, use make clean; make after svn update. 8 9* Note changes in the Changelog. 10* Every check-in a postcommit hook is run 11 (the postcommit hook is in the svn/unbound/hooks directory). 12 * generates commit email with your changes and comment. 13 * compiles and runs the tests (with testcode/do-tests.sh). 14 * If build errors or test errors happen 15 * Please fix your errors and commit again. 16 17* Use gnu make to compile, make or 'gmake'. 18
README.tests
1README unbound tests 2 3For a quick test that runs unit tests and state machine tests, use 4 make test 5 6There is a long test setup for unbound that needs tools installed. Use 7 make longtest 8To make and run the long tests. The results are summarized at the end. 9 10You need to have the following programs installed and in your PATH. 11* dig - from the bind-tools package. Used to send DNS queries. 12* splint (optional) - for lint test 13* doxygen (optional) - for doc completeness test 14* ldns-testns - from ldns examples. Used as DNS auth server. 15* xxd and nc (optional) - for (malformed) packet transmission. 16The optional programs are detected and can be omitted. 17 18You can also use prepared Dockerfile to run tests inside docker based on latest gcc image: 19* build container: docker build -t unbound-tester -f contrib/Dockerfile.tests . 20* run container: docker run -it --mount type=bind,source="$(pwd)",target=/usr/src/unbound --rm unbound-tester 21* configure environment: ./configure 22* run test: make test 23* run long tests: make longtest 24It is worth to mention that you need to enable [ipv6 in your docker daemon configuration](https://docs.docker.com/config/daemon/ipv6/) because some tests need ipv6 network stack. 25 26testdata/ contains the data for tests. 27testcode/ contains scripts and c code for the tests. 28 29do-tests.sh : runs all the tests in the testdata directory. 30testbed.sh : compiles on a set of (user specific) hosts and runs do-tests. 31 32Tests are run using testcode/mini_tpkg.sh. 33