bf40486011 Add --address, bind to specific address (uhliksk)
Pull request description:
- Fix#83 (will reply from same address as provided)
- Fix#59 (will work if you bind to specific IPv4 address)
- Fix#51 (will work with systemd-resolved service if you bind to specific address)
ACKs for top commit:
sipa:
ACK bf40486011
Tree-SHA512: 1924533a31f4e1b1149e1863454c28b5860eea6bd90e4d54fea761b608ad47ad8e15e6e2a745c91717658466cdd6c2cdc221f2587968f94c798d09774e4ddca0
5586af8ff2 Add setcap hint to readme (Jonas Schnelli)
Pull request description:
ACKs for top commit:
sipa:
ACK 5586af8ff2
Tree-SHA512: 1449ba2419bfb4a14b6dfff1683e13b0a6f469d69c8ebf9026ae9b51bba684538e3e89ed714163b83becdf13572174826579dcec2ac2abfc84ce94693935461f
c9679dc Add whitelist for service filter, use a map for cacheTime (Jonas Schnelli)
5c8b9e3 IP-Query: Use a vector instead a set and random pick an IP (Jonas Schnelli)
839db15 Add support to filter nodes by node flags (Jonas Schnelli)
23aa36a indicate that IPv4/IPv6 proxy use SOCKS5 protocol (Jonas Schnelli)
134a393 add support for IPV6 proxy (Jonas Schnelli)
1d9d182 add support for IPV4 proxy (Jonas Schnelli)
6e5a391 avoid connecting to non valid ipv4 ranges (>=240.0.0.0) (Jonas Schnelli)
Previously if the resolver was asked for a record it didn't have, it would
return a response with a NS record in the authority section. This is
incorrect, as the lack of answer indicates to the resolver that it should try
that NS record as the next step, resulting in a loop:
$ dig @8.8.8.8 rbf-seed.btc.petertodd.org TXT +trace
<snip>
rbf-seed.btc.petertodd.org. 300 IN NS rbf-seed-ns1.btc.petertodd.org.
rbf-seed.btc.petertodd.org. 300 IN NS rbf-seed-ns2.btc.petertodd.org.
;; Received 141 bytes from 205.251.193.174#53(ns-430.awsdns-53.com) in 426 ms
rbf-seed.btc.petertodd.org. 40000 IN NS rbf-seed-ns2.btc.petertodd.org.
;; BAD (HORIZONTAL) REFERRAL
;; Received 88 bytes from 185.52.1.173#53(rbf-seed-ns2.btc.petertodd.org) in 108 ms
rbf-seed.btc.petertodd.org. 40000 IN NS rbf-seed-ns2.btc.petertodd.org.
;; BAD (HORIZONTAL) REFERRAL
;; Received 88 bytes from 185.52.1.173#53(rbf-seed-ns2.btc.petertodd.org) in 108 ms
<snip>
rbf-seed.btc.petertodd.org. 40000 IN NS rbf-seed-ns2.btc.petertodd.org.
;; BAD (HORIZONTAL) REFERRAL
dig: too many lookups
The correct response in the authority section of a negative response is a SOA
record, which indicates that the answer is authoritative and the resolver can
consider the record missing and stop looking for it:
$ dig @8.8.8.8 rbf-seed.btc.petertodd.org TXT +trace
<snip>
rbf-seed.btc.petertodd.org. 300 IN NS rbf-seed-ns1.btc.petertodd.org.
rbf-seed.btc.petertodd.org. 300 IN NS rbf-seed-ns2.btc.petertodd.org.
;; Received 141 bytes from 205.251.196.185#53(ns-1209.awsdns-23.org) in 740 ms
rbf-seed.btc.petertodd.org. 40000 IN SOA rbf-seed-ns1.btc.petertodd.org. pete.petertodd.org. 1435846201 604800 86400 2592000 604800
;; Received 128 bytes from 104.236.95.174#53(rbf-seed-ns1.btc.petertodd.org) in 31 ms
There have been a few reports of problems resolving seed domains on some
ISPs - hopefully this was the root cause.