I am trying to use DNAT on a new custom Linux target, but I get an error with the following basic command:#iptables -t nat -A PREROUTING -d 10.110.0.250 -p tcp --dport 9090 -j DNAT --to 10.110.0.239:80$iptables: No chain/target/match by that name.I think all modules are correctly loaded:# lsmod  | grep ipipt_MASQUERADE 1686 1 - Live 0xbf15c000iptable_nat 2396 1 - Live 0xbf150000nf_conntrack_ipv4 11354 1 - Live 0xbf149000nf_defrag_ipv4 1331 1 nf_conntrack_ipv4, Live 0xbf145000nf_nat_ipv4 3401 1 iptable_nat, Live 0xbf141000nf_nat 13364 4 ipt_MASQUERADE,xt_nat,iptable_nat,nf_nat_ipv4, Live 0xbf138000nf_conntrack 72079 6 ipt_MASQUERADE,xt_conntrack,iptable_nat,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat, Live 0xbf11b000ip_tables 10836 1 iptable_nat, Live 0xbf114000x_tables 16429 4 ipt_MASQUERADE,xt_conntrack,xt_nat,ip_tables, Live 0xbf10a000The forwarding is active:# cat /proc/sys/net/ipv4/ip_forward1strace doesn't give me any clue about the problem: # ...socket(PF_LOCAL, SOCK_STREAM, 0)        = 3bind(3, {sa_family=AF_LOCAL, sun_path=@xtables}, 10) = 0socket(PF_INET, SOCK_RAW, IPPROTO_RAW)  = 4fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0getsockopt(4, SOL_IP, 0x40 /* IP_??? */, nat\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0..., [84]) = 0getsockopt(4, SOL_IP, 0x41 /* IP_??? */, nat\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0..., [992]) = 0setsockopt(4, SOL_IP, 0x40 /* IP_??? */, nat\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0..., 1264) = -1 ENOENT (No such file or directory)close(4)                                = 0write(2, iptables: No chain/target/match ..., 46iptables: No chain/target/match by that name.) = 46exit_group(1)                           = ?+++ exited with 1 +++What is going wrong?[EDIT]I found that if I remove the destination port the command is working iptables -t nat -A PREROUTING -d 10.110.0.250 -p tcp -j DNAT --to 10.110.0.239:80[/EDITThanks.
iptables DNAT: 'No chain/target/match by that name'
linux;iptables;nat;netfilter
The problem was a missing module XT_TCPUDPThere is the full list of dynamic loaded module for my command :xt_nat 1527 1 - Live 0xbf12f000xt_tcpudp 1961 1 - Live 0xbf12b000iptable_nat 2396 1 - Live 0xbf127000nf_conntrack_ipv4 11354 1 - Live 0xbf120000nf_defrag_ipv4 1331 1 nf_conntrack_ipv4, Live 0xbf11c000nf_nat_ipv4 3401 1 iptable_nat, Live 0xbf118000nf_nat 13364 3 xt_nat,iptable_nat,nf_nat_ipv4, Live 0xbf10f000nf_conntrack 72079 4 iptable_nat,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat, Live 0xbf0f2000ip_tables 10836 1 iptable_nat, Live 0xbf0eb000x_tables 16429 3 xt_nat,xt_tcpudp,ip_tables, Live 0xbf0e1000