Como você descreveu, isso não pode ser feito com iptables
do seu roteador. iptables
só opera em pacotes sendo roteados através do seu roteador (bom nome, hein?). Os pacotes que vão de 2 hosts na mesma rede física têm todo o seu encaminhamento pelos próprios hosts; não há necessidade de passar pelo seu roteador.
Se 192.168.1.42
não existir realmente, você poderia dar a 192.168.1.198
um segundo endereço IP de 'alias'. Ou até mesmo fornecer a terceira máquina o alias ip e encaminhar o tráfego dela para 192.168.1.198
.