
Minha rede está assim:
PC1 >––––– [Router1 (Wlan)] ––––––––– [Router2] –––––––––> Internet
^ |
x +––––––< PC2
No PC 1 tudo funciona bemexcetoque não recebo nenhuma mensagem «226 Transferência concluída». respostas via FTP. Isso não acontece no PC 2. (Na verdade, a mesma máquina).
O que eu quero fazer (também para entender melhor o assunto) é colocar meu laptop entre o Roteador1 e o Roteador2 e jogar proxy. Para ver se o pacote 226 realmente chegaria ao Roteador1.
A tentativa até agora é a seguinte (laptop na posição marcada por x)
ifconfig eth0 192.168.1.33 netmask 255.255.255.0 up # Goes to Router2
ifconfig eth1 192.168.2.2 netmask 255.255.255.0 up
route add default gw 192.168.1.1 dev eth0
echo "1" > /proc/sys/net/ipv4/ip_forward
Configuração do roteador2:
Static IP: 192.168.2.4/24
Gateway: 192.168.2.2
DNS: 192.168.2.2
Agora, ao executar ping em qualquer endereço na WWW, recebo umHost de destino inacessível. Como configuro meu laptop (e o roteador) corretamente para que o tráfego seja proxy para que eu possa examiná-lo, por exemplo, com o Wireshark?
Responder1
Através do milagre debrctl. Isso configura pontes Linux e é o que você precisa para fazer o que procura. Uma sequência de comandos seria semelhante a:
brctl addbr snooper
brctl addif snooper eth0 eth1
ifconfig snooper up
Isso transforma seu laptop em um switch de 2 portas e funciona melhor se o roteador WLAN e o roteador WAN estiverem conectados diretamente ao seu laptop. Os pacotes chegam por uma porta e saem pela outra. Você pode farejar qualquer uma das interfaces.
Para diversão extra, você pode até usar regras de iptables na ponte para filtrar pacotes!