# No añade un gateway al iniciar el sistema (resuelto)

## Darksidex25

Hola de nuevo (hoy parece mi día de dudas),

He actualizado el sistema hace un par de días, y ahora cuando arranca el ordenador tengo que añadir el gateway a mano, sino no hay conexión  :Sad: 

El caso es que según se está iniciando aparece el mensaje de que se ha añadido el gateway.

¿Alguna pista?

----------

## inconexo

Cuando lo inicies, comprueba cual es tu gateway:

```
/sbin/route -n
```

te devolvera algo como:

```
wells asterisk # /sbin/route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

172.23.8.237    192.168.79.1    255.255.255.255 UGH   1      0        0 eth1

172.26.6.13     192.168.79.1    255.255.255.255 UGH   1      0        0 eth1

172.26.6.14     192.168.79.1    255.255.255.255 UGH   1      0        0 eth1

192.168.79.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1

191.100.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0

127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo

0.0.0.0         191.100.10.40   0.0.0.0         UG    0      0        0 eth0
```

Esta es la tabla de enrutados de tu equipo. La linea que empieza por "0.0.0.0" contiene el gateway por defecto. Mira si la interface y la IP del gateway son correctas, si no tienes mas de una linea como esta... 

A partir de aqui:

1) Para subir a mano el gateway debes hacer:

```
route add -net default gw <ipdelrouter>
```

2) Para hacer los cambios permanentes en el /etc/conf/net debes tener algo semejante a:

```
modules=( "ifconfig" )

config_eth0=( "191.100.10.50 netmask 255.255.0.0" )

routes_eth0=( "default via 191.100.10.40" )
```

Si no funciona... danos mas detalles: si usas dhcp, si tienes algo en /etc/conf.d/local.start,etc...

Un saludo!

----------

## Stolz

Estaría bien conocer el archivo /etc/conf/net para ver si en la actualización se ha perdido o cambiado algo

----------

## Darksidex25

La primera parte por ahora no la puedo saber, así que cuando me acerque por casa lo reiniciaré y lanzaré el comando.

En mi /etc/conf.d/net tengo lo siguiente y doy fé de que no lo he tocado (¿igual ahí el problema?) desde hace...

```

config_eth0=( "192.168.1.1 netmask 255.255.255.0" )

routes_eth0=( "default gw 192.168.1.100" )

```

El caso es que mirando el handbook, para ver si venía algo, vi que en la parte de la red, aquí http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=8#doc_chap2 decía lo mismo que inconexo para la opción "routes_eth0", que done yo tengo "gw", parece ser que hay que poner "via".

No me he arriesgado a cambiarlo porque no sabía si era el problema, pero de serlo, ¿no debería haberme salido que no se ha podido añadir el gateway?

----------

## Inodoro_Pereyra

 *Darksidex25 wrote:*   

> La primera parte por ahora no la puedo saber, así que cuando me acerque por casa lo reiniciaré y lanzaré el comando.
> 
> En mi /etc/conf.d/net tengo lo siguiente y doy fé de que no lo he tocado (¿igual ahí el problema?) desde hace...
> 
> ```
> ...

 

Cuando se ingresa el comando a mano la sintaxis es tal como dice inconexo mas arriba, en el /etc/conf.d/net de nuevo como dice inconexo, reemplaza gw por via y reinicia net.eth0.

Con eso debería bastar.

Salud!

----------

## Darksidex25

Por partes, que me lío.

Consigo poner en marcha la conexión a internet, es lo primero que estoy haciendo desde que tengo este problema (ayer a la tarde), con "routes add default gw 192.168.1.100", y sin ningún problema (funcionar, funciona).

Esta parte la tengo solucionada.

Sobre la segunda, la de porqué no hace lo que debe en el arranque, pues cambiaré esa línea, y a ver que pasa, a la noche haré la prueba.

Gracias por las respuestas

----------

## Coghan

 *Inodoro_Pereyra wrote:*   

> Cuando se ingresa el comando a mano la sintaxis es tal como dice inconexo mas arriba, en el /etc/conf.d/net de nuevo como dice inconexo, reemplaza gw por via y reinicia net.eth0.
> 
> Con eso debería bastar.

 

Entiendo que en algún momento cambiaron la forma "normal" de configurar el gateway, pero creo que mantuvieron la compatibilidad con la forma anterior, yo aún lo tengo con "gw" y sigue funcionando bien.

----------

## Darksidex25

 *Coghan wrote:*   

>  *Inodoro_Pereyra wrote:*   Cuando se ingresa el comando a mano la sintaxis es tal como dice inconexo mas arriba, en el /etc/conf.d/net de nuevo como dice inconexo, reemplaza gw por via y reinicia net.eth0.
> 
> Con eso debería bastar. 
> 
> Entiendo que en algún momento cambiaron la forma "normal" de configurar el gateway, pero creo que mantuvieron la compatibilidad con la forma anterior, yo aún lo tengo con "gw" y sigue funcionando bien.

 

Supongo, porque con "via" sigue sin funcionar, vamos, que sigo teniendo que meter a mano "route add ...".

Alguna idea más?

----------

## jruiz

Buenas!

Ayer tuve exactamente el mismo problema... Tenía un fichero de configuración muy parecido al tuyo:

```

modules=( "ifconfig" )

config_eth0=( "10.0.156.122 netmask 255.255.248.0" )

routes_eth0=( "default via 10.0.152.1" )

```

pero con los init scripts no me fijaba bien la ruta por defecto, necesitaba hacerlo a mano...

Tras lanzar el script de inicio, las rutas me quedaban así:

```

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

default         10.0.152.1      255.255.255.255 UGH   0      0        0 eth0

10.0.152.0      *               255.255.248.0   U     0      0        0 eth0

loopback        *               255.0.0.0       U     0      0        0 lo

```

y no tenía salida por red... tras usar el comando route manualmente obtenía:

```

jruiz # route add default gw 10.0.152.1

jruiz # route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

default         10.0.152.1      255.255.255.255 UGH   0      0        0 eth0

10.0.152.0      *               255.255.248.0   U     0      0        0 eth0

loopback        *               255.0.0.0       U     0      0        0 lo

default         10.0.152.1      0.0.0.0         UG    0      0        0 eth0

```

y la red funcionaba, aunque bastante más lenta de lo normal.

Como ves, la diferencia está en que los init scripts fijaban la flag "H" al router, que mirando en las manpages ví que significaba que el destino es un host.

Al final, trasteando un poco con el fichero de configuración, conseguí arreglarlo añadiendo la máscara 0.0.0.0 al router. Ahora mi /etc/conf.d/net.eth0 está así:

```

modules=( "ifconfig" )

config_eth0=( "10.0.156.122 netmask 255.255.248.0" )

routes_eth0=( "default via 10.0.152.1 netmask 0.0.0.0" )

```

y funciona   :Very Happy: 

Espero que te ayude.

Saludos!

----------

## Darksidex25

Ok, gracias  :Smile: 

A ver si lo puedo probar esta tarde y os comento

----------

## paynalton

Hace poco tuve un problema parecido aunque no con gentoo.

En efecto para fijar un gateway tanto la red de destino como la máscara deben ser 0.0.0.0, así todos los paquetes dirigidos a cualquier equipo de cualquier red que no se pueda resolver localmente son enviados al gateway quien los enrutará a internet o a las rutas que tenga establecidas.

----------

## Darksidex25

Bueno, pues ya puedo confirmar satisfactoriamente  :Smile:  que todo era cuestión de añadir netmask 0.0.0.0 a la dichosa línea.

Gracias a todos por vuestra ayuda, así da gusto.

----------

