Reduza o seu conjunto de regras ao mínimo e comece a testar a partir daí. Existem algumas regras redundantes que podem estar em conflito. Eu começaria com:
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A PREROUTING -i eth0 -p udp -m udp --dport 11108 -j DNAT --to-destination 169.254.1.2:11108
Eu também usaria watch
para ver quais cadeias / regras os pacotes estão atingindo
watch -n1 iptables -vnL
watch -n1 iptables -vnl -t nat
O endereço APIPA não é necessariamente a melhor coisa a ser usada pelo cliente, mas isso não deve afetar o recebimento de pacotes.