O patch ROUTE é um patch do kernel que precisa ser aplicado ao código-fonte do Linux Kernel para que o iptables funcione: você pode encontrar aqui todas as informações relevantes. No entanto, os patches detalhados nesta página da Web são bem antigos (2005) e não tenho certeza se funcionam corretamente em novas versões do kernel.
Em vez disso, as novas extensões do iptables estão detalhadas aqui e essas do funcionam . Em particular, afirma-se que:
iptables can use extended target modules: the following are included in the standard distribution.
e, portanto, eles devem estar disponíveis para qualquer pessoa com uma versão padrão do Linux. Uma das extensões de destino é o TEE, para o qual eles afirmam:
TEE
The TEE target will clone a packet and redirect this clone to another machine on the local network segment. In other words, the nexthop must be the target, or you will have to configure the nexthop to forward it further if so desired.
--gateway ipaddr
Send the cloned packet to the host reachable at the given IP address. Use of 0.0.0.0 (for IPv4 packets) or :: (IPv6) is invalid.
To forward all incoming traffic on eth0 to an Network Layer logging box:
-t mangle -A PREROUTING -i eth0 -j TEE --gateway 2001:db8::1
O nome TEE é claramente destinado a lembrar um dos comandos tee padrão, que lê a entrada padrão e clona a saída (que vai para a saída padrão) para um arquivo especificado pelo usuário. Mesma coisa aqui com pacotes: os pacotes aos quais a regra se aplica são duplicados, um sendo enviado para o destino pretendido, enquanto o clone recém-cunhado é enviado para o alvo de espionagem.
Assim, para clonar todo o tráfego de entrada e saída do pc 192.168.1.15 no seu roteador (digamos, 192.168.1.1). e redirecionar para um pc espião 192.168.1.100, use:
iptables -t mangle -A PREROUTING -d 192.168.1.15 -j TEE --gateway 192.168.1.100
iptables -t mangle -A PREROUTING -s 192.168.1.15 -j TEE --gateway 192.168.1.100