Realizar cambios permanentes en la tabla de enrutamiento

10

Tengo un Raspberry PI 2 modelo B con la versión de Raspbian Jessie y estoy tratando de llevar Internet desde mi PC a la Raspberry. Tengo 2 interfaces de red entre ellas, una es a través de Ethernet y la otra a través de Wifi. He configurado la dirección IP de Ethernet en Raspberry para que sea estática, porque tengo una pequeña red de computadoras en casa con direcciones IP estáticas y quiero que la frambuesa forme parte de ella. Como mi Internet es muy lento (uso un módem de acceso telefónico), no quiero compartir este Internet lento a través de la interfaz de Ethernet porque no quiero que todas las computadoras conectadas a esta red reduzcan mi velocidad de Internet. Como solo tengo la intención de llevar Internet a Raspberry, he creado un punto de acceso Wifi en mi PC que asigna dinámicamente una dirección IP a mi Raspberry (el software de punto de acceso tiene algún tipo de DHCP) y eso '

Pero entonces mi problema comienza, por defecto después de encenderlo (o si me desconecto y me conecto nuevamente), la Raspberry no se conecta a internet. Al escribir ifconfigme sale:

eth0     
Link encap:Ethernet  HWaddr b8:27:eb:4e:35:65  
inet addr:100.100.100.25  Bcast:100.100.100.255  Mask:255.255.255.0
inet6 addr: fe80::ba27:ebff:fe4e:3565/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

wlan0     
Link encap:Ethernet  HWaddr 74:da:38:55:f3:a2  
inet addr:192.168.137.201  Bcast:192.168.137.255  Mask:255.255.255.0
inet6 addr: fec0::12:c4f1:c3fc:eb1e:3153/64 Scope:Site
inet6 addr: 2002:be0f:9cea:12:1bc0:1969:c17d:f854/64 Scope:Global
inet6 addr: fe80::bdca:7255:2e27:8341/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

Cuando escribo route -nme sale:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         100.100.100.1   0.0.0.0         UG    202    0        0 eth0
0.0.0.0         192.168.137.1   0.0.0.0         UG    303    0        0 wlan0
100.100.100.0   0.0.0.0         255.255.255.0   U     202    0        0 eth0
192.168.137.0   0.0.0.0         255.255.255.0   U     303    0        0 wlan0

Aquí puede ver cómo la métrica de mi puerta de enlace de conexión Ethernet estática (100.100.100.1) es más pequeña que la métrica de mi puerta de enlace de conexión Wifi DHCP (192.168.137.1), por lo que mi Raspberry intenta obtener Internet a través de la interfaz incorrecta

después de escribir:

sudo route delete  default gateway 192.168.137.1 

y entonces :

sudo route add  default gateway 192.168.137.1

mi tabla de enrutamiento está fijada a:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.137.1   0.0.0.0         UG    0      0        0 wlan0
0.0.0.0         100.100.100.1   0.0.0.0         UG    202    0        0 eth0
100.100.100.0   0.0.0.0         255.255.255.0   U     202    0        0 eth0
192.168.137.0   0.0.0.0         255.255.255.0   U     303    0        0 wlan0

y la Raspberry puede acceder a internet.

Mis preguntas son:

  1. ¿Hay alguna manera de automatizar este proceso para que no tenga que hacerlo manualmente cada vez que enciendo la Raspberry?
  2. ¿Hay alguna manera de automatizarlo para que siempre reconozca que debe obtener Internet de Wifi independientemente del rango de IP proporcionado por el punto de acceso DCHP a esta interfaz?
  3. ¿Por qué se asignó automáticamente la métrica inferior a la interfaz Ethernet?

Ya he verificado la solución en ¿Cómo hacer que persista un cambio en la tabla de enrutamiento? pero no funciona para mí porque en Raspbian Jessie no editas directamente /etc/network/interfacessino que editas /etc/dhcpcd.confpara obtener la dirección IP estática

VMMF
fuente

Respuestas:

10

¿Hay alguna manera de automatizar este proceso para que no tenga que hacerlo manualmente cada vez que enciendo la Raspberry?

Eso no es necesario si la pregunta # 2 puede resolverse, y puede ...

¿Hay alguna manera de automatizarlo para que siempre reconozca que debe obtener Internet de Wifi independientemente del rango de IP proporcionado por el punto de acceso DCHP a esta interfaz?

En /etc/dhcpcd.confagregar

interface wlan0;
metric 200;

interface eth0
metric 300;

Esto asignará la métrica inferior a la interfaz WLAN, de modo que se elegirá una para las solicitudes de Internet.

¿Por qué se asignó automáticamente la métrica inferior a la interfaz Ethernet?

Porque esa es la forma en que se asignan las métricas de acuerdo con man dhcpcd.conf (5) :

 metric metric
         Metrics are used to prefer an interface over another one, lowest
         wins.  dhcpcd will supply a default metric of 200 +
         if_nametoindex(3).  An extra 100 will be added for wireless
         interfaces.
Thomas Weller
fuente
+1 Muchas gracias, todavía no tenía una respuesta. Estaba ejecutando un script manual cada vez que necesitaba hacer esto
VMMF
Tenga en cuenta que esto no funciona para conexiones que no son DHCP. Si tiene una conexión estática en / etc / network / interfaces, puede establecer la métrica de la puerta de enlace reemplazando la puerta de enlace xxx.xxx.xxx.xxx con la ruta ascendente, agregue la métrica predeterminada gw xxx.xxx.xxx.xxx ###
Sameer Puri
0

Lo que hago es simplemente hacer que se ejecute en el arranque.

Agregue sudo route delete defaulty sudo route add default gateway 192.168.137.1, en ese orden específico, en su /etc/init.d/rc.localarchivo.

Olvidé si /etc/init.d/rc.localJessie funciona de forma inmediata, o incluso si debes tocarlo o no, pero debería ser trivial encontrar otra solución (ya lo hice) .

Y esto resuelve el # 1.


Para priorizar las conexiones, le recomiendo que instale ifmetric. Luego, simplemente priorice sus conexiones en/etc/network/interfaces

La prioridad más alta es 0, el siguiente es 1, luego 2, y así sucesivamente.

iface eth0 inet dhcp
 metric 1

iface wlan0 inet static
 address 192.168.0.1
 netmask 255.255.255.0
 network 192.168.0.0
 metric 0

iface eth1 inet dhcp
 metric 2

Y eso es todo para el # 2.


Creo que el n. ° 3 sucedió porque los desarrolladores pensaron que WiFi es prioritario en entornos campesinos que no son usuarios de energía. Solo podía especular ya que no puedo encontrar ninguna información sobre esto.

PNDA
fuente