IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Veure IPv6

Introducció

L'IPv6 és la versió 6 del protocol ip.

La versió 5 va existir, però com a protocol experimental i es va abandonar.

L'IPv6 està pensat per succeïr l'IPv4. Al principi els dos coexistiran, però a la llarga la versió 4 desapareixerà.

La IANA és l'organització que s'encarrega d'assignar IP. Per a aconseguir-ho, hi ha diferents organitzacions per sectors a nivell mundial, les RIR (Region Internet Registries). Les IP es van acabar el dia 3/2/2012.

Rirjoel1.png

Per què IPv6?

A més de les IP, també s'estan acabant les subxarxes.

Cada vegada que se sol·liciten noves IP, les taules de rutes dels routers de la xarxa augmenten, i necessiten més consum de memòria i de processament.

Característiques

  • IPv6 suporta 340.282.366.920.938.463.463.374.607.431.768.211.456 (2128 o 340 sextilions) d'adreces. Aquest nombre pot representar-se també com 1632, amb 32 dígits hexadecimals, cadascun dels quals pot prendre 16 valors possibles. Això són 4,8 x 1028 IP per cada persona del planeta Terra.
  • Cada dispositiu tindrà una IP pública, per tant, desapareixeran les IP privades i el NAT.

prefix (IPv6) = ruta (IPv4)

Format de les adreces

Si mantinguessim el format actual, les IP tindrien 16 octets (xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx.xxxx).

Per això, s'utilitza la notació hexadecimal.

Exemple d'adreça vàlida:

2001:0db8:85a3:08d3:1319:8a2e:0370:7334
$ sipcalc 2001:0db8:85a3:08d3:1319:8a2e:0370:7334
-[ipv6 : 2001:0db8:85a3:08d3:1319:8a2e:0370:7334] - 0

[IPV6 INFO]
Expanded Address	- 2001:0db8:85a3:08d3:1319:8a2e:0370:7334
Compressed address	- 2001:db8:85a3:8d3:1319:8a2e:370:7334
Subnet prefix (masked)	- 2001:db8:85a3:8d3:1319:8a2e:370:7334/128
Address ID (masked)	- 0:0:0:0:0:0:0:0/128
Prefix address		- ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
Prefix length		- 128
Address type		- Aggregatable Global Unicast Addresses
Network range		- 2001:0db8:85a3:08d3:1319:8a2e:0370:7334 -
			  2001:0db8:85a3:08d3:1319:8a2e:0370:7334

Si una adreça té un conjunt d'octets buit (0000), es port obviar. Per exemple:

2001:0db8:85a3:08d3:'0000':8a2e:0370:7334

És el mateix que:

2001:0db8:85a3:08d3::8a2e:0370:7334

Això es pot fer si hi ha 1, 2, 3 o els octets que siguin consecutius plens de zeros:

 2001:0db8:85a3:08d3:0000:0000:0000:7334

seria correcte:

 2001:0db8:85a3:08d3::7334

Però no es pot fer si hi ha conjunts de zeros per dues bandes:

 2001:0db8:85a3:0000:1319:8a2e:0000:7334

no seria correcte:

 2001:0db8:85a3::1319:8a2e::7334

Tipus d'adreces

Hi ha 3 tipus d'adreces IP segons el seu abast:

  • link-local: és l'equivalent al loopback de l'IPv4 (adreces del tipus 127.0.0.1).
  • site-local: són per a un rang de xarxa controlat.
  • global: adreces accessibles des de tota la xarxa, passant per diferents màquines, però sense NAT.

Hi ha adreces de tipus 'unicast, però no hi ha BROADCAST. També hi ha anycast i multicast.

  • Unicast: un origen, un receptor.
  • Anycast: un origen, diferents possibles receptors, un sol receptor definitiu.
  • Multicast: un origen, diferents receptors.

Unique local address

És l'equivalent a les xarxes privades de l'IPv4.

El prefix és el següent:

fc00::/7
$ sipcalc fc00::/7
-[ipv6 : fc00::/7] - 0

[IPV6 INFO]
Expanded Address	- fc00:0000:0000:0000:0000:0000:0000:0000
Compressed address	- fc00::
Subnet prefix (masked)	- fc00:0:0:0:0:0:0:0/7
Address ID (masked)	- 0:0:0:0:0:0:0:0/7
Prefix address		- fe00:0:0:0:0:0:0:0
Prefix length		- 7
Address type		- Unassigned
Network range		- fc00:0000:0000:0000:0000:0000:0000:0000 -
			  fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff

Per calcular aquesta adreça IPv6 des d'una IPv4, s'utilitza la MAC de la targeta de xarxa.

Connectar IPv4 amb IPv6

Per comunicar-nos amb IPv6 des de IPv4, entrem a la pàgina web http://tunnelbroker.net/ i ens registrem.

A continuació ens dirigim a l'apartat Create Regular Tunnel.

Per fer el tunel, hem d'introduir les següents comandes a la terminal:

ifconfig sit0 up
ifconfig sit0 inet6 tunnel ::216.66.80.26
ifconfig sit1 up
ifconfig sit1 inet6 add 2001:470:1f08:832::2/64
route -A inet6 add ::/0 dev sit1

Versió per route2:

modprobe ipv6
ip tunnel add he-ipv6 mode sit remote 216.66.80.26 local 185.13.76.222 ttl 255
ip link set he-ipv6 up
ip addr add 2001:470:1f08:832::2/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr

Quan tinguem la configuració feta, si entrem a la pàgina http://ipv6-test.com/ podem veure que estem connectats mitjançant IPv6:

Ipv6tuneljoel1.png

Podem comprovar la connexió fent un ping a google mitjançant l'eina ping6 de la terminal:

$ ping6 ipv6.google.com
PING ipv6.google.com(muc03s08-in-x14.1e100.net) 56 data bytes
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=1 ttl=55 time=65.7 ms
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=2 ttl=55 time=68.0 ms
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=3 ttl=55 time=65.0 ms
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=4 ttl=55 time=86.7 ms
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=5 ttl=55 time=65.2 ms
64 bytes from muc03s08-in-x14.1e100.net: icmp_seq=6 ttl=55 time=62.5 ms

--- ipv6.google.com ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7000ms
rtt min/avg/max/mdev = 62.521/69.176/86.766/7.105 ms

Comprovem les IP amb l'eina ip address list:

$ ip address list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:30:05:eb:3e:73 brd ff:ff:ff:ff:ff:ff
    inet 192.168.204.112/24 brd 192.168.204.255 scope global eth1
    inet6 fe80::230:5ff:feeb:3e73/64 scope link 
       valid_lft forever preferred_lft forever
4: sit0: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN 
    link/sit 0.0.0.0 brd 0.0.0.0
    inet6 ::192.168.204.112/96 scope global 
       valid_lft forever preferred_lft forever
    inet6 ::127.0.0.1/96 scope host 
       valid_lft forever preferred_lft forever
5: sit1: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN 
    link/sit 0.0.0.0 peer 216.66.80.26
    inet6 2001:470:1f08:832::2/64 scope global 
      valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:cc70/64 scope link  
      valid_lft forever preferred_lft forever

Pràctica: ping a un company transformant IPv4 a IPv6

  • Fem ping al company:
ping 192.168.204.116
PING 192.168.204.116 (192.168.204.116) 56(84) bytes of data.
64 bytes from 192.168.204.116: icmp_req=1 ttl=64 time=2.02 ms
64 bytes from 192.168.204.116: icmp_req=2 ttl=64 time=0.142 ms

--- 192.168.204.116 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.142/1.082/2.023/0.941 ms
  • Consultem la llista ARP:
arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.204.250          ether   68:a3:c4:f8:e9:1c   C                     eth1
192.168.204.1            ether   d4:ca:6d:20:8f:7f   C                     eth1
192.168.204.116          ether   00:30:05:eb:38:28   C                     eth1
192.168.204.115          ether   00:30:05:eb:37:f4   C                     eth1
00:30:05:eb:38:28 resulting IPv6 address: fe80::230:05ff:feeb:3828
  • Fem ping:
$ ping6 fe80::230:05ff:feeb:3828
connect: Invalid argument

(No funciona)

Encaminadors IPv6

No existeix en IPv6 el protocol ARP. La relació de MAC i IP es fa automàticament.

NDP

NDP significa Network Discovery Protocol (Protocol de descobriment de xarxes).

És un protocol nou que només es pot utilitzar en xarxes IPv6. Treballa en la capa d'enllaç (capa 2), però no substitueix Ethernet.

S'encarrega de:

  • Configurar adreces de xarxa IPv6 de nodes de forma automàtica (address autoconfiguration).
  • Descobrir altres nodes de la capa d'enllaç mitjançant grups multicast especials.
  • Determinar les adreces dels inodes que es troben a un sol salt.
  • Detecta la duplicació d'adreces.
  • Descobrir els routers i els Domain Name System (DNS) servers.
  • Address prefix discovery.
  • Informació de l'estat dels veïns (reachables o unreachables).

Un node és qualsevol dispositiu que implementa IPv6. Pot ser router o host.