Configurar ipv6 en un host gnu/linux

Pues por fin! otra cosa de la todo list finiticada! y para que no se olvide y para compartir, os dejo los breves apuntes :)

Pues tenemos una maquina que es un contenedor openvz, ahora mismo tiene una ip pública (ipv4), pero queremos añadirle una ip global (ipv6). Dicha asignación la podemos hacer directamente en eth0 (lo curioso es que inicialmente la había definido en eth0:1 pero igualmente se ha definido en eth0).

# ifconfig eth0 2a00:1508:1000::6d45:938/64

Y para definir la ruta estática:

# ip route add default via 2a00:1508:1000::6d45:901


Para verificar que ha puesto la IP y el gateway correctamente, vamos a usar ifconfig y route -6 -n:

root@giss:~/scripts# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:18:51:e6:d6:47  
          inet addr:109.69.9.56  Bcast:109.69.9.63  Mask:255.255.255.240
          inet6 addr: 2a00:1508:1000::6d45:938/64 Scope:Global
          inet6 addr: fe80::218:51ff:fee6:d647/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:49591 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11422 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:5780231 (5.5 MiB)  TX bytes:1194368 (1.1 MiB)

root@giss:~/scripts# route -6 -n
Kernel IPv6 routing table
Destination                    Next Hop                   Flag Met Ref Use If
2a00:1508:1000::/64            ::                         U    256 0     1 eth0
fe80::/64                      ::                         U    256 0     0 eth0
fe80::/64                      ::                         U    256 0     0 eth1
::/0                           2a00:1508:1000::6d45:901   UG   1024 0    11 eth0
::/0                           ::                         !n   -1  1    15 lo
::1/128                        ::                         Un   0   1   277 lo
2a00:1508:1000::6d45:938/128   ::                         Un   0   1    10 lo
fe80::218:51ff:fe16:1617/128   ::                         Un   0   1     0 lo
fe80::218:51ff:fee6:d647/128   ::                         Un   0   1     5 lo
ff00::/8                       ::                         U    256 0     0 eth0
ff00::/8                       ::                         U    256 0     0 eth1
::/0                           ::                         !n   -1  1    15 lo
root@giss:~/scripts# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
109.69.9.48     0.0.0.0         255.255.255.240 U     0      0        0 eth0
10.138.15.128   0.0.0.0         255.255.255.224 U     0      0        0 eth1
10.0.0.0        10.138.15.129   255.0.0.0       UG    0      0        0 eth1
0.0.0.0         109.69.9.49     0.0.0.0         UG    0      0        0 eth0

Y para verificar que tenemos la ipv6 bien configurada usamos ping6

root@giss:~/scripts# ping6 guifi.net
PING guifi.net(2a00-1508--5.ip6.guifi.net) 56 data bytes
64 bytes from v6.guifi.net: icmp_seq=1 ttl=62 time=3.58 ms
64 bytes from 2a00-1508--5.ip6.guifi.net: icmp_seq=2 ttl=62 time=3.94 ms
64 bytes from v6.guifi.net: icmp_seq=3 ttl=62 time=3.96 ms
^C
--- guifi.net ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 3.588/3.831/3.963/0.179 ms

Para hacer ping a ipv4, sería con ping de toda la vida :)

root@giss:~/scripts# ping guifi.net
PING guifi.net (109.69.8.5) 56(84) bytes of data.
64 bytes from 109-69-8-5-guifi-bcnzf.ip4.guifi.net (109.69.8.5): icmp_req=1 ttl=62 time=3.54 ms
64 bytes from 109-69-8-5-guifi-bcnzf.ip4.guifi.net (109.69.8.5): icmp_req=2 ttl=62 time=3.48 ms
^C
--- guifi.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 3.485/3.517/3.549/0.032 ms

Luego si queremos definir la ipv6 de forma permanente editaremos el fichero /etc/network/interfaces

auto lo eth0
iface lo inet loopback
iface eth0 inet static
        address 109.69.9.56
        netmask 255.255.255.240
        gateway 109.69.9.49

iface eth0 inet6 static
        address 2a00:1508:1000::6d45:938
        netmask 64
        up ip r add default via 2a00:1508:1000::6d45:901 dev eth0

Y esto es todo, muchas gracias a Locke! :)

5 Comments

  1. Pregunta tonta… ¿como sabes que IPv6 le asignas al dispositivo?

    Respon
    • Puedes agregar cualquier ipv6 a tu gusto, pero si va ser dentro de tu misma red lo mejor seria que comience con el prefijo FE80 ya son de alcance local. Tambien podrias probrar con las que comienzan con FD ya que son dirreciones unicas y son el equivalente a las direcciones privdadas de ipv4.

      Respon
  2. Pingback: Configuració d’un Sistema Operatiu | Blog Alex Gavilan Barrionuevo

  3. me quedo sin internet igual no puedo poner la ip estatica en debian con un unternet dhcp

    Respon
  4. con debian 8 el network manager da problemas, al pasar a debian 9 todo perfecto… para que te funcione ipv6 tienes que decirle a network-manager que sea el sistema quien gestione IPv6 y coja la IP global por RA (router advertisment).
    En IPv6 no se usa DHCP (aunque si existe), se usa RA.

    Respon

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *

Aquest lloc utilitza Akismet per reduir el correu brossa. Aprendre com la informació del vostre comentari és processada