IPv6 router guide/es

Configuración básica del núcleo
Cualquiera de los núcleos 2.6 disponibles en Gentoo tiene soporte para conexiones IPv6. La nueva pila USAGI para IPv6 está integrada en el núcleo desde la versión Linux 2.6.0.

Ahora estamos listos para entrar en el directorio de las fuentes del núcleo y comenzar con su configuración.

Probar el Soport IPv6
Después de activar las opciones recomendadas, recompile su núcleo y reinicie usando su nuevo núcleo con IPv6 activado.

Si todavía no ha instalado iproute2 instalado, le animamos a hacerlo ahora. iproute2 es una suite de configuración de red que contiene, el famoso sustituto de  ,  ,   y otros ...

Si IPv6 funciona, el dispositivo de bucle debería mostrar una dirección IPv6:

Antes de proseguir, asegúrese de añadir "ipv6" a su lista de variables USE en, de tal modo que las futuras instalaciones de paquetes incluyan soporte para IPv6.

Configuración Básica
La mayoría de los proveedores de Internet todavía no ofrecen conexiones IPv6 de modo nativo. Para saltarse está limitación, existen varios "gestores de túneles" en todo el mundo que ofrecen gratuitamente túneles IPv6. Esto le permite hacer un túnel para todas las conexiones IPv6 a través de una conexión IPv4.

A continuación se muestran dos ejemplos de configuración de un túnel IPv6 con dos proveedores populares de Norteamérica: Hurricane Electric (también se aplica a túneles de sixxs.net sin protocolo heartbeat) y Freenet6.

Hurricane Electric
Hurricane Electric (HE de forma abreviada) ofrece túneles IPv6 gratuitos y le ofrece un bloque /64 de direcciones. También permite configurar un DNS inverso. Para conseguir un túnel de HE vaya a http://www.tunnelbroker.net/ y rellene el formulario de una página.

Una vez el túnel se haya aprobado, y el hayan asignado un bloque /64, puede configurar su sistema Gentoo. HE proporciona configuraciones de ejemplo basadas en las utilidades ifconfig e iproute. Los dos ejemplos siguientes asumen que tiene la siguiente configuración:

Para utilizar el paquete iproute2 y la orden, haríamos lo siguiente:

Crear un túnel entre la IPv4 local (eth0) y la dirección IPv4 remota de HE:

Extraer la carga del túnel desde la MTU:

Activar el túnel:

Asignarle la dirección IPv6:

Enrutar todas las direcciones IPv6 globales de envío a un solo receptor (unicast) a través de nuestro dispositivo túnel 'sixbone':

Freenet6
Freenet6 es otro proveedor de túneles gratuito. El registro opcional solo requiere un nombre de usuario y una dirección de correo electrónico válida. Han elegido realizar la gestión del túnel mediante una configuración cliente/servidor creando el cliente. Este cliente está disponible en Portage. Para instalarlo haga:

Ahora, si elige conectarse con autenticación, necesitará configurar  editando. Solamente debería cambiar los campos "userid" y "passwd" para que concuerden con los asignados por Freenet6, además de cambiar el servidor que actúa como puerta de enlace. A continuación se muestra un ejemplo de fichero configuración.

Ejemplo de fichero gw6c.conf

Probar su Conexión
Now that your tunnel is configured, you can test your connection. The easiest way to do this is to use the  utility and try to ping an IPv6 host.

Further work is currently in progress to add better IPv6 support to the network init scripts. If you'd like to know the status of this and/or help out, email.

Re-emerging packages
Unless you had USE="ipv6" in your previously, you probably need to re-emerge a bunch of packages to compile in IPv6 support for them. To get a list of all the installed packages which are affected by USE flag changes, use Portage's   option:

If you have changed a lot of USE flags, the list could be quite long. It's suggested to keep your system up-to-date, so it won't hurt if you recompile all affected packages.

IPv6 Specific Packages
There are a few packages which specifically deal with IPv6 items. Most of these are located in.

IPv6 and DNS
Just as DNS for IPv4 uses A records, DNS for IPv6 uses AAAA records. (This is because IPv4 is an address space of 2^32 while IPv6 is an address space of 2^128). For reverse DNS, the INT standard is deprecated but still widely supported. ARPA is the latest standard. Support for the ARPA format will be described here.

BIND configuration
Recent versions of BIND include excellent IPv6 support. This section will assume you have at least minimal knowledge about the configuration and use of BIND. We will assume you are not running bind in a chroot. If you are, simply append the chroot prefix to most of the paths in the following section.

First you need to add entries for both forward and reverse DNS zone files in.

named.conf entries

Now we must create those zone files and add entries for all of our hosts:

pri/ipv6-rules.com

pri/rev-ipv6-rules.com.arpa

DJBDNS configuration
There are currently some third-party patches to DJBDNS available at http://www.fefe.de/dns/ that allow it to do IPv6 nameserving. DJBDNS can be installed with these patches by emerging it with ipv6 in your USE variables.

After djbdns is installed, it can be setup by running  and answering a few questions about which IP addresses to bind to, where to install tinydns, etc.

Assuming we've installed  into , we can now edit. This file will contain all the data needed to get tinydns handling DNS for your IPv6 delegation.

sample data file

Lines prefixed with a  will have both an AAAA and a PTR record created. Those prefixed with a  will only have an AAAA record created. Besides manually editing the file, you can use the scripts   and   to add new entries. After changes are made to the file, you simply need to run   from. This will create, which tinydns will use as its source of information for DNS requests.

Configure routing
Further configuration is required if we want to use our system as a router for other clients wishing to connect to the outside world with IPv6. We need to enable forwarding of IPv6 packets. We can do this in one of two ways.

Or we set the value 1 in the forwarding pseudo-file:

Or we use the  command:

To enable forwarding at boot, you'll need to edit and add the following line.

sysctl.conf addition

Traffic should now be forwarded from this box through the tunnel we've established with our broker.

To assign IPv6 addresses to clients, the IPv6 specification allows for both stateless and stateful IP assignment. Stateless assignment uses a process called Router Advertisement and allows clients to obtain an IP and a default route by simply bringing an interface up. It is called "stateless" because there is no record of IPs assigned and the host they are assigned to. Stateful assignment is handled by DHCPv6. It is "stateful" because the server keeps a state of the clients who've requested IPs and received them.

Stateless Configuration
Stateless configuration is easily accomplished using the Router Advertisement Daemon, or.

After having emerged , we need to create  that contains information about what IP block to assign IPs from. Here is a sample file using the prefix we've been assigned from our tunnel broker.

Sample radvd.conf

Further information is available in. We can now start  and set it to start at boot.

Stateful Configuration
If you'd like to have stateful configuration, you'll need to install and configure.

Now we must configure the dibbler client by editing.

Sample dibbler client configuration

We can now start the dibbler client, and configure it to start at boot.

Using radvd
Clients behind this router should now be able to connect to the rest of the net via IPv6. If using radvd, configuring hosts should be as easy as bringing the interface up. (This is probably already done by your net.ethX init scripts).

Other Resources
There are many excellent resources online pertaining to IPv6.

On IRC, you can try  on Freenode. You can connect to the Freenode servers using an IPv6 enabled client by connecting to irc.ipv6.freenode.net.

Agradecimientos
Nos gustaría dar las gracias a los siguientes autores y editores por sus contribuciones a esta guía:


 * Peter Johanson
 * Jorge Paulo
 * Sven Vermeulen
 * Camille Huot
 * Pasi Valminen
 * nightmorph
 * hwoarang