Não tenho certeza se este é o lugar certo para postar esta pergunta.
Meu problema é realmente simples, tenho meu dispositivo Android usando uma conexão de dados e uma configuração de ponto de acesso neste dispositivo.
Eu conecto minha caixa linux a este hotspot, sem problemas.
Meu pc recebe o endereço 192.168.1.234 em wlan0
Meu dispositivo Android é 192.168.1.1 em wlan0
= > wlan0 UP 192.168.1.1/24
Eu posso fazer ping nos endereços de Wi-Fi locais do lado . No entanto, eu não posso pingar um servidor localizado na internet do meu pc.
Eu sei que há algo em encaminhar o tráfego de um lado para o outro, mas não consigo descobrir como fazer isso.
Eu fiz até agora:
No dispositivo android
$ echo 1 > /proc/sys/net/ipv4/ip_forward
$ iptables -t nat -F
$ iptables -t nat -A POSTROUTING -j MASQUERADE
Nada de especial no pc, exceto adicionar uma rota para um servidor especial. Eu quero que o tráfego passe pela wlan0.
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.162.105.1 0.0.0.0 UG 0 0 0 eth0
10.162.105.0 * 255.255.255.0 U 0 0 0 eth0
158.x.x.x 192.168.1.1 255.255.255.255 UGH 0 0 0 wlan0
192.168.1.0 * 255.255.255.0 U 0 0 0 wlan0
192.168.25.0 * 255.255.255.0 U 0 0 0 vmnet1
192.168.29.0 * 255.255.255.0 U 0 0 0 vmnet8
No lado do Android, posso ver o tráfego vindo do meu pc, ou seja,
03:50:17.426155 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 634, length 64
03:50:18.427529 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 635, length 64
03:50:19.428445 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 636, length 64
03:50:20.425667 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 637, length 64
03:50:21.426491 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 638, length 64
03:50:22.425759 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 639, length 64
03:50:23.425759 IP 192.168.1.234 > 158.x.x.x: ICMP echo request, id 5782, seq 640, length 64
mas nunca vê uma resposta, como se os pacotes nunca saíssem do dispositivo android.
O que estou fazendo de errado?
Obrigado pela ajuda.