README.rst 2.85 KB


Resilient, Scalable, IPv6 Network application

Contact: Julien Muchembled <>


re6stnet creates a resilient, scalable, ipv6 network on top of an existing ipv4 network, by creating tunnels on the fly, and then routing targeted traffic through these tunnels.

re6stnet can be used to:

  • guarantee connectedness between computers connected to the internet, for which there exists a working route (in case the direct route isn't available).
  • create large networks
  • give ipv6 addresses to machines with only ipv4 available

Building an ipv4 network is also supported if you have software that does not support ipv6.


A re6stnet network consists of at least one server (re6st-registry) and many nodes (re6stnet). The server is only used to deliver certificates for secure authentication in establishing tunnels, and to bootstrap new nodes. re6stnet can detect and take into account nodes present on the local network.


re6stnet guarantees that if there exists a route between two machines, traffic will be correctly routed between these two machines. Even if the registry node is down, the probability that the network isn't connected is very low for big enough networks (more than a hundred nodes).


Since nodes don't need to know the whole graph of the network, re6stnet is easily scalable to tens of thousand of nodes.


  • Python 2.6 or 2.7
  • OpenSSL binary and development libraries
  • OpenVPN >= 2.3
  • Babel (with Nexedi patches)
  • python-miniupnpc for UPnP support (optional)
  • for the demo: miniupnpd, Graphviz, Screen, Nemu

See also for Python dependencies.


Official packaging is implemented at
and packages are built for many Linux distributions at
re6stnet is also distributed as a Python egg:



See re6stnet(8) man page.