Yes, twister is already decentralized. However there are two areas where we may improve twister to make it more resilient:
How one may help? If you have a 24×7 linux machine and you are able to add an special NS record to your domain, please consider running twister-seeder. Then let me know (@mfreitas) and I will add your domain to the code base.
How one may help? This is an easier one as you don’t need to be able to change DNS records or anything, only a 24×7 twister box with an registered username is needed. Currently most of the boxes which are allowed to vote are administered by me, but nobody wants to depend on such low Bus Factor. I must know the voters are real people, but for everybody else who reads the code it is just an anonymous username. I don’t even recommend using the same username used for normal twister posts, you should reserve it just for checkpoint voting purposes. The twisterd takes care of everything, just let the username configured on that instance and let me know (@mfreitas).
If you prefer to contact me by email its also mfreitas, but on gmail.com domain.
1) can standart Twister daemon do DNS Seeder things?
2) is it necessary to not post from that username or it just recommendation?
1) No, DNS Seeder is a separate and actually much smaller, simpler, lower footprint program than twisterd. It is available from the repository https://github.com/miguelfreitas/twister-seeder
2) It is just a recommendation. In theory we don’t want voters to “collude”, so best would be if they don’t even know each other, or are non-reachable.
1) I realise it smaller, simpler, lower footprint etc, but I ask if it does something that twisterd does not. sorry for bothering you, I just don’t want to run another yet daemon with same functionality.
1) It does:
- it is a crawler of all the known peers,
- it keeps track of the uptime/availability of each peer
- it ranks peers from the most available to the least
- it serves DNS requests (reporting the list of the most available known peers)
ok, got it. what about NS record?
Ok, about the NS record. Ideally one would follow the instructions from
https://github.com/miguelfreitas/twister-seeder/blob/master/README
and add the NS record to the DNS server they administer. This is the best solution as we get completely independent of twister.net.co and Godaddy. We add redundancy by using another provider.
If one doesn’t own a domain or can’t administer the existing DNS server for this domain, I may set another entry on twister.net.co domain. We get benefit of an extra seeder server but still relying on Godaddy… Not the best solution, but doable.
there’s one thing that I don’t understand clearly: I should create A record first — e.g.’twisted.tasty.sexy A 69.24.67.14′ — and then NS one — e.g. ‘cruller.tasty.sexy NS twisted.tasty.sexy’, right? and what is the point of NS record in this case, why it is necessary?
Actually it is the NS record that is important. I’m not specialist but my understanding is that you are delegating a subdomain to another server (the one running twister-seeder).
The A record would just resolve directly to another IP. What we want is to redirect the client to request the answer from that IP. Type ‘host seed.twister.net.co’ to see what i mean.
oh, indeed. I just didn’t have it right way. and it’s a bit misguiding about that NS cannot be IP adress directly.
could you help me to run seeder as daemon on Ubuntu? https://github.com/miguelfreitas/twister-seeder/issues/1
All my 24×7 Unix machines are already running a DNS server. Any way to make it useful for Twister, without using twister-seeder, which requires exclusive access to port 53?
I have an offer of a server running twister-seeder. How about that: you take care of the NS records and the other guy takes care of the daemon?