treysis / totd Goto Github PK
View Code? Open in Web Editor NEWThis project forked from fwdillema/totd
DNS proxy and translator for IPv6 and IPv4
License: Other
This project forked from fwdillema/totd
DNS proxy and translator for IPv6 and IPv4
License: Other
Copyright (C) 1998 WIDE Project. All rights reserved. Copyright (C) 1999,2000,2001,2002 University of Tromso. All rights reserved. Copyright (C) 2002 Invenia Innovation AS. All rights reserved. *** Acknowledgements *** Thanks to 6Net (EU project IST-2001-32603), http://www.6net.org/, for partially funding totd development. See also: http://cordis.europa.eu/search/index.cfm?fuseaction=result.document&RS_LANG=IT&RS_RCN=8495872&q= Thanks to Telenor FoU, Tromsø for funding of and collaboration in building our IPv6-only wireless MAN infrastructure. Thanks to the Kame project (http://www.kame.net), and Itojun Hagino in particular, for bugfixes and patches and the support for scoped address rewriting. Thanks to Nathan Lutchansky for adding Linux support. Thanks to Simon Leinen for making totd work on Solaris. And finally, thanks to those that reported bugs or requested features. *** What does totd do? *** Totd is a small DNS proxy nameserver that supports IPv6 only hosts/networks that communicate with the IPv4 world using some translation mechanism. Examples of such translation mechanisms currently in use are: * IPv6/IPv4 Network Address and Packet Translation (NAT-PT) implemented. * Transport level translators as the faithd implemented by the KAME project (http://www.kame.net). See faithd(8) on *BSD/Kame. These translators translate map IPv4 to IPv6 connections and back in some way. In order for an application to connect through such a translator to the world beyond it needs to use fake or fabricated addresses that are routed to this translator. These fake addresses don't exist in the DNS, and most likely you would not want them to appear there either. Totd fixes this problem for now (until more elegant solutions emerge?) by translating DNS queries/responses for the faked addresses. totd constructs these fake addresses based on a configured IPv6 translator prefix and records it *does* find in DNS. Totd is merely a stateless DNS-proxy, not a nameserver itself. Totd needs to be able to forward requests to a real nameserver. Recently, a running totd can be (re-)configured remotely using http; see the INSTALL document for more information about this. *** Some other experimental things you could use totd for *** Totd can do some things that are more experimental. you can select at compile time whether you want these or not. Totd supports re-writing of scoped addresses in DNS responses and supports reverse namelookup for 6to4 names. Scoped address rewriting is explained in the totd manual page. 6to4 reverse lookup is based on draft-moore-6to4-dns-00.txt, section 3.3: When such a resolver received a PTR or NS query for a label that had a [x2002].IP6.ARPA suffix, it would first attempt to satisfy that query from its cache, or failing that, by forwarding the query to an upstream server. If that query failed due to a "no such domain" error, the resolver would then attempt to find the server for the {something}.[x2002].IP6.ARPA label by issuing an NS query for {something}.IN-ADDR.ARPA. If the original query was for PTR records, and one or more NS records were found for {something}.IN-ADDR.ARPA, the resolver would then forward the original query for {something}.[x2002].IP6.ARPA to one or more of those servers, and return the results from one of the forwarded queries if any were successful. If the original query was for NS records, and one or more NS records were found for {something}.IN-ADDR.ARPA, the resolver would then return the pseudo-records corresponding to the IN-ADDR.ARPA domains. Those pseudo-records would NOT be marked as authoritative, and the resolver would NOT cache those records. *** Contacting the Author *** You can contact me (Feico Dillema) at feico at dillema.net (s/ at /@).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.