Redirecionamento de Iptables

2

Eu configurei um hotspot pessoal usando o Hostapd. Mas este hotspot não está conectado à internet, mas eu tenho o Apache instalado nele. O que eu estou tentando alcançar é redirecionar todos os clientes (que estão conectados ao meu hotspot) para a minha página do apache quando eles visitam outro site. Então basicamente redirecionar todo o tráfego para a minha página do Apache.

O que tentei é:

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.150.1:80

Mas com este iptable, os clientes só são redirecionados para a minha página da Apache quando compartilho uma conexão de internet com meu hotspot. Mas sem a conexão com a internet eles não são redirecionados.

    
por Junaid Gondel 07.09.2014 / 15:44

1 resposta

0

Provavelmente, o motivo é porque antes de se conectar a um site, o navegador precisa resolver o nome ao qual deseja se conectar por meio de uma solicitação de DNS. Como o ponto de acesso não está conectado à Internet, não haverá resposta com nenhum IP e o navegador não tentará mais.

Para alcançar o que você está planejando, você deve criar um servidor DNS, capturar as solicitações DNS com uma regra iptable semelhante (já que alguns clientes não usarão o servidor DNS especificado pelo ponto de acesso) e responder a todos com o seu apache. IP.

Se você usar bind como o servidor DNS, poderá definir uma zona mestre denominada "." no seu named.conf (comente a zona padrão "." com as informações das dicas). Em seguida, crie um arquivo de zona que contenha um registro curinga para o IP do apache.

    
por 28.09.2014 / 00:21