# [Redes] Ruteo Estático. Ayuda. (Solucionado)

## ZaPa

Hola.

Últimamente estoy jugando mucho con route, ya qué, estoy leyendo un libro que me recomendó the_hurd llamado "LINUX. Guía para administradores de redes", que trata muy bien el tema de ruteos estáticos y que les recomiendo a todos ustedes (un gran libro). Pero vengo a plasmarles el problemita que no he  podido aclarar yo solo.

El escenario es el siguiente:

Tengo un servidor haciendo de router con 2 tarjetas de red, 1 para la red LAN (192.168.0.x) y otra para conectar con el router de internet (20.0.2.X).

Yo estoy detrás de la red 192.168.0.x y quiero acceder a la red de 20.0.2.x, por lo que he intentado añadir unas rutas estáticas en mi pc con route, ahciendo de la siguiente forma:

```

route add -net 20.0.2.0 netmask 255.255.255.0 gw 192.168.0.1

```

Con esto ya deberia de tener acceso desde mi pc (192.168.0.99) de la red (192.168.0.1) a la red 20.0.2.0. ¿Cierto? 

ya que, le estoy indicando a route que para acceder a la red (20.0.2.0) el gateway será 192.168.0.1.

¿Porque no funciona esto?

No consigo acceso a esta red y no se donde puede estar el error.

Aver si alguien con más conocimientos puede ayudarme.

Muchas gracias.

Un saludo.

----------

## Coghan

No solo con las rutas es suficiente, para el servidor si que lo será porque ve los dos interfaces pero para el resto de la red internar el servidor debe poder hacer forward de estos paquetes que vienes de la red y traducirlos. Para ello necesitas un par de cosas:

Habilitar en el kernel esto

```
CONFIG_IP_ADVANCED_ROUTER:
```

Decirle al kernel que lo active 

```
echo "1" > /proc/sys/net/ipv4/ip_forward
```

 esto lo puedes hacer de forma automática en el arranque modificando el archivo /etc/sysctl.conf

```
net.ipv4.ip_forward = 1
```

Habilitar el enmascaramiento en iptables

```
$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
```

Con esto debería ser suficiente.

----------

## ZaPa

Hola de nuevo y muchas gracias Coghan por responder.

Debo decirte que el forward de paquetes y demás cosas ya están activadas en el servidor, ya qué, conexión a internet tiene (el servidor y toda la red LAN), osea, que el forward de paquetes lo hace, si no, la red con rango 192.168.0.x no podria obtener la conexión a internet de 20.0.2.0. ¿Se entiende?

Lo único que quiero hacer es conseguir acceso desde 192.168.0.x a la red 20.0.2.x, que con una simple ruta deberia de funcionar. ¿No?

Muchas gracias.

Saludos.

----------

## Coghan

Si ya puedes acceder a internet desde tu red interna no hace falta añadir ninguna ruta, todo lo que no vaya destinado hacia 192.168.0.X saldrá por la tarjeta de red con la ip 20.0.2.x, por lo tanto esa misma subred será rutada sin problemas. Otro tema aparte es que esta subred esté administrada por ti y no te dejen acceso a ella.

----------

## chumi

Si no he entendido mal, tu controlas tanto el router (red LAN 20.0.2.0/24) como el servido (conectado al router por una tarjeta en la red 20.0.2.0/24).

Si esta es la situación, ademas de las rutas estáticas que necesitas en el equipo para 'llegar' a la red 20.0.2.0, los equipos en esa red (diferentes del servidor, que tiene una 'pata' en cada red) también necesitan rutas estáticas para saber por donde devolver los paquetes que les llegan desde la red 192.168.0.0/24.

Por ejemplo, en el caso del router, sería necesario agregar una ruta que indicase que para llegar a la red 192.168.0.0 ha de utilizar como gateway la dirección 20.0.2.x (cambia la x para que la dirección sea la de la pata que tiene el servidor en esa red).

No sé si ese será el único problema, o si ya lo has tenido en cuenta, pero igual te ayuda...

Saludos!!

----------

## ZaPa

Hola de nuevo.

Y muchas gracias a los 2 por ayudarme de verdad :=), muy amables.

Os cuento...

Coghan, no intentaba conseguir acceso a internet, lo único que queria hacer es poder administrar un router que tenia en la red 20.0.2.X desde 192.168.0.X.

¿Se me entiende? Aveces soy un poco malo explicando las situaciones (jeje).

Al final el problema se ha solucionado, ( no era problemas de las rutas estáticas) ya qué, añadiendo la ruta estática, como dije maś arriba:

```
 route add -net 20.0.2.0 netmask 255.255.255.0 gateway 192.168.0.1
```

Seria suficiente para el acceso a la red 20.0.2.X desde 192.168.0.x, el problema no era ese.

El problema era que 192.168.0.X caía (no he averiguado el porqué).

La red 192.168.0.X tenia acceso a internet, pero como si 192.168.0.X no existiera, ni ping ni nada de nada...... y al tener ese problema, no conseguia acceso a 20.0.2.X ya qué 192.168.0.X es como si no estubiera.

Pero bueno.

Ya solucione el problema.

Como el gateway 192.168.0.1 tiene acceso a 20.0.2.X, SIN AÑADIR NINGUNA RUTA, he podido acceder a esos routers que queria administrar desde 192.168.0.X.

....Ahora viene la pregunta......

¿Eso es así?, es decir, al tener el gateway (192.168.0.1) acceso a la red 20.0.2.0, ¿puede acceder TODA LA RED (192.168.0.X) a 20.0.2.X, asi como asi? sin añadir ningúna ruta. 

Porque como he dicho, accedo sin añadir ninguna ruta.

Un saludo, espero que me puedan ayudar.

Muchisimas gracias.

----------

## Coghan

Si, esto es así, según se levante el interface con la ip 20.0.2.x la ruta se crea. Compruébalo tu mismo lanzando el comando route sin parámetros. Y al hacer que tu servidor sea un gateway por definición la red interna ya tendrá acceso a las dos redes que ve el servidor, una pasarela es precisamente para eso, unir dos o más redes.

----------

## chumi

Exacto, no me había fijado en que el servidor está haciendo NAT, por lo que en realidad el router no llega a ver para nada las direcciones de la red 192.168.0.x (el servidor cambia las cabeceras para que al router le llegue como origen la ip 20.0.2.x del servidor).

Las rutas de retorno serían necesarias para un escenario de routing real, sin NAT (masquerade).

Pero probablemente el propio router también esté haciendo NAT contra internet, y aunque eso no debería provocar ningún problema no se si es el escenario que buscas (atravesar dos NAT's para acceder al exterior).

Saludos!!

----------

## ZaPa

Hola.

Ok, pues ya está entonces ! ya he aclarado todas mis dudas.

Muchisimas gracias por vuestras respuestas y molestias tomadas.

Un saludo.

----------

