[lacnog] [Lista ArNOG] Renumeración en IPv6 (Fwd: Document Action: 'Reaction of Stateless Address Autoconfiguration (SLAAC) to Flash- Renumbering Events' to Informational RFC (draft-ietf-v6ops-slaac-renum-05.txt))
Fernando Gont
fgont en si6networks.com
Mar Dic 15 20:24:33 -03 2020
Hola, Nico,
Entre lineas....
On 15/12/20 13:04, Nicolas Antoniello wrote:
> Hola Fernando,
>
> Tengo algunas consultas para vos al respecto... a ver si puedes
> arrojar un poco más de luz sobre este tema pues justamente en mi caso,
> el hecho de que mi proveedor de acceso a Internet mantiene la política
> de rotar los prefijos IPv4 e IPv6 asignados cada 12 horas, hace que
> los dispositivos de mi red doméstica mantengan una lista bastante
> larga y nociva de direcciones IPv6... que terminó por obligarme a
> deshabilitar IPv6 (sip, así de dura es la realidad, jejeje).
No me sorprende. De hecho, los datos de una encuesta hecha sobre el tema
indico que al menos un 30% de los proveedores utilizan prefijos
dinamicos, así como vos lo comentás.
> Incluso supongamos un escenario un poco más simple que es que el
> router doméstico palme (término utilizado en Uruguay para indicar que
> deja de funcionar repentinamente)... cuando reinicia, es muy probable
> que sea imposible que conozca cuáles eran los prefijos anteriores para
> transmitirlos con un TTL 0 o algo similar... por lo que los
> dispositivos (en especial todos esos pequeños dispositivos IoT) siguen
> aumentando su lista de prefijos IPv6 válidos y que no rutean a ningún
> lado.
Exacto. En principio hay solo dos formas en la cuales tu router hogareño
podrñia saber eso:
1) Que guarde los prefijos delegados en almacenamiento estable (junto a
un timestamp), y entonces al reiniciarse pueda "aprender" cual es el
prefijo anteriormente utilizado.
2) QUe al renumerar, tu ISP le pase por DHCPv6-PD, dos prefijos: el
prefijo nuevo con un lifetime != 0, y el prefijo viejo con un lifetime de 0.
Lamentablemente, ninguna de las dos cosas suceden en la practica, por lo
cual los dispositivos no se enteran.
Y hay una cuestión más: así y todo el router anunciara el prefijo viejo
con un lifetime de 0, la especificacion actual de Neighbor Discovery
(RFC4861) impide que los host reduzcan el lifetime de los prefijos a
menos de dos horas -- lo cual es una tontera, tambien. Esta es otra
modificación que nuestro documento
https://tools.ietf.org/html/draft-ietf-6man-slaac-renum hace/propone.
Dicho documento se está trabajando en 6man, ya que contiene
modificaciones al protocolo en si.
> Entonces, no sería bueno modificar el comportamiento estándar por
> defecto del cliente para que cuando reciba un prefijo IPv6 nuevo,
> automáticamente elimine todos los anteriores? esto podría ser
> modificado por configuración del usuario... pero yo hablo de que por
> defecto asi sea.
Tenés completa razón, y de hecho es lo que nosotros propusimos en 6man
en la sección 4.5 de este documento:
https://tools.ietf.org/html/draft-gont-6man-slaac-renum-08#page-11 (el
mencionado mas arriba)
La cuestión ha sido demasiado trabajosa. Empezando porque uno de los
co-chairs del grupo se negó durante meses a llamar a consenso para la
adopción del documento ("porque a el no le gustaba el documento"). Luego
de dicha adopción, la hostigación continuó pidiendonos a los autores
que, al adoptar el documento, eliminemos todo el texto (dejando solo los
titulos), y que fueramos agregando contenido a medida que continuara la
discusión. (ver todos los "TBD" en
https://tools.ietf.org/html/draft-ietf-6man-slaac-renum-00 ).
Asi y todo, y pesé a la oposición y trabas, estamos intentando hacer
progreso. Claro que sin la participación de la gente, todo se vuelve mas
dificil.
En torno a esta cuestión, se me ocurre mencionar algunos temas
miscelaneos, realacionados:
1) El hecho que hayas deshabilitado IPv6 es perfectamente entendible. La
realidad es que uno usa Internet con el fin de realizar determinadas
actividades (trabajo, ocio, o lo que fuera), y *no* con el objetivo de
utilizar un protocolo en particular. Cuando se encuentran problemas sin
soluciones obvias y directas, es logico que la solucion sea eliminar
aquello que trae problemas y, al final del dia, no afecta la actividad
que uno quiere realizar.
En ocasiones, algunos individuos y organizaciones que promocionan IPv6
tienen algun tipo de prurito cuando uno habla o discute problemas en
IPv6, como si eso fuera algo malo. Y mi argumento es justamente que
quienes trabajamos en el area de Ingenieria de Internet, debemos tener
el objetivo y responsabilidad de encontrar problemas, y hacer que las
cosas funcionen mejor -- y *no* de dedicarnos al marketing queriendo
inventar virtudes, y ocultando problemas.
Cuando uno se focaliza en el marketing, en vez de hacer ingeniería,
tristemente suceden cosas como las que describís: eventualmente los
problemas aparecen, quien utiliza el protocolo encuentra la manera mas
pragmatica de solucionar sus problemas, con las opciones que tiene sobre
la mesa (que usualmente es la de "deshabilitarlo").
2) La breve descripción del manejo de nuestro documento por parte de uno
de los chairs de 6man -- y en definitiva, por los dos chairs, y por el
propio director de area, tal vez sirva como datapoint de porqué siempre
discuto con todos aquellos que venden una historia de fantasia sobre
IETF, como si fuera la misma organizacion a la que 20 años atras
concurrian hippies idealistas en sandalias. Padecer manejos
discrecionales y arbitrarios, y luego que en tu propia region te hablen
maravillas sobre el propio sistema que en ocasiones padecés no es la
cosa mas agradable.
3) Alguna de las cosas que proponemos en nuestro documento ya las he
implementado en algunos sistemas operativos, como por ejemplo el kernel
del Linux. No solo menciono esto como datapoint de que hay trabajo
activo en este area, sino para resaltar que no solo es bueno que los
estandares sean abiertos, sino que tambien es bueno y necesario que los
sitemas operativos sean libres y de codigo abierto, ya que permite a la
gente (en este caso, yo), trabajar en el codigo para solucionar
problemas. Esto lo menciono porque muchas veces se hace mucho lobby
respecto de los estandares abiertos, pasando diapositivas con "Keynote"
-- lo cual ignora que las especificaciones abiertas cobran sentido
cuando alguien las implementa. Y los sistemas libres y de codigo abierto
posibilitan que mucha gente pueda contribuir. Algo que complementa a los
estandares abiertos, y tiene igual o mayor importancia.
4) Por si lo de arriba no fuera suficiente, te cuento que algunas
personas (incluyendo el propio co-chair que nos ha hecho la vida
imposible para solucionar este problema con modificaciones al protocolo)
tambiñen se han opuesto a la publicación de el documento del Subject,
argumentando que discute un problema inexistente.
Esto lo menciono porque a veces uno simplemente ve un documento, y
esperaria que su publicacion hubiera sido sencilla (por discutir un
problema real, concreto, etc.) -- pero muchisimas veces (como en este
caso), la cuestión dista de ello.
Como una nota mas de lo de arriba: Mi ISP renumera "cada tanto" (todavia
no pude identificar de qué depende la renumeracion). En mi caso, tengo
el CPE del proveedor en modo puente, y utilizo un Mikrotik como router
hogareño, lo cual me permite reducir artificialmente el lifetime
anunciado para los prefijos. De no disponer de ello, yo también hubiera
terminado deshabilitando IPv6.
Abrazo,
Fer
--
Fernando Gont
SI6 Networks
e-mail: fgont en si6networks.com
PGP Fingerprint: 6666 31C6 D484 63B2 8FB1 E3C4 AE25 0D55 1D4E 7492
Más información sobre la lista de distribución LACNOG