Tuesday, November 30, 2010

First things first

I thought that the first thing that I have to make clear (to the reader and to myself) is: what do I want to achieve in this deploy? That is, what features this network has to have to be considered a success?

No need to say that all the nodes have to be reachable by any of the nodes.

This netsukuku deploy will be, no doubt, a very temporary and experimental network, very prone to go down or to be unusable in unpredictable moments and for unpredictable periods of time.
Nevertheless, I want to be able to access the Internet from (at least) some of the nodes of the network.
The first effect of this requirement, since the so called "net-split" mechanism is not implemented in pyntk, is that I am going to use the so called "restricted mode". It means that the addresses of the nodes of the netsukuku network must not clash with public IPs on the Internet. We are going to use only addresses in the 10.0.0.0/8 class.
If the mechanisms of address assignment and migrations work as expected, though, we will have enough room for a long time (theoretically 16 millions nodes)

The choice of using this class will further allow me to *manually* assign a secondary private address (eg in the 192.168.0.0/16 class) to each of my own nodes, so that I will have a fallback mean of accessing them. These addresses will not clash with the addresses of the nodes of other people that will join the network. And yes, I have a positive confidence that this will eventually happen. ;)

The second effect of this requirement is that, since the Internet Gateway Sharing (IGS) mechanism is not yet implemented, I will need to use a surrogate of this. I am thinking to use some sort of web proxy or SOCKS server on the node that will be directly connected to the Internet. That will be made available only to my own nodes. (Sorry, no free Internet for now!)
Should I try a more powerful NAT solution, I envision that more problems will arise. Time will tell.

As a side note, and my very personal point of view, I tell you that a net-split mechanism (to enable the use of all IPv4 addresses instead of 10.0.0.0/8) will not be implemented very soon, and I am not much convinced of the advantages of net-split (as it currently is envisioned in netsukuku RFC) over restricted-mode.
On the other hand, an Internet Gateway Sharing mechanism will undoubtedly be implemented soon in pyntk, I think.

That's all for the moment. Next post will actually document something done.
I am still waiting for the WISP to connect my home to the Internet. This problem is going to slow my activities down a bit. Be prepared for a somewhat longer wait.

Thursday, November 25, 2010

The journey begins

This is the first post.

This journey begins with my move to a new house. I still have to arrange many things at home: I haven't got a TV yet, nor a washing machine.
From the start, I asked the electrician to provide ethernet cabling in the rooms, to the garage and to the roof. The aim is to have a server in the garage and, obviously, a wireless device on the floor roof.

At the same time that I am moving, we have a quite feature-complete implementation of the netsukuku daemon, so I thought that I could try and deploy a real network and document my activities, the issues, the work-arounds, the fine-working features, and so on.

Stay tuned!