1 votos

Cómo configurar radvd para linux ipv6 router hacia arriba dsl gateway

Estoy tratando de conseguir mi casa de Linux router también el soporte de ipv6 en la red del hogar.

Tengo un NVG599 DSL router actúa como un GW para el público en internet, y luego mi Linux router con dos interfaces: eth0 hacia la casa de la red y eth1 hacia el router ADSL.

CASA de red <---- eth0-----> LinuxRouter <------ eth1------>DSLrouter -->>>>>

El DSL router está configurado con un /64 prefijo de red de mi ISP (se supone que es 2001:0:0:1234::/64) y el DSL router tiene una dirección global ipv6 de 2001:0:0:1234::1. Tengo el programa de instalación de Linux router con radvd para anunciar este mismo /64 prefijo de red para eth0 hacia la casa de la LAN, y de hecho veo que los hosts de la LAN son capaces de auto configure las direcciones IP. El anuncio también listas de Linux router como router por defecto para ::/0, y el reenvío de la instalación para que envíe los paquetes al router ADSL.

El problema que tengo es que el router ADSL es el envío de vecino solicitaciones paquetes en eth1 cuando se hace de los paquetes entrantes desde internet, y aquellos vecino solicitudes no se pase de la eth1 -> eth0 en el Linux router. Estoy pensando que esto está ocurriendo porque el router ADSL piensa que está directamente conectado a la red casera (que es como lo haría normalmente en el 99% de las redes en el hogar sin un Linux router en el medio).

Después de pasar 2 días tratando de averiguar, la respuesta hasta ahora ha eludido a mí. Tengo la esperanza de que hay alguna manera de enviar un anuncio de enrutador utilizando radvd para el router ADSL para decirle a la ruta de todos los paquetes para el /64 prefijo a través de la Linux Router. Actualmente el anuncio de enrutador enviado por el Linux Router está configurado con el /64 prefijo de ser enviado hacia el router ADSL con:

interface eth1
{
    AdvSendAdvert on;
    MinRtrAdvInterval 3;
    MaxRtrAdvInterval 10;
    route 2001:0:0:1234::/64 {
    };

};

Yo creo que esto debería ser suficiente para conseguir el DSL router para reenviar paquetes a la red, pero sigo sin ver el vecino soliciations.

Veo el DSL router tiene IP pasar a través de la configuración con capacidad para establecer un "servidor por defecto", pero los que parece que sólo se aplican a IPv4. Suponiendo que el router ADSL no es a honrar mi RA, supongo que podría configurar ipv6 de multidifusión mediante el reenvío de 'xorb' en mi Linux router, pero me preguntaba si hay otras opciones.

1voto

Nick Dixon Puntos154

El problema que tengo es que el router ADSL es el envío de vecino solicitaciones paquetes en eth1 cuando se hace de los paquetes entrantes desde internet, y aquellos vecino solicitudes no se pase de la eth1 -> eth0 en el Linux router.

Eso es normal. Vecino solicitaciones funcionan igual que las consultas ARP – que traducir una dirección IP a una dirección MAC, y por lo tanto sólo tienen sentido dentro de un mismo dominio de difusión. Hace no tiene sentido para un router para reenviar ellos.

(Aunque en algunas situaciones, un router puede proxy de ellos, como se describe en la final, pero... lo deje para el plan C.)

Estoy pensando que esto está ocurriendo porque el router ADSL piensa que está directamente conectado a la red casera (que es como lo haría normalmente en el 99% de las redes en el hogar sin un Linux router en el medio).

Sí, y nunca dije lo contrario.

Por lo que su situación actual es que la misma subred IP está siendo utilizado por dos redes diferentes, y usted está esperando el Linux router funcione como un puente... Que es casi el opuesto exacto de un router.

(Si la parte confusa es IPv6, pensar acerca de la configuración de conjunto en IPv4 términos, como el enrutamiento es más o menos el mismo en ambos, y que encuentre en su mayoría es equivalente a la ARP. Así que si usted no se utilice la misma subred 192.168.1.0 en la v4...)


El mejor curso de acción es para obtener un segundo /64, y el uso que para su Linux router y eth1 a la red. (Si el router ADSL obtiene su prefijo a través de DHCPv6-EP, podría ser posible engañar a solicitar un segundo.) La diferencia es que la 2ª /64 no se pueden usar directamente en una interfaz, pero en lugar de enrutado hacia el Linux dirección del router.

Por ejemplo:

  • DSL router 2001:db8:0:0:a:b:c:d en la interfaz WAN.
  • DSL router obtiene 2001:db8:10:0::/64 de la ISP, la auto-asigna 2001:db8:10:0::1/64 en la interfaz LAN, y envía Anuncios de Enrutador.
  • Linux router configura automáticamente 2001:db8:10:0:x:y:z:t en eth1 basado en RAs.
  • Linux router obtiene 2001:db8:10:1::/64 de la ISP (de alguna manera), se auto-asigna 2001:db8:10:1::1/64 en la interfaz eth0, y radvd envía Anuncios de Enrutador para que – no para la primera subred.
  • El router ADSL necesita una ruta como "2001:db8:10:1::/64 a través 2001:db8:10:0:x:y:z:t" de modo que todo el tráfico de la 2 ª subred se reenvía hacia el enrutador Linux.

(Disculpas por la no-muy-claro ejemplo).

A veces el ISP delegados de un todo /60 o incluso /56, y las rutas de todos hacia el router ADSL. En ese caso, usted puede configurar el 2º de subred sin ningún tipo de DHCPV6-PD magia. Aunque realmente no puedo proporcionar una buena "genérico" respuesta aquí es tanto ISP-dependiente y CPE-dependiente.


Si la obtención de un segundo /64 prefijo es imposible, otras opciones posibles son:

  • Gire el sistema Linux en un puro de puente, sin ninguna funcionalidad de enrutamiento.

  • El uso de otras fuentes para la obtención de otros /64, tales como un túnel proveedor (o 6to4). El túnel existente de servicios se va a trabajar mucho más fiable (excepto por alguna extra de latencia) de los hacks se describe a continuación.

  • Hacer que el router ADSL sólo obtener el /64 pero no se configurarlo para LAN. (Depende de la flexibilidad con la que el router está.) En su lugar, de nuevo establecer una ruta para que los /64 a través de su sistema Linux es eth0 dirección local de vínculo, y asimismo establecer una ruta en el sistema Linux para ::/0 a través de la DSL enrutador de LAN de la dirección local de vínculo. Como resultado, el /64 va a ser utilizado en la 2 ª subred, y el 1 de uno no tendrá ningún pública prefijo a todos.

  • Continuar con su configuración actual, pero install 'ndppd' para realizar Neighbour Discovery proxy. (No, el reenvío de multidifusión no hace ND paquetes a menudo tienen link-local de direcciones de origen.) Cuidado con esto, puede hacer que las cosas realmente confuso.

  • Uso privado (ULA) direcciones para el 2do de la LAN, y permitir a 1-a-muchos NAT (enmascaramiento) en el enrutador Linux...perdiendo la mayoría de IPv6 utilidad en el proceso. (Sí, oficialmente NAT no existen en IPv6, pero que no deje de Linux netfilter/iptables de dar y poner en práctica).

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: