Differences between revisions 3 and 5 (spanning 2 versions)
Revision 3 as of 2005-11-09 00:27:48
Size: 895
Editor: alpt
Comment:
Revision 5 as of 2006-03-11 10:03:40
Size: 1873
Editor: alpt
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
In DNS server the MX field is provided by the DNS itself, to leave ADNA more flexible the MX in Ntk is provided by the host itself.
When you need to know the MX of a domain, you resolve the domain itself via a normal hostname resolution, then you contact the gained ip, which is the host itself and you ask its MX.
In DNS server the MX field is provided by the DNS itself, to leave ANDNA more
flexible the MX in Ntk is provided by the host itself.
Line 14: Line 14:
This requires small changes in the code: it is just necessary that the dsn_wrapper, after having resolved the main domain, contacts the host with and the node will reply with the MX field. == hname MX resolution ==
Line 16: Line 16:
Easy and straight, that permits the hash_gnodes to understand only name resolving requests. The resolution of a MX hostnames in ANDNA works in this way:
* We are trying to resolve the MX of the "pippo" hname.
* "pippo" is resolved normally and the IP of the register_node is gained.
* We ask to the register_node the IP of its MX.

== hname MX registration ==

Since the IP of the MX node can change during the time, the register_node must
be aware of its current IP.
It is the MX node itself that tells the register_node its current IP each time
it changes. The MX node to contact the register_node has to simply resolve its
hname.
The register_node has to verify the authenticity of the IP update request,
therefore the MX node will sign the request with the private key of the
register_node.

This system is necessary because the MX node and the register node have to be
synced. In this way when the register_node dies or can't be reached anymore,
the MX node can't be contacted too.
Moreover this system prevents the spoofing of the MX node.

The steps necessary to register a hname MX are:
 * Copy the ANDNA private key of the register node, which is saved in its lcl_cache, to the MX node:
{{{
register_node# scp /usr/share/netsukuku/lcl_cache mx_node:/etc/netsukuku/mx/<HNAME_MX>
# <HNAME_MX> is the hname relative to the MX node
}}}
 * Send a SIGHUP to the MX NetsukukuD:
{{{
register_node# ssh mx_node killall -SIGHUP netsukuku_d
}}}

----
related: [Netsukuku_RFC]

NTK_RFC 0004

Subject: Mail Exchange request


This text describes how the MX DNS query are resolved by ANDNA. It will be included in the final documentation, so feel free to correct it. But if you want to change the system here described, please contact us first.


In DNS server the MX field is provided by the DNS itself, to leave ANDNA more flexible the MX in Ntk is provided by the host itself.

hname MX resolution

The resolution of a MX hostnames in ANDNA works in this way: * We are trying to resolve the MX of the "pippo" hname. * "pippo" is resolved normally and the IP of the register_node is gained. * We ask to the register_node the IP of its MX.

hname MX registration

Since the IP of the MX node can change during the time, the register_node must be aware of its current IP. It is the MX node itself that tells the register_node its current IP each time it changes. The MX node to contact the register_node has to simply resolve its hname. The register_node has to verify the authenticity of the IP update request, therefore the MX node will sign the request with the private key of the register_node.

This system is necessary because the MX node and the register node have to be synced. In this way when the register_node dies or can't be reached anymore, the MX node can't be contacted too. Moreover this system prevents the spoofing of the MX node.

The steps necessary to register a hname MX are:

  • Copy the ANDNA private key of the register node, which is saved in its lcl_cache, to the MX node:

register_node# scp /usr/share/netsukuku/lcl_cache mx_node:/etc/netsukuku/mx/<HNAME_MX>
# <HNAME_MX> is the hname relative to the MX node
  • Send a SIGHUP to the MX NetsukukuD:

register_node# ssh mx_node killall -SIGHUP netsukuku_d


related: [Netsukuku_RFC]

Ntk_MX_request (last edited 2008-06-26 09:55:38 by anonymous)