Сабж. Есть 2 сетевки, eth0 - смотрит в мир, eth1 - смотрит во внутреннюю подсеть, IP 192.168.1.1
Запущен DHCP-сервер, который раздает по eth1 айпишники (192.168.1.10-192.168.1.239). Нужно пробросить порт 1234 во внутреннюю подсеть, дабы юзеры могли созерцати все прелести iptv. Вроде как порт проброшен, но не пашет.
собственно скрипт iptables для NAT:
#!/bin/bash
#################################################################
# reset the default policies in the filter table. #
#################################################################
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#################################################################
# reset the default policies in the nat table. #
#################################################################
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
#################################################################
# reset the default policies in the mangle table. #
#################################################################
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
#################################################################
# flush all the rules in the filter and nat tables. #
#################################################################
iptables -F
iptables -t nat -F
iptables -t mangle -F
#################################################################
# erase all chains that's not default in filter and nat table. #
#################################################################
iptables -X
iptables -t nat -X
iptables -t mangle -X
#################################################################
iptables -I INPUT 1 -i eth1 -j ACCEPT
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.1.0/255.255.255.0 -j ACCEPT
#################################################################
# Drop ports #
#################################################################
iptables -A INPUT -i eth0 -p tcp -m multiport --dports 111,135,136,137,138,139,445,953,1723,2628 -j REJECT --reject-with icmp-port-unreachable
#################################################################
# IPTV #
#################################################################
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 1234 -j DNAT --to-destination 192.168.1.2-192.168.1.254
iptables -A FORWARD -d 192.168.1.0/24 -p udp --dport 1234 -j ACCEPT
#################################################################
# Masquerade #
#################################################################
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE