3 votos

¿los enrutadores ipv6 múltiples en la misma red física, cómo conseguir trabajo?

Tengo varios enrutadores de Internet desde el mismo proveedor (voy a nombre de "cajas" de los enrutadores de Internet), todas relacionadas con el mismo hardware del conmutador de red formando una red física (voy a nombre de "NML" que la red física para la "Tierra de nadie") en el que se conectan dos routers (voy a nombre de ellos "routers") haciendo de enrutamiento y tareas propias de firewall de una LAN privada:

_____________________________________________ WAN (Internet)
    |           |           |           |
    |           |           |           |
 ___|___     ___|___     ___|___     ___|___
[       ]   [       ]   [       ]   [       ]
[ Box 1 ]   [ Box 2 ]   [ Box 3 ]   [ Box 4 ]
[ 0:A:1 ]   [ 0:B:1 ]   [ 0:C:1 ]   [ 0:D:1 ]
[_______]   [_______]   [_______]   [_______]
    |           |           |           |
    |           |           |           |
____|___________|___________|___________|____ NML (A physical network
          |                       |                for boxes and routers)
          |                       |
      ____|____               ____|____ 
     [         ]             [         ]
     [ Router1 ]             [ Router2 ]
     [  0:A:2  ]             [  0:A:3  ]
     [  0:B:2  ]             [  0:B:3  ]
     [  0:C:2  ]             [  0:C:3  ]
     [  0:D:2  ]             [  0:D:3  ]
     [_________]             [_________]
          |                       |
          |                       |
__________|_______________________|__________ LAN (Where people are working)

En ipv4 lado, NML es una red local usando ipv4 privada de la clase, funciona.

En el caso de ipv6 lado, cada uno de los cuadros de compartir el mismo /64 prefijo y cada uno de los router de conseguir un auto-configurar la dirección ipv6 de cada caja (cada router obtener cuatro ipv6, uno por caja).

Para hacerlo simple que usted puede imaginar las direcciones ipv6 con 3 caracteres:

  • 0:A:1: 0 prefijo de proveedor de prefijo de red, A prefijo del primer cuadro de prefijo de red, 1 sufijo de la primera caja de dirección;
  • 0:A:2: 0 prefijo de proveedor de prefijo de red, A prefijo del primer cuadro de prefijo de red, 1 sufijo de primera router como la dirección desde la primera casilla;
  • 0:C:1: 0 prefijo de proveedor de prefijo de red, C prefijo de tercera casilla del prefijo de red, 1 sufijo de tercera casilla de la dirección;
  • 0:C:3: 0 prefijo de proveedor de prefijo de red, C prefijo de tercera casilla del prefijo de red, 3 sufijo de segundo router como la dirección de tercera casilla.

Así que cada router obtener cuatro direcciones ipv6, uno por caja.

  • Desde el router 1 puedo ping6 todas las cajas con sus direcciones ipv6 (0:A:1, 0:B:1, 0:C:1, 0:D:1);
  • Desde el router 2 I can ping6 cada router2 direcciones ipv6 (0:A:3, 0:B:3, 0:C:3, 0:D:3), lo contrario es cierto;
  • De ambos router 1 router y 2 I no ping6 una dirección ipv6, incluso cuando agrego una ruta explícita a una caja para que la dirección ipv6 (ip -6 route add something via 0:A:1), ya sea usando la caja de la dirección ipv6 de proveedor de prefijo sea usando el cuadro de la dirección local de vínculo.

Al principio, sólo una caja de ipv6 activado y en este momento yo era capaz de consulta de Internet mediante el uso de ipv6, pero desde que he activado ipv6 en todas las casillas, no soy capaz de consulta de Internet mediante el uso de ipv6 ya. Si hago un traceroute6 a una dirección de Internet de un router, nunca va más allá de la caja.

Tenga en cuenta que no necesito hacer cosas ipv6 desde la LAN a través de los enrutadores en este momento, sólo tengo routers para ser capaz de hacer cosas a través de Internet ipv6 (principalmente a la construcción de algunos de VPN a través de ipv6).

Los enrutadores de Internet (denominado "cajas") son de propiedad de la ISP y la única opción que tengo es un "habilitar IPv6" casilla de verificación en la página de cliente, no tengo acceso a la configuración del router en sí mismo y no hay otra opción de habilitar o deshabilitar ipv6. Los enrutadores entre LAN y NML (denominado "routers") son estándar en los sistemas Debian ejecutando en algunos x86 basado en hardware de red. En un Debian punto de vista se puede imaginar es como un PC : yo puedo hacer lo que sea un estándar de Debian puede hacer.

Así, dos preguntas:

  • Es la configuración correcta y se espera que funcione? Si sí, ¿dónde puedo buscar para encontrar el problema?
  • Es la instalación incorrecta y no se espera que el trabajo a todos? Si sí, ¿qué puedo hacer para solucionarlo?

He quitado algunos "caduca" información y cosas por el estilo para quitar algún nivel de detalle, además de que en algún momento agregado algunos de los principales 0 a alinear las direcciones para facilitar la lectura, luego reemplazado algunos de bits a utilizar el ejemplo de ipv6 de la clase.

# my boxes' ipv6 addresses
box0    2001:db8:ee84:2180::1
box1    2001:db8:ee84:21c0::1
box2    2001:db8:2f13:1ea0::1
box3    2001:db8:399a:08f0::1
box4    2001:db8:399a:39e0::1

# my router1's ipv6 addresses
# ip -6 addr show dev eth2
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2001:db8:ee84:2180:200:24ff:fed1:3d9e/64 scope global mngtmpaddr dynamic
    inet6 2001:db8:ee84:21c0:200:24ff:fed1:3d9e/64 scope global mngtmpaddr dynamic
    inet6 2001:db8:2f13:1ea0:200:24ff:fed1:3d9e/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:399a:08f0:200:24ff:fed1:3d9e/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:399a:39e0:200:24ff:fed1:3d9e/64 scope global mngtmpaddr dynamic 
    inet6 fe80::200:24ff:fed1:3d9e/64 scope link 

# my router2's ipv6 addresses
ip -6 addr show dev eth2
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2001:db8:ee84:2180:200:24ff:fed1:6336/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:ee84:21c0:200:24ff:fed1:6336/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:2f13:1ea0:200:24ff:fed1:6336/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:399a:08f0:200:24ff:fed1:6336/64 scope global mngtmpaddr dynamic 
    inet6 2001:db8:399a:39e0:200:24ff:fed1:6336/64 scope global mngtmpaddr dynamic 
    inet6 fe80::200:24ff:fed1:6336/64 scope link 

# default ipv6 routes on router1
# ip -6 route
2001:db8:ee84:2180::/64 dev eth2  proto kernel  metric 256
2001:db8:ee84:21c0::/64 dev eth2  proto kernel  metric 256
2001:db8:2f13:1ea0::/64 dev eth2  proto kernel  metric 256
2001:db8:399a:08f0::/64 dev eth2  proto kernel  metric 256
2001:db8:399a:39e0::/64 dev eth2  proto kernel  metric 256
fe80::/64 dev eth2  proto kernel  metric 256 
default via fe80::e69e:12ff:fe04:286f dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::e69e:12ff:fe03:8b35 dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::e69e:12ff:fe02:10de dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::0224:d4ff:fea7:f258 dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::0224:d4ff:febb:af9e dev eth2  proto ra  metric 1024 hoplimit 64

# default ipv6 routes on router2
# ip -6 route
2001:db8:ee84:2180::/64 dev eth2  proto kernel  metric 256
2001:db8:ee84:21c0::/64 dev eth2  proto kernel  metric 256
2001:db8:2f13:1ea0::/64 dev eth2  proto kernel  metric 256
2001:db8:399a:08f0::/64 dev eth2  proto kernel  metric 256
2001:db8:399a:39e0::/64 dev eth2  proto kernel  metric 256
fe80::/64 dev eth2  proto kernel  metric 256 
default via fe80::e69e:12ff:fe03:8b35 dev eth2  proto ra  metric 1024 mtu 1480 hoplimit 64
default via fe80::0224:d4ff:febb:af9e dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::e69e:12ff:fe02:10de dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::e69e:12ff:fe04:286f dev eth2  proto ra  metric 1024 hoplimit 64
default via fe80::0224:d4ff:fea7:f258 dev eth2  proto ra  metric 1024 hoplimit 64

# neigh from router1
# ip -6 neigh | grep eth2
fe80::224:d4ff:febb:af9e dev eth2 lladdr 00:24:d4:bb:af:9e router STALE
fe80::200:24ff:fed1:6336 dev eth2 lladdr 00:00:24:d1:63:36 STALE
fe80::e69e:12ff:fe04:286f dev eth2 lladdr e4:9e:12:04:28:6f router REACHABLE
2001:db8:2f13:1ea0::1 dev eth2 lladdr 00:24:d4:bb:af:9e router STALE
fe80::e69e:12ff:fe02:10de dev eth2 lladdr e4:9e:12:02:10:de router STALE
2001:db8:399a:39e0:200:24ff:fed1:6336 dev eth2 lladdr 00:00:24:d1:63:36 STALE
2001:db8:399a:8f0:200:24ff:fed1:6336 dev eth2 lladdr 00:00:24:d1:63:36 STALE
2001:db8:399a:39e0::1 dev eth2 lladdr 00:24:d4:a7:f2:58 router STALE
2001:db8:399a:8f0::1 dev eth2 lladdr e4:9e:12:02:10:de router STALE
2001:db8:399a:39e0:: dev eth2  FAILED
fe80::213:46ff:fe8f:1e4a dev eth2 lladdr 00:13:46:8f:1e:4a STALE
2001:db8:399a:8f0:: dev eth2  FAILED
fe80::e69e:12ff:fe03:8b35 dev eth2 lladdr e4:9e:12:03:8b:35 router STALE
fe80::224:d4ff:fea7:f258 dev eth2 lladdr 00:24:d4:a7:f2:58 router STALE
fe80::8226:89ff:fe2d:b3d3 dev eth2 lladdr 80:26:89:2d:b3:d3 STALE
fe80::20a:f7ff:fe12:e77 dev eth2 lladdr 00:0a:f7:12:0e:77 STALE
2001:db8:ee84:2180::1 dev eth2 lladdr e4:9e:12:03:8b:35 router STALE
fe80::21d:9ff:fe2c:628d dev eth2 lladdr 00:1d:09:2c:62:8d STALE

# get from router1
# ip -6 route get 2001:4860:4860::8888
2001:4860:4860::8888 from :: via fe80::e69e:12ff:fe04:286f dev eth2  proto ra  src 2001:db8:399a:39e0:200:24ff:fed1:3d9e  metric 1024  hoplimit 64

# neigh from router2
# ip -6 neigh | grep eth2
2001:db8:399a:8f0:200:24ff:fed1:3d9e dev eth2 lladdr 00:00:24:d1:3d:9e STALE
2001:db8:399a:8f0::1 dev eth2 lladdr e4:9e:12:02:10:de router STALE
fe80::e69e:12ff:fe04:286f dev eth2 lladdr e4:9e:12:04:28:6f router STALE
fe80::224:d4ff:fea7:f258 dev eth2 lladdr 00:24:d4:a7:f2:58 router DELAY
fe80::e69e:12ff:fe02:10de dev eth2 lladdr e4:9e:12:02:10:de router REACHABLE
fe80::200:24ff:fed1:3d9e dev eth2 lladdr 00:00:24:d1:3d:9e STALE
fe80::224:d4ff:febb:af9e dev eth2 lladdr 00:24:d4:bb:af:9e router STALE
2001:db8:399a:39e0:200:24ff:fed1:3d9e dev eth2 lladdr 00:00:24:d1:3d:9e STALE
fe80::e69e:12ff:fe03:8b35 dev eth2 lladdr e4:9e:12:03:8b:35 router REACHABLE

# get from router2
ip -6 route get 2001:4860:4860::8888
2001:4860:4860::8888 from :: via 2001:db8:399a:8f0::1 dev eth2  src 2001:db8:399a:39e0:200:24ff:fed1:6336  metric 1024

Algunos traceroute ejemplo:

# traceroute from router1
# traceroute 2001:4860:4860::8888
traceroute to 2001:4860:4860::8888 (2001:4860:4860::8888), 30 hops max, 80 byte packets
 1  2001:db8:ee84:21c0::1 (2001:db8:ee84:21c0::1)  26.146 ms  27.728 ms  28.507 ms

0voto

gloriphobia Puntos 101

Estoy de transposición de esta ipv4 ejemplo para ipv6.

El problema es que a menos que usted activamente ping a cada cuadro de la ip con la fuente adecuada, no va a ser fácil para que coincida (utilizando la dirección mac) de la correcta dirección ip pública con el enlace correcto ip local. He aquí lo que pude deducir de vecino tablas de los routers y el hecho de que el local de enlace del final es la mac del final:

box0 2001:db8:ee84:2180::1 <=> fe80::e69e:12ff:fe03:8b35
box2 2001:db8:2f13:1ea0::1 <=> fe80::0224:d4ff:febb:af9e
box3 2001:db8:399a:08f0::1 <=> fe80::e69e:12ff:fe02:10de
box4 2001:db8:399a:39e0::1 <=> fe80::0224:d4ff:fea7:f258

y el resto que no podía ser encontrado por los datos que tiene que ser:

box1 2001:db8:ee84:21c0::1 <=> fe80::e69e:12ff:fe04:286f

Con esto, queda claro que tanto ip -6 route get ejemplos en la cuestión muestran a la fuente equivocada fue utilizado para el elegido router. Parece ser un linux' limitación en este caso (tener varias Lan superpuestas en una sola LAN física).

Así que aquí es lo que se ha hecho para el router1. También, por ensayo y error "src" todavía tiene que ser declarado por la ruta predeterminada en la tabla, o de otro origen, todavía podría ser elegido. Tenga en cuenta que la dirección IP pública o el enlace local de la propiedad intelectual puede (debe) ser utilizado indistintamente como puerta de enlace, así que es mejor usar la IP pública, incluso si la RA parece preferir el enlace ip, es más fácil para el uso del público en una secuencia de comandos, y la búsqueda de la correspondencia entre los dos tipos de IP de arriba no tiene que hacer nada más.

# ip -6 route add 2001:db8:ee84:2180::/64 dev eth2 src 2001:db8:ee84:2180:200:24ff:fed1:3d9e tabla 100
# ip -6 route add default a través 2001:db8:ee84:2180::1 dev eth2 src 2001:db8:ee84:2180:200:24ff:fed1:3d9e tabla 100

# ip -6 route add 2001:db8:ee84:21c0::/64 dev eth2 src 2001:db8:ee84:21c0:200:24ff:fed1:3d9e tabla 101
# ip -6 route add default a través 2001:db8:ee84:21c0::1 dev eth2 src 2001:db8:ee84:21c0:200:24ff:fed1:3d9e tabla 101

# ip -6 route add 2001:db8:2f13:1ea0::/64 dev eth2 src 2001:db8:2f13:1ea0:200:24ff:fed1:3d9e tabla 102
# ip -6 route add default a través 2001:db8:2f13:1ea0::1 dev eth2 src 2001:db8:2f13:1ea0:200:24ff:fed1:3d9e tabla 102

# ip -6 route add 2001:db8:399a:08f0::/64 dev eth2 src 2001:db8:399a:08f0:200:24ff:fed1:3d9e tabla 103
# ip -6 route add default a través 2001:db8:399a:08f0::1 dev eth2 src 2001:db8:399a:08f0:200:24ff:fed1:3d9e tabla 103

# ip -6 route add 2001:db8:399a:39e0::/64 dev eth2 src 2001:db8:399a:39e0:200:24ff:fed1:3d9e tabla 104
# ip -6 route add default a través 2001:db8:399a:39e0::1 dev eth2 src 2001:db8:399a:39e0:200:24ff:fed1:3d9e tabla 104

Al menos un "defecto" ruta por defecto tiene que ser puesto en la principal (la costumbre) de la tabla, de lo contrario lo que se hace más tarde, habrá un error como "no route to host" o "la red es inalcanzable". Pues ya tengo 5 de estos de anuncio de router, no es necesario.

Ahora vamos a añadir las reglas que obligan a cada IP de origen de su correspondiente tabla, por lo tanto la selección de la fuente correcta para cualquiera de el (cuadro) de los routers:

# ip -6 regla añadir desde el 2001:db8:ee84:2180:200:24ff:fed1:3d9e tabla 100
# ip -6 regla añadir desde el 2001:db8:ee84:21c0:200:24ff:fed1:3d9e tabla 101
# ip -6 regla añadir desde el 2001:db8:2f13:1ea0:200:24ff:fed1:3d9e tabla 102
# ip -6 regla añadir desde el 2001:db8:399a:08f0:200:24ff:fed1:3d9e tabla 103
# ip -6 regla añadir desde el 2001:db8:399a:39e0:200:24ff:fed1:3d9e tabla 104

También es posible que la fuerza (o incluso equilibrar la carga con la statistic --mode nth de coincidencia) una opción usando, por ejemplo ip6tables ... -j MARK ... con ip -6 rule add fwmark ... table 10x

Ahora sería mejor guión de esta...

No podría ser de otra cuestión. Si de un router se desconecta, la correspondiente ruta por defecto va a desaparecer rápidamente en el sistema linux, porque no se anuncia ya, pero la dirección IP de la estancia. No sé entonces si esta IP puede todavía ser mal elegida para ser usada en una ruta por defecto. Si esto sucede, las normas de propiedad intelectual agregado podría reemplazar el valor predeterminado es la ruta a utilizar el offline cuadro-router, anulando así el fail-over mecanismo de tener varias cajas como los routers. Yo no tengo los medios para probar esto.

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: