Después de leer su comentario en el que explica su pregunta un poco más, respondería que probablemente podría hacerse. Pero tomaría muchos recursos y nos ganaría muy poco, en todo caso.
Las direcciones IP (v4 y v6) son jerárquicas. Enruta el tráfico al encontrar el prefijo coincidente más largo en una tabla de enrutamiento y empuja el paquete hacia la puerta de enlace para ese prefijo.
Por lo tanto, si solo tiene un enlace ascendente, su tabla de enrutamiento es muy pequeña:
- ¿Cuál es el principal problema con la comunicación basada en la dirección MAC a través de Internet en lugar de la dirección IP?
- ¿Qué es un flujo de bytes?
- ¿Cuáles son los ataques DDoS más grandes de la historia?
- ¿Cuál es el número máximo de conexiones TCP simultáneas logradas a una dirección IP y puerto?
- ¿Cuáles son las ventajas de usar FPGA para la descarga / análisis TCP?
192.168.1.0/24 (red local): interfaz local
0.0.0.0/0: 192.168.1.1 (puerta de enlace)
Si ejecuta una red empresarial, sus enrutadores tendrán tablas de enrutamiento más como:
192.168.1.0/24 (LAN interna): Interfaz Vlan 1 (138 clientes)
192.168.2.0/24 (LAN interna): interfaz Vlan 2 (204 clientes)
192.168.3.0/24 (LAN interna): interfaz Vlan 3 (10 clientes)
10.0.0.0/8 (DMZ): 192.168.255.4 (firewall para DMZ)
192.168.255.0 (LAN de interconexión de enrutador): Interfaz TenGigabitEthernet1 / 1 (4 “clientes” (enrutadores / cortafuegos)
0.0.0.0/0: 192.168.255.1 (firewall hacia Internet)
El enrutador contiene una tabla de enrutamiento de 6 prefijos IP y una tabla ARP de (138 + 204 + 10 + 4) 356 direcciones MAC.
Después de que el enrutador haya decidido a qué interfaz pasar el paquete, la tabla ARP para esa interfaz decide a qué dirección MAC (dirección Ethernet) reenviar el paquete (por ejemplo, si un paquete debe ir al DNS de Google en 8.8.8.8, debería reenviarse al firewall de Internet en 192.168.255.1, que podría tener una dirección MAC de FE: DE: AB: EE: 13: 37)
Si cada elemento conectado en el mundo tiene una dirección IPv6 específica codificada en cada interfaz de red de fábrica (como la dirección MAC de Ethernet) más una cantidad de direcciones de interfaz virtual, una tabla de enrutamiento local debería contener cada dirección IPv6 en las redes locales y una ruta predeterminada para todo lo demás. Reconocería que eso equivaldría a algo similar al número de entradas en la tabla ARP anterior multiplicado por el número de enrutadores en la empresa. No es imposible, en realidad. Pero tampoco es particularmente útil.
Un enrutador en un ISP u otra red principal multiconectada a menudo tendrá una tabla de enrutamiento completa de todos los prefijos IP públicos en Internet. Actualmente se trata de 680000 entradas (fuente: Informe CIDR). Dado que las redes tienen NAT detrás de firewalls, esto solo contiene las direcciones públicas. En una empresa como la que trabajo, son 3 prefijos, pero nuestro ISP agrega dos de ellos, de modo que nosotros y muchas otras compañías se reducen a uno (dos) prefijos globales).
¿La tabla de enrutamiento IPv6 completa, si tuviera que contener todos los elementos en red del mundo? Y a menudo más de una copia, porque casi siempre hay algunas rutas alternativas a cualquier red. Cincuenta mil millones de entradas no es un tramo maníaco. Y los cambios en la tabla de enrutamiento cada vez que alguien se movía de una red a otra aumentaría.
Asumamos diez mil millones de interfaces conectadas y dos direcciones IPv6 en cada una. Asumamos que hay tres rutas para todo. Supongamos que cada elemento se enciende o apaga o se mueve a otra red dos veces al día. Muchos no lo son, pero muchos otros se mueven mucho, mucho más.
Eso es 120 mil millones de cambios en la tabla de enrutamiento por día en todos los enrutadores principales. 1,4 millones de cambios por segundo. Tendríamos que repensar nuestros protocolos de enrutamiento para hacerlo efectivo. Consumiría mucho más ancho de banda, CPU y RAM que ahora. Y probablemente todavía nos quedaremos atrás, cuando ocurrió un mal funcionamiento importante en algún lugar de la red.
Además, podríamos ubicar cualquier elemento conectado en red en cualquier parte del mundo al verificar la tabla de enrutamiento … Eso a veces podría ser práctico para las fuerzas del orden o para dictadores malvados, pero sería un gran riesgo de privacidad para el resto de nosotros.
Sin embargo, si vamos por otro lado … Usted sugirió que IPv6 dependiera de la posición geográfica del elemento. Eso facilitaría el enrutamiento. Podríamos decir “bueno, este paquete debería ir a América del Norte” y sus enrutadores podrían luego detallarlo en estados, ciudades, etc., un poco como lo hacemos hoy con las letras físicas.
Sin embargo, eso significaría que cada vez que compro una cosa, soy responsable de codificar la dirección “GPS-IPv6”. Y si tomo mi Nintendo Switch o, Dios no lo quiera, mi teléfono y lo muevo a otra ubicación física, necesitaría reprogramar la dirección IP. Preferiría que los conductores y los pilotos NO hicieran esto mientras controlaban su vehículo, gracias.
Sin embargo, eso podría ser automatizado. Si un elemento está conectado a una red, podría decirle a la red “¡Hola! ¡Soy nuevo! ¿Qué dirección IPv6 debo usar? mientras decidimos, puedes llamarme “… oh, espera. Acabo de reinventar las direcciones DHCP y MAC. Dagnabbit 🙂
No, creo que por ahora estamos mejor manteniendo una capa de indirección entre las capas de protocolo. Deje que el direccionamiento de capa 1/2 esté codificado (MAC), deje que el direccionamiento de capa 3/4 sea dinámico (IP).
A menos que tenga un caso claro de por qué la otra cosa podría ser inteligente.