Support IPV6 on XO: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 1: Line 1:
[[OLPC]] (One Laptop Per Child) is a major challenge, that involves not only a big investment in infrastructure, but also in the deployment of finding a good solution to connectivity. The aim of OLPC is that all the children are able to get access to the Internet.
[[One_Laptop_per_Child|OLPC]] (One Laptop Per Child) is a major challenge, that involves not only a big investment in infrastructure, but also in the deployment of finding a good solution to connectivity. The aim of [[One_Laptop_per_Child|OLPC]] is that all the children are able to get access to the Internet.


The [[XO]] has two ways to solve the connectivity, through wireless meshed networks and ad-hoc. To handle this, the XO have a physical interface (two antennas) and two logical interfaces:
The [[XO:_The_Children%27s_Machine|XO]] has two ways to solve the connectivity, through wireless meshed networks and ad-hoc. To handle this, the [[XO:_The_Children%27s_Machine|XO]] have a physical interface (two antennas) and two logical interfaces:


*[[eth0]] – ad-hoc network
* eth0 – ad-hoc network
* [[msh0]] – meshed network
* msh0 – meshed network


Due to the limitations of the current protocol ([[IPV4]]), is the need to implement [[IPV6]] in the XO.
Due to the limitations of the current protocol ([http://en.wikipedia.org/wiki/IPv4 IPv4]), is the need to implement [http://en.wikipedia.org/wiki/IPv6 IPv6] in the [[XO:_The_Children%27s_Machine|XO]].


==Implementation==
==Implementation==
Three of the main possible implementations of IPV6 in the XO are described below:
Three of the main possible implementations of [http://en.wikipedia.org/wiki/IPv6 IPv6] in the [[XO:_The_Children%27s_Machine|XO]] are described below:


===1. Manual Allocation===
===1. Manual Allocation===
Line 16: Line 16:
<pre>ip -6 addr add <IP Global>/<prefix> dev <interface></pre>
<pre>ip -6 addr add <IP Global>/<prefix> dev <interface></pre>


To run this command on the XO, the user must have root permissions.
To run this command on the [[XO:_The_Children%27s_Machine|XO]], the user must have root permissions.


===2. Automatic Allocation===
===2. Automatic Allocation===
To achieve this, a [[DHCPv6]] server must be configured (in any host) and each node of the network must be configured for the DHCPv6 client.
To achieve this, a [http://en.wikipedia.org/wiki/DHCPv6 DHCPv6] server must be configured (in any host) and each node of the network must be configured for the [http://en.wikipedia.org/wiki/DHCPv6 DHCPv6] client.
The DHCPv6 server must be configured with the range of IPs that will be available in the pool of address and prefix of the network.
The [http://en.wikipedia.org/wiki/DHCPv6 DHCPv6] server must be configured with the range of IPs that will be available in the pool of address and prefix of the network.
On the client, the server that it will “listen” must be configured as well as the network interface that it will use to connect to the DHCPv6 server.
On the client, the server that it will “listen” must be configured as well as the network interface that it will use to connect to the [http://en.wikipedia.org/wiki/DHCPv6 DHCPv6] server.


To perform this configuration, both the client and the server, the user must have root permissions.
To perform this configuration, both the client and the server, the user must have root permissions.


===3. Local IP Allocation===
===3. Local IP Allocation===
Two or more XO connected together, set up an ad-hoc network, which is automatically configured. The IP that is assigned in each node is known as: local link.
Two or more [[XO:_The_Children%27s_Machine|XO]] connected together, set up an ad-hoc network, which is automatically configured. The IP that is assigned in each node is known as: local link.


==Validation==
==Validation==
Line 38: Line 38:


==See also==
==See also==
*[http://en.wikipedia.org/wiki/Ipv6 Wikipedia IPV6]
*[http://en.wikipedia.org/wiki/Ipv6 Wikipedia IPv6]
*[http://en.wikipedia.org/wiki/Ipv4 Wikipedia IPv4]
*[http://en.wikipedia.org/wiki/DHCPv6 Wikipedia DHCPv6]
*[http://en.wikipedia.org/wiki/DHCPv6 Wikipedia DHCPv6]
*[[One_Laptop_per_Child|OLPC]]
*[[XO:_The_Children%27s_Machine|XO]]


==References==
==References==

Latest revision as of 03:03, 19 November 2008

OLPC (One Laptop Per Child) is a major challenge, that involves not only a big investment in infrastructure, but also in the deployment of finding a good solution to connectivity. The aim of OLPC is that all the children are able to get access to the Internet.

The XO has two ways to solve the connectivity, through wireless meshed networks and ad-hoc. To handle this, the XO have a physical interface (two antennas) and two logical interfaces:

  • eth0 – ad-hoc network
  • msh0 – meshed network

Due to the limitations of the current protocol (IPv4), is the need to implement IPv6 in the XO.

Implementation

Three of the main possible implementations of IPv6 in the XO are described below:

1. Manual Allocation

All the hosts should be awarded an IP within the same network. To do this, the command is:

ip -6 addr add <IP Global>/<prefix> dev <interface>

To run this command on the XO, the user must have root permissions.

2. Automatic Allocation

To achieve this, a DHCPv6 server must be configured (in any host) and each node of the network must be configured for the DHCPv6 client. The DHCPv6 server must be configured with the range of IPs that will be available in the pool of address and prefix of the network. On the client, the server that it will “listen” must be configured as well as the network interface that it will use to connect to the DHCPv6 server.

To perform this configuration, both the client and the server, the user must have root permissions.

3. Local IP Allocation

Two or more XO connected together, set up an ad-hoc network, which is automatically configured. The IP that is assigned in each node is known as: local link.

Validation

To validate these implementations, this command must be executed:

ping6 –I <interface> <ipDestiny>

A broadcast ping can be done to test the network:

ping6 –I <interface>  ff02::1

See also

References

Javier Cajal Espinos: "Aportes del protocolo IPv6 a los desafíos de las redes educativas inalámbricas" - Proyecto de fin de carrera Universidad Politécnica de Madrid (Setiembre de 2008)