123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228 |
- =head1 NAME
-
- ntk-resolv - Andns Lookup Resolver
-
- =head1 SYNOPSIS
-
- ntk-resolv [-vnPtrspShbml] host
- ntk-resolv -H host
-
- =head1 DESCRIPTION
-
-
- Ntk-resolv is an interface to ANDNA daemon: it performs andns queries and displays
- the answers to stdout. It is able to formule questions for objects in Internet
- and Netsukuku realms.
- It uses the 'andns protocol' to encode his contents, as explained in Netsukuku
- RFC 006.
-
- =head1 USAGE
-
-
- The simplest example is:
-
- ntk-resolv hname
-
- With this comand, it asks ANDNA which IP registered the hostname 'hname'.
- The default behavior is to perform the query in the Netsukuku realm.
-
-
- =head1 OPTIONS
-
- =over
-
- =item B<-v> B<--version>
-
- Print Version, then exit.
-
- =item B<-n> B<--nameserver=host>
-
- Specify the nameserver to use. The default is localhost.
-
- =item B<-P> B<--port=n>
-
- Uses the port <n> of nameserver. Default is 53.
-
- =item B<-t> B<--query-type=snsd --query-type=ptr --qury-type=global --query-type=mx>
-
- Specify the query type . Default is snsd. See the section B<QUERY TYPE>.
-
- =item B<-r> B<--realm=inet --realm=ntk>
-
- Specify the realm of the query: Internet or Netsukuku. Default is ntk.
-
- =item B<-s> B<--service=n[/proto]>
-
- Specify the SNSD service and the relative protocol to search. See
- services(5). The service can be specified in alfanumeric or numeric format.
- The default service and protocol are 0 and tcp.
- Example:
-
- ntk-resolv -s domain/udp host
- ntk-resolv -s 53/udp host
-
- See the section B<QUERY TYPE, SERVICES AND PROTOCOL> for a better explanation.
-
- =item B<-S> B<--silent>
-
- With this option, ntk-resolv will be very discrete.
-
- =item B<-b> B<--block-recursion>
-
- Set recursion OFF. If recursion is ON (default), when a SNSD service is requested,
- and the service is specified with a hostname instead of an IP, the IP of that
- hostname will be searched. In the case of a success research, the answer will
- contain the IP of the hostname, and NOT the hostname HASH.
-
- =item B<-m> B<--md5-hash>
-
- If this option is set, the hostname specified is interpreted as a MD5 hash.
- This is useful when you want to know a hostname IP, but you know only the hash
- of his name.
-
- =item B<-H> B<--compute-hash>
-
- Compute the hash of specified hostname and print it to stdout.
- Example:
-
- ntk-resolv -H hname
-
- It will print the md5 hash of `hname'. This is useful to debug SNSD
- configurations. In fact, if a query is not recursive, the results are hash'ed
- hostnames: so, it's possible to verify if the ANDNA cache is storing the
- correct hash-value for your SNSD hostnames.
-
- =item B<-l> B<--parsable-output>
-
- Print answers in a synthetic way. The format of output is:
-
- ~ IP (SNSD s=0)
- - hname (Inverse)
- - hname prio weight (SNSD s!=0)
- ~ ip prio weight (SNSD s!=0)
- ~ ip service proto prio weight (Global)
- - hname service proto prio weight (Global)
-
- Note that when an answer contains an IP, the first character is `~'; if the
- answer contains a hostname (hash'ed or not) the line begins with `-'.
-
- =item B<-h> B<--help>
-
- Prints to stdout a short explanation of ntk-resolv.
-
- =item B<Final note:>
-
- All options that take string arguments could be expressed in a shorter
- way, by specifing univoque abbreviation of argument. So, there is the equivalence:
-
- ntk-resolv -r i = ntk-resolv -r inet
-
- with the exception of option -s, wich requires a valid service.
-
- =head1 QUERY TYPE
-
- You can formule different kind of queries.
-
- With a `ptr' query, you specify an IP, and you will have, if exists, the hostname
- that registered that IP.
-
- With a `snsd' query, you specify a hostname, a service and a protocol. If service and
- protocol are not specified, they are set to 0, and you will have the IP assigned
- to the hostname at this moment.
- If you specify a service and a protocol, the answer will contain the IP that gives
- the specified service/protocl for the hostname.
- See the section B<SNSD, SERVICES AND PROTOCOL> to understand better the SNSD behavior.
-
- A global query will return the complete SNSD configuration for a hostname.
- Ie, you will have an answer for each service that hostname registered.
-
- The `mx' query is equivalent to a snsd query with service 25 and proto TCP.
-
- =head1 SNSD, SERVICES AND PROTOCOL
-
- SNSD Query Type gives a hostname resolution.
- With SNSD (Scattered Name Service Disgregation) ANDNA lets the user to
- ask for a domain and a service.
- If service is 0, the resolution will show which IP registered the hostname.
- If service is non-0, the resolution will show which IP gives specified service
- for the hostname (considering the protocol too). See services(5).
-
- You can specify a service as expressed in /etc/services. It can be
- expressed also in numeric form.
- It is also possible to specify the protocol:
-
- "domain", "53", "53/udp", "domain/udp"
-
- are valid service/proto strings.
-
- For example, the next commands will retrieve the IP(s) that offers web-pages
- for the hostname "host":
-
- ntk-resolv -s http/tcp host
- ntk-resolv -s 80/tcp host
- ntk-resolv -s 80 host
- ntk-resolv -s http host
-
- To configure the SNSD delegations, see the SNSD HowTo.
-
- If the delegation for a service (say http) is not set, the IP returned is
- the IP that registered the hostname. So, if you do not want to set SNSD delegations
- for specific services, the main hostname IP will be used and you don't need to
- do nothing.
-
- The hope is that every client will build different queries: browsers
- will make queries with service=80 and proto=tcp, mail-clients will build
- queries with service=25 and proto tcp and so on.
-
- The service is useless if the query realm is Internet.
-
- The default service is 0: ie, the query will return the IP that registered
- the hostname. Default protocol is tcp. Protocol is ignored when service
- requested is 0.
-
- Note: service and proto are also ignored when the query type is `ip->host`
- (ptr query type).
-
- =head1 BUGS
-
- { Don't panic! }
-
- If you encounter any bug, please report it.
- Use the online bug track system:
- L<http://bugs.dyne.org/>
-
- or the mailing list:
- L<http://lists.dyne.org/netsukuku/>
-
- and explain what the problem is and if possible a way to reproduce it.
-
- =head1 CONTACTS
-
- Subscribe to the netsukuku mailing to get help, be updated on the latest news
- and discuss on its development.
-
- To subscribe to the list, send a message to:
- L<netsukuku-subscribe@lists.dyne.org>
-
- We live night and day in IRC, come to see us in:
- #netsukuku
- on the FreeNode irc server (irc.freenode.org).
-
- =head1 AUTHORS
-
- Main authors and maintainers:
-
- Federico Tomassini <effetom@gmail.com> wrote ntk-resolv and network libraries.
-
- Andrea Lo Pumo aka AlpT <alpt@freaknet.org> wrote ANDNA and Netsukuku Core.
-
- Main contributors:
-
- Andrea Leofreddi <andrea.leofreddi@gmail.com>, Katolaz <katolaz@freaknet.org>,
-
- For a complete list read the AUTHORS file or visit:
- L<http://netsukuku.freaknet.org/?p=Contacts>
-
- =head1 SEE ALSO
-
- ntkd(8), andna(8), services(5)
|