mirror of
https://github.com/ChronosX88/netsukuku.git
synced 2024-12-22 17:01:46 +00:00
71c11af63d
Conflicts: index.html More doxgyen stuff I guess
375 lines
15 KiB
HTML
375 lines
15 KiB
HTML
<<<<<<< HEAD
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.6"/>
|
|
<title>The Netsukuku Project: Main Page</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(initResizable);
|
|
$(window).load(resizeHeight);
|
|
</script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() { searchBox.OnSelectItem(0); });
|
|
</script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td style="padding-left: 0.5em;">
|
|
<div id="projectname">The Netsukuku Project
|
|
 <span id="projectnumber">0.0.9</span>
|
|
</div>
|
|
<div id="projectbrief">An Alternative routing method</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.6 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li class="current"><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="annotated.html"><span>Data Structures</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
<li>
|
|
<div id="MSearchBox" class="MSearchBoxInactive">
|
|
<span class="left">
|
|
<img id="MSearchSelect" src="search/mag_sel.png"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
alt=""/>
|
|
<input type="text" id="MSearchField" value="Search" accesskey="S"
|
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
|
</span><span class="right">
|
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){initNavTree('index.html','');});
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Macros</a></div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle">
|
|
<div class="title">The Netsukuku Project Documentation</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="footer">Generated on Wed Feb 19 2014 14:19:17 for The Netsukuku Project by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
=======
|
|
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
|
<title>Netsukuku by Netsukuku</title>
|
|
<link rel="stylesheet" href="stylesheets/styles.css">
|
|
<link rel="stylesheet" href="stylesheets/pygment_trac.css">
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
|
|
<script src="javascripts/respond.js"></script>
|
|
<!--[if lt IE 9]>
|
|
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
<![endif]-->
|
|
<!--[if lt IE 8]>
|
|
<link rel="stylesheet" href="stylesheets/ie.css">
|
|
<![endif]-->
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
|
|
|
</head>
|
|
<body>
|
|
<div id="header">
|
|
<nav>
|
|
<li class="fork"><a href="https://github.com/Netsukuku/netsukuku">View On GitHub</a></li>
|
|
<li class="downloads"><a href="https://github.com/Netsukuku/netsukuku/zipball/master">ZIP</a></li>
|
|
<li class="downloads"><a href="https://github.com/Netsukuku/netsukuku/tarball/master">TAR</a></li>
|
|
<li class="title">DOWNLOADS</li>
|
|
</nav>
|
|
</div><!-- end header -->
|
|
|
|
<div class="wrapper">
|
|
|
|
<section>
|
|
<div id="title">
|
|
<h1>Netsukuku</h1>
|
|
<p>Reborned C-code </p>
|
|
<hr>
|
|
<span class="credits left">Project maintained by <a href="https://github.com/Netsukuku">Netsukuku</a></span>
|
|
<span class="credits right">Hosted on GitHub Pages — Theme by <a href="https://twitter.com/michigangraham">mattgraham</a></span>
|
|
</div>
|
|
|
|
<p><a href="http://netsukuku.freaknet.org">http://netsukuku.freaknet.org</a></p>
|
|
|
|
<hr><h2>
|
|
<a name="what-is-this" class="anchor" href="#what-is-this"><span class="octicon octicon-link"></span></a>What is this?</h2>
|
|
|
|
<p><strong>Netsukuku</strong> is a mesh network or a p2p net system that generates and sustains
|
|
itself autonomously. It is designed to handle an unlimited number of nodes
|
|
with minimal CPU and memory resources. Thanks to this feature it can be easily
|
|
used to build a worldwide distributed, anonymous and not controlled network,
|
|
separated from the Internet, without the support of any servers, ISPs or
|
|
authority controls.
|
|
This net is composed by computers linked physically each other, therefore it
|
|
isn't build upon any existing network. Netsukuku builds only the routes which
|
|
connects all the computers of the net.
|
|
In other words, Netsukuku replaces the level 3 of the model iso/osi with
|
|
another routing protocol.
|
|
The Domain Name System is also replaced by a decentralised and distributed
|
|
system: the Abnormal Netsukuku Domain Name Anarchy.</p>
|
|
|
|
<p>The complete features list of Netsukuku is here:
|
|
<a href="http://netsukuku.freaknet.org/files/doc/misc/Ntk_features_list">http://netsukuku.freaknet.org/files/doc/misc/Ntk_features_list</a></p>
|
|
|
|
<p>In order to join to Netsukuku you have to use NetsukukuD, which is the daemon
|
|
implementing the Npv7 protocol.</p>
|
|
|
|
<p>Before doing anything, please read the documentation in doc/ or in
|
|
<a href="http://netsukuku.freaknet.org">http://netsukuku.freaknet.org</a></p>
|
|
|
|
<h2>
|
|
<a name="get-the-code" class="anchor" href="#get-the-code"><span class="octicon octicon-link"></span></a>Get the code!</h2>
|
|
|
|
<p>Get the tarball of the latest stable version from:
|
|
<a href="http://netsukuku.freaknet.org/files/">http://netsukuku.freaknet.org/files/</a></p>
|
|
|
|
<p>Or use <strong>github</strong>:</p>
|
|
|
|
<pre><code>$git clone git@github.com:Netsukuku/netsukuku.git
|
|
</code></pre>
|
|
|
|
<h2>
|
|
<a name="build-and-install" class="anchor" href="#build-and-install"><span class="octicon octicon-link"></span></a>Build and install</h2>
|
|
|
|
<p>To compile the code you can use scons or just go with the old school way:</p>
|
|
|
|
<pre><code># ./configure && make && make install
|
|
</code></pre>
|
|
|
|
<p>But SCons is cooler:
|
|
<a href="http://www.scons.org/">http://www.scons.org/</a>
|
|
(You should have installed at least the 2.4 version of Python in order to
|
|
avoid dirty bugs in scons)</p>
|
|
|
|
<p>The code depends also on the libgmp,zlib and openssl. Generally you have
|
|
already them installed on your system, but eventually you can retrieve them
|
|
here:
|
|
for the libgmp: <a href="http://www.swox.com/gmp/">http://www.swox.com/gmp/</a>
|
|
the openssl library here: <a href="http://openssl.org">http://openssl.org</a>
|
|
and finally the zlibs: <a href="http://zlib.net">http://zlib.net</a></p>
|
|
|
|
<p>Then go in the src/ directory and type:
|
|
$ scons --help</p>
|
|
|
|
<p>That will show you all the options you can use in the build and installation
|
|
process. Finally execute:</p>
|
|
|
|
<pre><code>$ scons
|
|
</code></pre>
|
|
|
|
<p>The code will be compiled. If all went well install NetsukukuD with:</p>
|
|
|
|
<pre><code># scons install
|
|
</code></pre>
|
|
|
|
<p>Now you should give a look at /etc/netsukuku.conf (or wherever you installed
|
|
it) and modify it for your needs, but generally the default options are good.</p>
|
|
|
|
<ul>
|
|
<li>Notes:</li>
|
|
</ul><p>If you want to change some scons option to do another installation, (i.e. you
|
|
may want to reinstall it with another MANDIR path), you have to run:
|
|
$ scons --clean</p>
|
|
|
|
<h2>
|
|
<a name="static-binaries-and-packages" class="anchor" href="#static-binaries-and-packages"><span class="octicon octicon-link"></span></a>Static Binaries and Packages</h2>
|
|
|
|
<p>If you prefer to just install Netsukuku, without compiling it, you can
|
|
download the static binaries suitable to your platform. They come packed in
|
|
various formats (.tgz, .deb, .ipk).
|
|
The packages repository is at:
|
|
<a href="http://netsukuku.freaknet.org/packages/">http://netsukuku.freaknet.org/packages/</a></p>
|
|
|
|
<h2>
|
|
<a name="kernel-dependencies" class="anchor" href="#kernel-dependencies"><span class="octicon octicon-link"></span></a>Kernel dependencies</h2>
|
|
|
|
<p>On Linux be sure to have the following options set in your kernel .config.
|
|
These options are taken from linux-2.6.14.</p>
|
|
|
|
<p>Networking options</p>
|
|
|
|
<pre><code>CONFIG_PACKET=y
|
|
CONFIG_UNIX=y
|
|
CONFIG_INET=y
|
|
CONFIG_IP_MULTICAST=y
|
|
CONFIG_IP_ADVANCED_ROUTER=y
|
|
CONFIG_IP_MULTIPLE_TABLES=y
|
|
CONFIG_IP_ROUTE_MULTIPATH=y
|
|
CONFIG_NET_IPIP=y
|
|
CONFIG_NETFILTER=y
|
|
</code></pre>
|
|
|
|
<p>and these from linux-2.6.16.19.</p>
|
|
|
|
<p>Core Netfilter Configuration</p>
|
|
|
|
<pre><code>CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
|
|
NETFILTER_XT_TARGET_CONNMARK=y
|
|
</code></pre>
|
|
|
|
<p>IP: Netfilter Configuration</p>
|
|
|
|
<pre><code>CONFIG_IP_NF_IPTABLES=y
|
|
CONFIG_IP_NF_FILTER=y
|
|
CONFIG_IP_NF_TARGET_REJECT=y
|
|
CONFIG_IP_NF_NAT=y
|
|
CONFIG_IP_NF_NAT_NEEDED=y
|
|
CONFIG_IP_NF_TARGET_MASQUERADE=y
|
|
</code></pre>
|
|
|
|
<p>If you are using modules you have to load them before launching the daemon.</p>
|
|
|
|
<h2>
|
|
<a name="how-to-use-it" class="anchor" href="#how-to-use-it"><span class="octicon octicon-link"></span></a>How to use it</h2>
|
|
|
|
<p>Before doing anything do:</p>
|
|
|
|
<pre><code>$ man ntkd
|
|
$ man andna
|
|
</code></pre>
|
|
|
|
<p>when you feel confortable and you are ready to dare type with root
|
|
priviledges:</p>
|
|
|
|
<pre><code># ntkd
|
|
</code></pre>
|
|
|
|
<p>then just wait... ^_-</p>
|
|
|
|
<p>(For the first times it's cool to use the -D option to see what happens).</p>
|
|
|
|
<ul>
|
|
<li>Note:
|
|
The daemon at startup takes the list of all the network interfaces which are
|
|
currently UP and it uses all of them to send and receive packets. If you want
|
|
to force the daemon to use specific interfaces you should use the B<-i>
|
|
option.</li>
|
|
</ul><h2>
|
|
<a name="where-to-get-in-touch-with-us" class="anchor" href="#where-to-get-in-touch-with-us"><span class="octicon octicon-link"></span></a>Where to get in touch with us</h2>
|
|
|
|
<blockquote>
|
|
<p>Mailing list</p>
|
|
</blockquote>
|
|
|
|
<p>Subscribe to the netsukuku mailing to get help, be updated on the latest news
|
|
and discuss on its development.</p>
|
|
|
|
<p>To subscribe to the list, send a message to:
|
|
<a href="mailto:netsukuku-subscribe@lists.dyne.org">netsukuku-subscribe@lists.dyne.org</a>
|
|
or use the web interface:
|
|
<a href="http://lists.dyne.org/mailman/listinfo/netsukuku">http://lists.dyne.org/mailman/listinfo/netsukuku</a></p>
|
|
|
|
<p>You can browse the archive here:
|
|
<a href="http://lists.dyne.org/netsukuku/">http://lists.dyne.org/netsukuku/</a>
|
|
<a href="http://dir.gmane.org/gmane.network.peer-to-peer.netsukuku">http://dir.gmane.org/gmane.network.peer-to-peer.netsukuku</a></p>
|
|
|
|
<blockquote>
|
|
<p>IRC</p>
|
|
</blockquote>
|
|
|
|
<p>We live night and day in IRC, come to see us on channel #netsukuku
|
|
on the FreeNode irc server (irc.freenode.org).</p>
|
|
|
|
<h2>
|
|
<a name="bug-report" class="anchor" href="#bug-report"><span class="octicon octicon-link"></span></a>Bug report</h2>
|
|
|
|
<p>{ Don't panic! }</p>
|
|
|
|
<p>If you encounter any bug, please report it.
|
|
Use the online bug track system:
|
|
<a href="http://bugs.dyne.org/">http://bugs.dyne.org/</a>
|
|
or the mailing list:
|
|
<a href="http://lists.dyne.org/netsukuku/">http://lists.dyne.org/netsukuku/</a>
|
|
and explain what the problem is and if possible a way to reproduce it.</p>
|
|
|
|
<h2>
|
|
<a name="hack-the-code" class="anchor" href="#hack-the-code"><span class="octicon octicon-link"></span></a>Hack the code</h2>
|
|
|
|
<p>Feel free to debug, patch, modify and eat the code. Then submit your results
|
|
to the mailing list ^_-</p>
|
|
|
|
<p>There is a lot to code too! If you are a Kung Foo coder, get on board and
|
|
help the development writing some nice poems. For a start you can take a look
|
|
at the src/TODO file.</p>
|
|
|
|
<h2>
|
|
<a name="license-and-that-kind-of-stuff" class="anchor" href="#license-and-that-kind-of-stuff"><span class="octicon octicon-link"></span></a>License and that kind of stuff...</h2>
|
|
|
|
<p>All the Netsukuku code is released under the GPL-2, please see the COPYING
|
|
file for more information.</p>
|
|
|
|
<p>The authors of Netsukuku and NetsukukuD are listed in the file AUTHORS.</p>
|
|
</section>
|
|
|
|
</div>
|
|
<!--[if !IE]><script>fixScale(document);</script><![endif]-->
|
|
|
|
</body>
|
|
</html>
|
|
>>>>>>> d3b9d856a2a0eb484b259023f404fa622875e08f
|