vinced (OP)
Newbie
Offline
Activity: 23
Merit: 34
|
|
April 24, 2011, 08:59:35 PM |
|
@kiba
The issue with doing DNS delegation is that it doesn't work behind Tor. It would work on the exit node, but it would be very limiting if you could only use participating exit nodes.
Take a look at my latest commit in the client subdirectory. I created a proxy that can be inserted betwen polipo and Tor. That means everything is done on the client side. he way delegation works in this scheme is similar to a CNAME with a wildcard:
example.bit is translated to foo.com and then resolved x.example.bit is translated to x.foo.com
This works behind tor and also allows .onion to be used as the target. The JSON option is much more flexible than the 80's style DNS zones. The usual case for the JSON is just:
{'map':{'' : 'foo.com'}}
Namecoind by itself would not do any of this. Better to keep the translation part in external programs so development can be done in parallel. What we need is:
* A proxy before tor - done * A proxy without tor * A DNS resolver that an end-user or an ISP can run locally and delegate .bit to * A browser plugin
As to a name not showing up in name_scan. Please send me a transaction ID and anything in debug.log that looks relevant, and I'll look into it.
It's only a week since launch. There will be more progress if additional people contribute. I would appreciate coding and documentation help if you would like to see this move faster.
|
|
|
|
dmp1ce
|
|
April 24, 2011, 10:27:37 PM |
|
Great work Vinced, I will try to keep the Window and Linux binaries up-to-date if needed. I am not much of a C coder unfortunately so I don't think I will be able to help much with that part.
|
|
|
|
kiba
Legendary
Offline
Activity: 980
Merit: 1024
|
|
April 24, 2011, 10:30:09 PM |
|
@kiba
The issue with doing DNS delegation is that it doesn't work behind Tor. It would work on the exit node, but it would be very limiting if you could only use participating exit nodes.
Take a look at my latest commit in the client subdirectory. I created a proxy that can be inserted betwen polipo and Tor. That means everything is done on the client side. he way delegation works in this scheme is similar to a CNAME with a wildcard:
example.bit is translated to foo.com and then resolved x.example.bit is translated to x.foo.com
This works behind tor and also allows .onion to be used as the target. The JSON option is much more flexible than the 80's style DNS zones. The usual case for the JSON is just:
{'map':{'' : 'foo.com'}}
Namecoind by itself would not do any of this. Better to keep the translation part in external programs so development can be done in parallel. What we need is:
* A proxy before tor - done * A proxy without tor * A DNS resolver that an end-user or an ISP can run locally and delegate .bit to * A browser plugin
As to a name not showing up in name_scan. Please send me a transaction ID and anything in debug.log that looks relevant, and I'll look into it.
It's only a week since launch. There will be more progress if additional people contribute. I would appreciate coding and documentation help if you would like to see this move faster.
Why are you talking to me about tor?
|
|
|
|
grue
Legendary
Offline
Activity: 2058
Merit: 1462
|
|
April 24, 2011, 11:23:25 PM |
|
is there a pre-compiled version for windows?
|
|
|
|
memvola
|
|
April 24, 2011, 11:48:32 PM |
|
The issue with doing DNS delegation is that it doesn't work behind Tor. It would work on the exit node, but it would be very limiting if you could only use participating exit nodes.
That's true, but I'm still impartial about this. I still think most people would want the system to work as a domain registry. I wish more people gave their opinion about this. So if someone's going to launch a DNS bridge next week, would you recommend them not to include this functionality? Take a look at my latest commit in the client subdirectory. I created a proxy that can be inserted betwen polipo and Tor. That means everything is done on the client side.
Wow, that is nice. This works behind tor and also allows .onion to be used as the target. The JSON option is much more flexible than the 80's style DNS zones. The usual case for the JSON is just:
{'map':{'' : 'foo.com'}}
Isn't it the anti-use-case of this system? If I wanted to redirect to an ICANN approved domain name, I'd use it instead. Other than that, it's identical to standard CNAME records, isn't it? Why not include all the standard and make migration easier? Besides that, JSON is much better, that's for sure. I was thinking about encapsulating the zone data in a higher-level object to support different standards. As to a name not showing up in name_scan. Please send me a transaction ID and anything in debug.log that looks relevant, and I'll look into it.
Will do sir.
|
|
|
|
Raoul Duke
aka psy
Legendary
Offline
Activity: 1372
Merit: 1002
|
|
April 25, 2011, 02:41:57 AM |
|
is there a pre-compiled version for windows?
If you read the thread before asking you would know it was already posted here :
|
|
|
|
dmp1ce
|
|
April 25, 2011, 02:46:53 AM |
|
It may not work so well though... Some have been complaining of getting an error: program can't start because libgcc_s_dw2-1.dll is missing from your computer You're welcome to try this binary ( http://dl.dropbox.com/u/2882613/Namecoin/namecoind.exe) if you get the error but I have not tested it.
|
|
|
|
Gekz
Newbie
Offline
Activity: 1
Merit: 0
|
|
April 25, 2011, 03:30:20 AM |
|
Is there a good reason for namecoin addresses beginning with the same character as bitcoin addresses (1)? Testnet addresses are different to bitcoins addresses to ensure you can distinguish between them, so why is namecoin still 1 too?
|
|
|
|
xf2_org
Member
Offline
Activity: 98
Merit: 13
|
|
April 25, 2011, 04:47:36 AM |
|
Is there a good reason for namecoin addresses beginning with the same character as bitcoin addresses (1)? Testnet addresses are different to bitcoins addresses to ensure you can distinguish between them, so why is namecoin still 1 too?
Yes -- vinced, please fix this. It's in base58.h: #define ADDRESSVERSION ((unsigned char)(fTestNet ? 111 : 0))
I would suggest 112, to make addresses begin with the letter 'n'.
|
|
|
|
khal
|
|
April 25, 2011, 01:22:18 PM Last edit: April 25, 2011, 11:04:08 PM by khal |
|
The issue with doing DNS delegation is that it doesn't work behind Tor. It would work on the exit node, but it would be very limiting if you could only use participating exit nodes.
That's true, but I'm still impartial about this. I still think most people would want the system to work as a domain registry. I wish more people gave their opinion about this. So if someone's going to launch a DNS bridge next week, would you recommend them not to include this functionality? I would like this software to work as a domain registry too. All DNS servers in the world already work in a decentralized way. The only thing that is centralized is domain registry, and that is where domains are seized. Here is an example : A. domain : bitcoin-contact.orgB. nameservers : NS0.WEB-SWEET-WEB.NET, NS1.WEB-SWEET-WEB.NET C. zone config (simplified) : IN NS ns0.web-sweet-web.net. IN NS ns1.web-sweet-web.net. * IN A 188.165.40.52 www IN A 188.165.40.52 So, to explain how it works : A. domain registry owns bitcoin-contact.org and say it is managed by two name servers : NS0.WEB-SWEET-WEB.NET, NS1.WEB-SWEET-WEB.NET B. name servers are standard DNS servers that respond to dns queries : bitcoin-contact.org => 188.165.40.52, or www.bitcoin-contact.org => 188.165.40.52 On your domain registry account, you can change the 2 nameservers if you want, and dns queries for your domain will be sent to those new servers. This is where the system is decentralized, because you can use whatever dns server you want (and make your own too). But, other people (your domain provider, ICANN, etc) can change those two nameservers, because they control your domain (directly or indirectly). They can also lock you domain registry account. So, the only part that still needs to be decentralized is domain registration, with name servers associated. In the namecoin system, this may looks something like : { 'domain':'mydomain.bit', 'nameserver': [ "NS0.WEB-SWEET-WEB.NET", "NS1.WEB-SWEET-WEB.NET", "NS0.XNAME.ORG", "NS1.XNAME.ORG", "87.98.164.164", ] } Then, re-use a standard DNS server to do everything else, to be compatible with existing technology.
|
|
|
|
anarchy
Member
Offline
Activity: 102
Merit: 10
|
|
April 26, 2011, 01:10:13 AM |
|
Let's make this system without extension. They have been an unnecessary overhead anyway.
So just 'google' instead of 'google.com'
Another incentive for people to adopt it.
|
|
|
|
phathash
Member
Offline
Activity: 75
Merit: 10
|
|
April 26, 2011, 01:19:51 AM |
|
I have an issue trying to make a name visible..
I have already used "namecoind name_new d/mydom"... waited 12 blocks, am now trying to -
"namecoind name_firstupdate d/mydom xxxxxxxxxx test"
I get -
error: {"code":-4,"message":"Error: Transaction creation failed "}
Any idea what the issue is?
The hex code is correct.. because if I try a different hex code it mentions "previous tx used a different value".
Thanks.
|
|
|
|
vinced (OP)
Newbie
Offline
Activity: 23
Merit: 34
|
|
April 26, 2011, 02:16:39 AM |
|
I was wrong, it is possible to do DNS delegation behind Tor. I will have a new version of ncproxy shortly.
I am thinking of the following JSON format for a simple delegation:
{'map': { '': { 'ns': ['10.0.0.1'] } }
@khal There is no need to have the domain name in the value, as the name is already separated out in the protocol. Also, I think it is best to have DNS delegation to IP addresses for now, to keep things simple. Does this sound OK?
@xf2_org I will update the address format soon. Good catch.
@anarchy Using no TLD would not work well with Chrome, since it will do a Google search instead. It will also break for corporate people that use single word hosts internally.
@memvola I will look into your issue shortly.
!Vince
|
|
|
|
vinced (OP)
Newbie
Offline
Activity: 23
Merit: 34
|
|
April 26, 2011, 02:18:25 AM |
|
@dmp1ce Thanks for building binaries!
|
|
|
|
memvola
|
|
April 26, 2011, 03:58:59 AM |
|
I was wrong, it is possible to do DNS delegation behind Tor. I will have a new version of ncproxy shortly.
I am thinking of the following JSON format for a simple delegation:
{'map': { '': { 'ns': ['10.0.0.1'] } }
Perfect! Do you have a donation address so that we can show our appreciation? For the final specification, the criteria I have is: - IP-only services need only supply master server addresses, just as they would do with a name registry.
- Services which don't control a nameserver can supply DNS records, with MX and whatnot. Local proxy needs only consider CNAME, A, AAAA and maybe namecoin specific records (hidden services, etc.).
- IP/Non-IP hybrid services can optionally use the same name to be resolved according to context (i.e. if I'm going through I2P, name resolves to the I2P address).
- Specification allows the delegating system (DNS bridge, proxy, etc.) to take the above two items into consideration. For instance, if name resolves to a tor hidden service, it shouldn't go ask the master server for IP.
Last item is a little awkward (first recurse, then forward), but I need to sleep over this first. Before vinced's post, I was thinking more like having different Json objects for forwarding (IN), zone (IN) and each non-IP service.
|
|
|
|
phathash
Member
Offline
Activity: 75
Merit: 10
|
|
April 26, 2011, 04:09:03 AM |
|
I have an issue trying to make a name visible..
I have already used "namecoind name_new d/mydom"... waited 12 blocks, am now trying to -
"namecoind name_firstupdate d/mydom xxxxxxxxxx test"
I get -
error: {"code":-4,"message":"Error: Transaction creation failed "}
Any idea what the issue is?
The hex code is correct.. because if I try a different hex code it mentions "previous tx used a different value".
Thanks.
namecoind also now crashed (windows binary).. I have all the hex codes saved from my "name_new" attempts. Whenever I now try to use "name_firstupdate" I receive "could not find a coin with this name". The namecoins are gone from my balance.. Have I lost my namecoins?
|
|
|
|
carlerha
|
|
April 26, 2011, 08:55:23 AM |
|
Let's make this system without extension. They have been an unnecessary overhead anyway.
So just 'google' instead of 'google.com'
Another incentive for people to adopt it.
+1 So Trends would be http://trends.google ?
|
|
|
|
dmp1ce
|
|
April 26, 2011, 12:48:28 PM |
|
I have an issue trying to make a name visible..
I have already used "namecoind name_new d/mydom"... waited 12 blocks, am now trying to -
"namecoind name_firstupdate d/mydom xxxxxxxxxx test"
I get -
error: {"code":-4,"message":"Error: Transaction creation failed "}
Any idea what the issue is?
The hex code is correct.. because if I try a different hex code it mentions "previous tx used a different value".
Thanks.
When namecoind has been restarted you might need to also enter the long string that is returned from name_new. For example: ./namecoind name_firstupdate d/mydom xxxshort xxxxxxxxxxxxxlong "test value" namecoind also now crashed (windows binary).. I have all the hex codes saved from my "name_new" attempts. Whenever I now try to use "name_firstupdate" I receive "could not find a coin with this name".
The namecoins are gone from my balance.. Have I lost my namecoins? Try the suggestion above of using the long random string as well as the short. You will need around 45 Namecoins to do the name_firstupdate however.
|
|
|
|
memvola
|
|
April 26, 2011, 02:08:53 PM Last edit: April 26, 2011, 07:01:35 PM by memvola |
|
Looks like my node is also suffering from a third kind of problem that I haven't noticed before... I have in my name_list, some names I've been able to update and some that I've firstupdate'd without problem but now belong to other people (this is the old issue). The new thing I noticed is, while these erroneous entries stay in the list, some of the names I've successfully updated disappeared between restarts (there were some crashes too). Now, the names carry my values, but I can't update them anymore: error: {"code":-1,"message":"could not find a coin with this name"} So, what does it mean? Is there a way I can get back the names? I was really planning to start using one of them right away. EDIT: I restored a backup from 5 days ago. I could see the names there. I know I shouldn't have, but things were already screwed up, so in the spirit of testing, I tried updating one of the names from there. Successfully updated the name. But the fantastic thing is, when I got back to to my current version of .namecoin directory, I got the name back!? It's not only in name_scan but actually in my name_list. I don't know how this might have happened (so the coin was there but was locked/hidden somehow?). Anyway, I think I'll now try to transfer the money I lost through missed names and see what happens... EDIT2: I restored all names and saw them in my name_list for a while. After some blocks, I thought it would be safe and tried a restart, and some names vanished again (including one that was there before I tried this "restore from backup" endeavor). Didn't have time to get to transferring the money, so that's not the cause. I think it's the same bug or db corruption. At least I now know that they're not lost because of a namecoind crash.
|
|
|
|
mizerydearia
|
|
April 26, 2011, 02:44:21 PM Last edit: April 26, 2011, 04:29:58 PM by mizerydearia |
|
|
|
|
|
|