Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lnussbaum/tuns
IP over DNS tunnel
https://github.com/lnussbaum/tuns
Last synced: 2 months ago
JSON representation
IP over DNS tunnel
- Host: GitHub
- URL: https://github.com/lnussbaum/tuns
- Owner: lnussbaum
- License: gpl-3.0
- Created: 2009-09-07T08:22:32.000Z (over 15 years ago)
- Default Branch: master
- Last Pushed: 2017-05-23T09:46:59.000Z (over 7 years ago)
- Last Synced: 2024-08-03T17:12:29.010Z (6 months ago)
- Language: Ruby
- Homepage: http://www.loria.fr/~lnussbau/tuns.html
- Size: 285 KB
- Stars: 21
- Watchers: 5
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README
- Changelog: Changelog
- License: COPYING
Awesome Lists containing this project
- awesome-network-stuff - **13**星
README
TUNS - a simple IP over DNS tunnel
==================================
(c) Lucas Nussbaum
Licensed under GPL v3 or later (see COPYING file)TUNS is a prototype implementation of an IP over DNS tunnel. It is provided
here in the interest of reproducibility of scientific results, so that
evaluations that were carried out can be reproduced by others.Its main features are:
- simplicity: it's thought to be as simple as possible.
+ no complex DNS stuff (TXT records, EDNS0, ...) ; uses only CNAME records
+ no splitting of IP packets: sets the MTU and forgets about it
- efficiency
+ it's optimized for low latencyPlease note that using TUNS on networks that you don't totally control is
illegal in many countries. As stated above, TUNS is only provided so that you
can reproduce results obtained with it, in experimental setups. If you take the
decision to use it for something else, the author of TUNS can't be held
responsible. If you are unsure, please consult with a lawyer.Installation
------------
There is no real installation script.
* uncompress the tarball.
* install packages needed to build base32.so (in Debian: rake, ruby1.8-dev)
* build base32.so:
cd base32-0.1.1
rake
cd ..
cp base32-0.1.1/ext/base32.so .
* then you can run tuns-client or tuns-server. (see below)Usage
-----
You need to delegate a DNS zone (using NS records) to the system where TUNS
will run. In the following example, we use dnstunnel.tuns.net.Client: as root, run tuns-client -d dnstunnel.tuns.net
Server: as root, run tuns-server -d dnstunnel.tuns.netThere's a number of possible options you can use to change default values.
See tuns-client -h and tuns-server -h.After starting the client, type 'help' to get the online help.
Troubleshooting
---------------
The meaning of characters output in client's verbose mode is documented at the
start of the tuns-client file. It can help to understand what's wrong.License
-------
The base32 module is licensed under a permissive non-copylefted free software
license (see http://base32.rubyforge.org/svn/trunk/COPYING -- the COPYING file
wasn't included in the base32 tarball).TUNS is licensed under GPL version 3, or any later version. See the COPYING
file.