Você precisa colocar o SNAT em uma nova cadeia separada.
Então, onde você tem o SNAT agora, você precisa escrever uma regra que teste o IP de destino e, se for equivalente àquele para o qual você quer fazer isso, pular para a cadeia que você criou acima.
Perto do começo do seu arquivo iptables
/sbin/iptables -t nat -N SNATChain
para criar uma cadeia na tabela nat
chamada "SNATChain"
Em seguida, substitua isso:
#everything to yahoo be snatted
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 10.216.11.40 --destination yahoo.com
com isso:
#if the destination IP matches yahoo, throw it to SNATChain
/sbin/iptables -t nat -A POSTROUTING -o eth0 --destination yahoo.com -j SNATChain
e, em seguida, preencha seu SNATChain com a regra que você deseja
/sbin/iptables -t nat -A SNATChain -o eth0 -j SNAT --to 10.216.11.40
Eu acredito que é como fazer isso. Já faz algum tempo desde que eu mexi com iptables
.