Acceda a diferentes IP de subred en dos interfaces diferentes

Acceda a diferentes IP de subred en dos interfaces diferentes

Estoy intentando configurar mi Raspberry Pi para que me dé acceso a dispositivos conectados a eth0 o wlan1.

La función deseada es esta:

  • El usuario se conecta al RPi AP a través de wlan1 y recibe una IP (192.168.4.x)
  • Dispositivo separado que se conecta a RPi a través de eth0 y recibe una IP (192.168.5.x)
  • El usuario puede acceder a la interfaz de configuración del dispositivo conectado eth0 a través de su dirección IP local

He usado dnsmasq para configurar los servidores DHCP en cada interfaz y están felices de proporcionar IP;

# dnsmasq.conf
interface=wlan1
dhcp-range=wlan1,192.168.4.2,192.168.4.99,24h

interface=eth0
dhcp-range=eth0,192.168.5.1,192.168.5.99,24h

listen-address=::1,127.0.0.1,192.168.5.1,192.168.4.1

También actualicé mis iptables para reenviar el tráfico entre las interfaces;

sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -i wlan1 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o wlan1 -j ACCEPT

Sin embargo, todavía estoy un poco perdido cuando se trata de acceder a las diferentes IP. Creo que necesito configurar algunas rutas, pero me cuesta descubrir cómo implementar esto exactamente.

Hacer ping a una IP 192.168.4.x y 192.168.5.x a través de una conexión wlan0: ingrese la descripción de la imagen aquí

Y desde una conexión ...4.xy ...5.x de eth0: ingrese la descripción de la imagen aquí

Salidas de iptables y netstat:

pi@rak-gateway:~ $ sudo iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
pi@rak-gateway:~ $ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 wlan0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 wlan0
192.168.4.0     0.0.0.0         255.255.255.0   U         0 0          0 wlan1
192.168.5.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

Respuesta1

Sin embargo, todavía estoy un poco perdido cuando se trata de acceder a las diferentes IP. Creo que necesito configurar algunas rutas, pero me cuesta descubrir cómo implementar esto exactamente.

Lo que hay que recordar sobre el enrutamiento es quecada computadora en la rutaDebe saber dónde enviar un paquete en particular.

Entonces, si A se conecta a RaspPi como 192.168.4.x y B como 192.168.5.y, entonces

  • ¿Debe saber que los paquetes a 192.168.5.*/24 van al 192.168.4.? dirección del RaspPi.
  • B, cuando responde, debe saber que los paquetes a 192.168.4.*/24 van al 192.168.5.? dirección del RaspPi.

Obtendrá esto de forma gratuita si A y B solo están conectados a RaspPi y tienen la dirección IP de RasPi configurada como su puerta de enlace predeterminada. Si este no es el caso, por ejemplo porque A y B también están conectados a otra cosa, o porque no configuró dnsmasqpara anunciar la puerta de enlace predeterminada, entonces necesita configurar rutas.en A resp. B.

Puede hacer esto estáticamente directamente en A o B, o usar DHCP para distribuir las rutas (primer enlace de Google para obtener instruccionesaquí, google para más).

En cualquier caso, la depuración debería implicarmirando rutastanto en A como en B (en Linux, puede usar ip route get 1.2.3.4, donde 1.2.3.4 es la dirección de destino).

Respuesta2

Gracias por tu actualizacion.

Lo primero que sugeriría es que arregle su eth0rango de DHCP para que comience en 192.168.5.2; actualmente parece comenzar en 192.168.5.1.

Lo siguiente que debemos publicar es la tabla de enrutamiento de un dispositivo conectado a través de eth0, y la tabla de enrutamiento de un dispositivo conectado a través de wlan1.

Asegúrese de que ambos dispositivos hayan realizado DHCP correctamente y tengan direcciones en las subredes que espera antes de obtener sus tablas de enrutamiento.

información relacionada