Merge pull request #2 from svost/master
[novacoin-seeder.git] / README
1 novacoin-seeder
2 ==============
3
4 NovaCoin-seeder is a crawler for the NovaCoin network, which exposes a list
5 of reliable nodes via a built-in DNS server.
6
7 Features:
8 * regularly revisits known nodes to check their availability
9 * bans nodes after enough failures, or bad behaviour
10 * keeps statistics over (exponential) windows of 2 hours, 8 hours,
11   1 day and 1 week, to base decisions on.
12 * very low memory (a few tens of megabytes) and cpu requirements.
13 * crawlers run in parallel (by default 24 threads simultaneously).
14
15 USAGE
16 -----
17
18 Assuming you want to run a dns seed on dnsseed.example.com, you will
19 need an authorative NS record in example.com's domain record, pointing
20 to for example vps.example.com:
21
22 $ dig -t NS dnsseed.example.com
23
24 ;; ANSWER SECTION
25 dnsseed.example.com.   86400    IN      NS     vps.example.com.
26
27 On the system vps.example.com, you can now run dnsseed:
28
29 ./dnsseed -h dnsseed.example.com -n vps.example.com
30
31 If you want the DNS server to report SOA records, please provide an
32 e-mailadres (with the @ part replaced by .) using -m.
33
34 RUNNING AS NON-ROOT
35 -------------------
36
37 Typically, you'll need root privileges to listen to port 53 (name service).
38
39 One solution is using an iptables rule (Linux only) to redirect it to
40 a non-privileged port:
41
42 $ iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-port 5353
43
44 If properly configured, this will allow you to run dnsseed in userspace, using
45 the -p 5353 option.