una panorámica a los mecanismos de transición · esta charla • decenas de mecanismos de...
TRANSCRIPT
Febrero de 2004 Una panorámica de los mecanismos de transición
1
www.6sos.org
Una panorámica de los mecanismos de transiciónJavier Sedano, [email protected]
David Fernández, [email protected] de 2004
Este proyecto ha sidocofinanciado por PROFIT
Febrero de 2004 Una panorámica de los mecanismos de transición
2
www.6sos.org
Índice
• Introducción
• Doble pila
• Túneles
• Traducción
• Conclusiones
Febrero de 2004 Una panorámica de los mecanismos de transición
3
www.6sos.org
Introducción. Motivación
• IPv6 no es compatible hacia atrás No actualizar a IPv6, sino cambiar a IPv6
• Necesidades:– Internet no puede parar No “día D”– Internet es grande y heterogenea Cambio no
centralizado– Interoperabilidad v4-v6 mandatoria
• IPv6 diseñado pensando en la transición– IPv6 es evolución, no revolución
Transición
Febrero de 2004 Una panorámica de los mecanismos de transición
4
www.6sos.org
Introducción. Esta charla
• Decenas de mecanismos de transición– Unos pocos “supervivientes”, usados extensivamente– Muchas soluciones experimentales y para nichos
específicos
• Sólo veremos un repaso a los más usados
Febrero de 2004 Una panorámica de los mecanismos de transición
5
www.6sos.org
Introducción. Otras charlas
• Introducción a IPv6. David Fernández
• Porte de aplicaciones. Eva Castro
• Experiencias de transición. Eduardo Jacob, Jordi Palet.
Febrero de 2004 Una panorámica de los mecanismos de transición
6
www.6sos.org
Índice
• Introducción
• Doble pila
• Túneles
• Traducción
• Conclusiones
Febrero de 2004 Una panorámica de los mecanismos de transición
7
www.6sos.org
Doble pila (Dual stack)
• En realidad, doble nivel 3• Direcciones IPv4 e IPv6 a la
vez; el DNS conoce ambas• Solución ideal:
no hay transición ;-)• La aplicación debe saber que
hay doble pila:– Clientes: usar A o A6/AAAA?
connect() a la dirección v4 o la v6?
– Servidores: bind() en “0.0.0.0” y en “::”
Porte de aplicaciones, de Eva Castro
IPv4IPv4 IPv6IPv6
SubredSubred
TCPTCP UDPUDP
AplicacionesAplicaciones DNSDNSDNSresolver
0x08000x0800 0x86dd0x86dd
Febrero de 2004 Una panorámica de los mecanismos de transición
8
www.6sos.org
Doble pila. Ejemplo
jsedano@taran:~$ ifconfigeth0 Link encap:Ethernet HWaddr 00:08:74:E6:80:89
inet addr:192.168.0.55 Bcast:192.168.0.255 Mask:255.255.255.0inet6 addr: fe80::208:74ff:fee6:8089/10 Scope:Linkinet6 addr: 2001:3:2:1::a/64 Scope:GlobalUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:6 errors:0 dropped:0 overruns:0 carrier:6collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:444 (444.0 b)Interrupt:11 Base address:0xec80
lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:16436 Metric:1RX packets:66989 errors:0 dropped:0 overruns:0 frame:0TX packets:66989 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0 RX bytes:25335759 (24.1 MiB) TX bytes:25335759 (24.1 MiB)
jsedano@taran:~$
Febrero de 2004 Una panorámica de los mecanismos de transición
9
www.6sos.org
Índice
• Introducción
• Doble pila
• Túneles
• Traducción
• Conclusiones
• Túneles configurados• Túneles automáticos• Túneles 6to4• Otros• 6bone/m6bone
Febrero de 2004 Una panorámica de los mecanismos de transición
10
www.6sos.org
Túneles. Túneles configurados
• Túneles usados extensivamente: mbone, multiprotocolo (IPX, Appletalk) sobre IP, MIP,…
• RFC 2893: túneles IPv6 en IPv4
SubredSubred
IPv4IPv4
IPv6IPv6
Datos
Datos
Datos
V6 dst
V4 dst
V6 src
V6 dst V6 srcV4 src
DatosV4 dst V6 dst V6 srcV4 srcSubred
Febrero de 2004 Una panorámica de los mecanismos de transición
11
www.6sos.org
Túneles. Túneles configurados
jsedano@taran:~$ ip addr[…]7: myTunnel@NONE: <POINTOPOINT,NOARP,UP> mtu 1480 qdisc noqueue
link/ipip 10.1.2.3 peer 192.168.6.5inet6 2001:1:b:c::5/126 scope global
[…]jsedano@taran:~$
Dirección IPv4 A (10.1.2.3)Dirección IPv4 B (192.168.6.5)Concepto de túnel
Pseudo enlace punto-a-punto
IPv6 sobre ese enlace
• Tunnel broker: proveedor de túneles
Febrero de 2004 Una panorámica de los mecanismos de transición
12
www.6sos.org
Túneles. Túneles configurados
4
90’s 2004
6 6
6 6
6
4
44
2005? 2010?
6
2020? 2100? Nunca?
6in4
4in6
Febrero de 2004 Una panorámica de los mecanismos de transición
13
www.6sos.org
Túneles. Túneles automáticos
• Direcciones ::x.y.z.t (siendo x.y.z.t una dirección IPv4)• Cuando una máquina con túneles automáticos de un datagrama
dirigido a ::x.y.z.t, lo tunela y lo envía a x.y.z.t por IPv4.• No solo entre hosts, también con routers.• Cuidado: de un solo sentido
IPv4
2001:a::b::1.2.3.4
9.8.7.61.2.3.4
2001:a::b::1.2.3.4
AplicaciónIPv6
2001:a::b::1.2.3.49.8.7.61.2.3.4
Febrero de 2004 Una panorámica de los mecanismos de transición
14
www.6sos.org
Túneles. Túneles 6to4
• Direcciones 6to4 2002:mnop:qrst::/48 (mnop:qrst es una dirección IPv4 en hexadecimal)
• Cuando una máquina con túneles 6to4 activados ve un datagrama para 2002:mnop:qrst::/48, lo encapsula y envía a mn.op.qr.st por IPv4
• 1 dirección IPv4 ¡216 direcciones IPv6 gratuitas!• Cuidado: de un solo sentido
IPv4
2001:a::b2002:6F02:0304:6::5
9.8.7.6111.2.3.4
2002:6F02:0304:2::/64
2001:a::b2002:6F02:0304:6::59.8.7.6111.2.3.4
::5Aplicación
IPv6
2001:a::b2002:6F02:0304:6::5
2002:6F02:0304:6::/64
2002:6F02:0304::/48111.2.3.4 ↔ 6F02:0304
Febrero de 2004 Una panorámica de los mecanismos de transición
15
www.6sos.org
Túneles. 6to4 + automáticos
111.222.3.3Red IPv6 Backbone IPv4 Mundo
IPv6
6.6.6.62002:6FDE:0303:4::100
Router de acceso/transición:•6to4 activado: cabeza de 2002:6FDE:0303::/48•Túneles automáticos activados: ruta por defecto a ::6.6.6.6
(6.6.6.6 es su proveedor de túneles)
Túneles automáticos
Túneles 6to4
Febrero de 2004 Una panorámica de los mecanismos de transición
16
www.6sos.org
Túneles. Otros
• 6over4: IPv6 sobre una red IPv4 con multicast
• DSTM: 4in6 en la intranet, con un TEP (Tunnel EndPoint, Punto Final del Túnel) conocido.
• TEREDO: IPv6 sobre UDP, para atravesar los NATs.
• ISATAP: túneles 6in4 automáticos en la intranet con prefijos asignados por el administrador.
Febrero de 2004 Una panorámica de los mecanismos de transición
17
www.6sos.org
Túneles. 6bone y m6bone
Outdated
6bone:• Red de investigación• Túneles 6in4 y otros• Validación de IPv6,
aplicaciones, mecanismos, protocolos,…
• http://www.6bone.netm6bone:• Túneles 6in4 y 6in6, algunos
enlaces nativos• Experimentos con multicast
IPv6
Febrero de 2004 Una panorámica de los mecanismos de transición
18
www.6sos.org
Índice
• Introducción
• Doble pila
• Túneles
• Traducción
• Conclusiones
• SIIT• Application Level Gateway• NAT-PT• TRT• Otros
Febrero de 2004 Una panorámica de los mecanismos de transición
19
www.6sos.org
Traducción. SIIT
• IPv6 es evolución, no revolución:– Misma filosofía– Muchos campos similares
• La traducción es posible y tiene sentido
• SIIT: Stateles IP/ICMP Translator, Traductor IP/ICMP sin estado– Marco de referencia para otros traductores
Febrero de 2004 Una panorámica de los mecanismos de transición
20
www.6sos.org
Traducción. SIIT
Ver. 4 H.L. TOS Total lengthIdentification Flags Fragment offset
TTL Protocol Header checksumDestination address
Source address
Ver. 6 Tr. class Flow labelPayload length Next header Hop limit
Destination address
Source address
0000 0000 0000 0000 0000
Fragmentation options
?
ICMP•Reglas de traducción similares•Traducir el datagrama IPcontenido también
Limitaciones:•IPv4 a IPv6
¿Fragmentación?•IPv6 to IPv4¿Cabeceras de extensión?
•¿Direcciones?
Febrero de 2004 Una panorámica de los mecanismos de transición
21
www.6sos.org
Traducción. NAT-PT
NAT IPv4 clásico
NAT10.0.0.5
9.8.7.6
9.8.7.6:80 10.0.0.5:20001.2.3.410.0.0.1 9.8.7.6:80 1.2.3.4:3000
1.2.3.4:3000 9.8.7.6:8010.0.0.5:2000 9.8.7.6:80
Tabla de NATSa Sp Na Np Da Dp10.0.0.5 2000 1.2.3.4 3000 9.8.7.6 8010.0.0.5 2001 1.2.3.4 3001 9.8.7.6 666710.0.0.6 1500 1.2.3.4 3002 9.9.9.9 8010.0.0.6 1501 1.2.3.4 3003 8.8.8.8 80
Febrero de 2004 Una panorámica de los mecanismos de transición
22
www.6sos.org
Traducción. NAT-PT
NAT-PT simple de IPv6 a IPv4
NAPT2001:a::5 9.8.7.6
::ffff:9.8.7.6,80 2001:a::5,20001.2.3.42001:a::1 9.8.7.6:80 1.2.3.4:3000
1.2.3.4:3000 9.8.7.6:802001:a::5,2000 ::ffff:9.8.7.6,80
Tabla NAT-PTSa Sp Na Np Da Dp2001:a::5 2000 1.2.3.4 3000 9.8.7.6 802001:a::5 2001 1.2.3.4 3001 9.8.7.6 66672001:b::6 1500 1.2.3.4 3002 9.9.9.9 802001:b::6 1501 1.2.3.4 3003 8.8.8.8 80
??!!
¿::ffff:9.8.7.6?El sistema de DNS debe ayudar, generando ::ffff:9.8.7.6 a partir de www.cosa.org (9.8.7.6)(DNS-ALG)
Febrero de 2004 Una panorámica de los mecanismos de transición
23
www.6sos.org
Traducción. NAT-PT
Cuatro situaciones
v6site
v4world v4
site
v6world
NAT-PT sencillo automático de IPv4 a IPv6NAT-PT sencillo automático de IPv6 a IPv4
v6site
v4world v4
site
v6world
Regla explícita de v4 a v6
o dinámico, con traducción en DNS
Regla explícita de v6 a v4
o dinámico, con traducción en DNS
Febrero de 2004 Una panorámica de los mecanismos de transición
24
www.6sos.org
Traducción. NAT-PT
• Mismos problemas que NAT en IPv4
– Punto único de fallo
– ¿Problemas de escalabilidad?
– Cuidado con los protocolos que no atraviesan NATs.
Febrero de 2004 Una panorámica de los mecanismos de transición
25
www.6sos.org
Traducción. TRT
• El cliente conecta a ::ffff:9.8.7.6,80• TRT acepta la conexión y crea una nueva conexión a 9.8.7.6:80• ¿Conexión UDP? ;-)• Reglas explicitas para servidores detrás del TRT
TRT2001:a::5 9.8.7.6
::ffff:9.8.7.6,80 2001:a::5,20001.2.3.42001:a::1 9.8.7.6:80 1.2.3.4:3000
1.2.3.4:3000 9.8.7.6:802001:a::5,2000 ::ffff:9.8.7.6,80
??!!
Febrero de 2004 Una panorámica de los mecanismos de transición
26
www.6sos.org
Traducción. NAT ↔ TRT
Subred
IPv4
TCP/UDP
Subred
IPv6
TCP/UDP
NAT-PT
Subred
IPv6
TCP/UDP
Subred
IPv4
TCP/UDP
TRT
Subred
IPv6
TCP/UDPNAPT-PT
Subred
IPv4
TCP/UDP
Febrero de 2004 Una panorámica de los mecanismos de transición
27
www.6sos.org
Traducción. TRT
• Mismos problemas que NAT-PT
– Punto único de fallo
– ¿Problemas de escalabilidad?
– No válido para todos los protocolos.
Febrero de 2004 Una panorámica de los mecanismos de transición
28
www.6sos.org
ALG
• Application Level Gateway
• Traducción a nivel de aplicación, para:– Traducción en protocolos que transportan direcciones en
nivel 5 (FTP, H323,…)– Ayuda a otros mecanismos (DNS-ALG)
Febrero de 2004 Una panorámica de los mecanismos de transición
29
www.6sos.org
Traducción. Otros
• BIA (Bump In the API, atacar el API):– Capa traductora en el nivel 4.5, para engañar al interfaz socket()– Requiere acciones en el resolver para usar direcciones temporales
• BIS (Bump In the Stack, atacar la pila):– Capa traductora en el nivel 2.5, para engañar a las de arriba– Requiere acciones en el resolver para usar direcciones temporales
• mBIS (multicast BIS)• Socks64:
– Si la aplicación usa Socks, poner un servidor de Socks con doble pila.
Febrero de 2004 Una panorámica de los mecanismos de transición
30
www.6sos.org
Índice
• Introducción
• Doble pila
• Túneles
• Traducción
• Conclusiones
Febrero de 2004 Una panorámica de los mecanismos de transición
31
www.6sos.org
Conclusiones. Elección
• Implicaciones en las aplicaciones
• Número de direcciones IPv4 requeridas
• Mecanismo para cada terminal o para toda la red corporativa
• Escalabilidad
Febrero de 2004 Una panorámica de los mecanismos de transición
32
www.6sos.org
Conclusiones
• Decenas de mecanismos de transición(unos cuantos mecanismos generales)
• La transición es posible:– Despliegue incremental– Interoperabilidad v4 – v6– Soluciones escalables
• Cuidado: no descuidar el porte de aplicaciones
• Atended también:– Porte de aplicaciones. Eva castro– Experiencias de transición. Eduardo Jacob, Jordi Palet
www.6sos.org
Una panorámica a losmecanismos de transición
Javier Sedano ([email protected])David Fernández ([email protected])
Desplegando IPv6Febrero de 2004