¿Cómo reenviar paquetes entre dos interfaces?

¿Cómo reenviar paquetes entre dos interfaces?

Mi computadora portátil (uso Ubuntu 13.10) está conectada a Internet mediante una conexión por cable con eth0ip 192.168.42.13y también actúa como una wifi hotspotcon wlan0la ip 192.168.1.1(usé airbase-ng para configurar la aplicación). Ahora tengo un dispositivo Android que necesita conectarse a ese wifi. Veo que mi Android puede conectarse hotspoty recibir las siguientes configuraciones de red del dhcpservidor que configuré. (Utilicé una llamada de herramientaInformación neta IIdesde PlayStore para ver los detalles a continuación en mi Android).

# My android network settings (connected to the wlan0 of my laptop):
ip address: 192.168.1.10
subnetmask: 255.255.255.0
gateway   : 192.168.1.254
ap-mac    : xx:xx:xx:xx:xx:xx

# My pc's eth0 configuration
ip address: 192.168.42.13
submetmask: 255.255.255.0
gateway   : 192.168.42.129
iface mac : yy:yy:yy:yy:yy:yy

# My pc's wlan0 (hotspot interface) configuration
ip address: 192.168.1.1
subnetmask: 255.255.255.0
gateway   : 192.168.1.1
iface mac : zz:zz:zz:zz:zz:zz

este hiloaquíhabla de un problema similar. Veo que necesito reenviar paquetes entre eth0una wlan0red para conectar los dispositivos de mi aplicación inalámbrica a Internet. Ahora¿Cómo reenvío los paquetes que recibo wlan0 to eth0y eth0 to wlan0para conectar mi dispositivo a Internet?

Respuesta1

Primero debe habilitar el reenvío de IP en su sistema. Para hacerlo sólo esta vez, use

sysctl -w net.ipv4.ip_forward=1

o

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

como raíz. Si quieres hacerlo permanente, edita

/etc/sysctl.conf

y agregue una línea que contenga

net.ipv4.ip_forward = 1

Esto se aplicará al reiniciar o cuando ejecute

sysctl -p /etc/sysctl.conf

Una vez hecho esto, probablemente necesite conexiones NAT, ya que es poco probable que su enrutador sepa que se puede acceder a la red 192.168.1.0/24 a través de 192.168.42.13. Si 192.168.42.13 es estático, puedes usar

iptables -t nat -A POSTROUTING -i wlan0 -s 192.168.1.0/24 -j SNAT --to-source 192.168.42.13

de lo contrario usar

iptables -t nat -A POSTROUTING -i wlan0 -s 192.168.1.0/24 -j MASQUERADE

Comprobar elUbuntu IptablesCómopara saber cómo guardar esas reglas al reiniciar.

información relacionada