iptables DNAT: "해당 이름과 일치하는 체인/타겟/일치가 없습니다."

iptables DNAT: "해당 이름과 일치하는 체인/타겟/일치가 없습니다."

새로운 사용자 정의 Linux 대상에서 DNAT를 사용하려고 하는데 다음 기본 명령을 사용할 때 오류가 발생합니다.

#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.

모든 모듈이 올바르게 로드된 것 같습니다.

# lsmod  | grep ip
ipt_MASQUERADE 1686 1 - Live 0xbf15c000
iptable_nat 2396 1 - Live 0xbf150000
nf_conntrack_ipv4 11354 1 - Live 0xbf149000
nf_defrag_ipv4 1331 1 nf_conntrack_ipv4, Live 0xbf145000
nf_nat_ipv4 3401 1 iptable_nat, Live 0xbf141000
nf_nat 13364 4 ipt_MASQUERADE,xt_nat,iptable_nat,nf_nat_ipv4, Live 0xbf138000
nf_conntrack 72079 6 ipt_MASQUERADE,xt_conntrack,iptable_nat,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat, Live 0xbf11b000
ip_tables 10836 1 iptable_nat, Live 0xbf114000
x_tables 16429 4 ipt_MASQUERADE,xt_conntrack,xt_nat,ip_tables, Live 0xbf10a000

전달이 활성 상태입니다.

# cat /proc/sys/net/ipv4/ip_forward
1

strace문제에 대한 단서를 제공하지 않습니다.

# ...
socket(PF_LOCAL, SOCK_STREAM, 0)        = 3
bind(3, {sa_family=AF_LOCAL, sun_path=@"xtables"}, 10) = 0
socket(PF_INET, SOCK_RAW, IPPROTO_RAW)  = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
getsockopt(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]) = 0
getsockopt(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]) = 0
setsockopt(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)                                = 0
write(2, "iptables: No chain/target/match "..., 46iptables: No chain/target/match by that name.
) = 46
exit_group(1)                           = ?
+++ exited with 1 +++

무엇이 잘못되었나요?

[편집하다]

대상 포트를 제거하면 명령이 작동하는 것으로 나타났습니다.

iptables -t nat -A PREROUTING -d 10.110.0.250 -p tcp -j DNAT --to 10.110.0.239:80

[/편집 감사합니다.

답변1

문제는 모듈이 누락된 것입니다.XT_TCPUDP

내 명령에는 동적으로 로드된 모듈의 전체 목록이 있습니다.

xt_nat 1527 1 - Live 0xbf12f000
xt_tcpudp 1961 1 - Live 0xbf12b000
iptable_nat 2396 1 - Live 0xbf127000
nf_conntrack_ipv4 11354 1 - Live 0xbf120000
nf_defrag_ipv4 1331 1 nf_conntrack_ipv4, Live 0xbf11c000
nf_nat_ipv4 3401 1 iptable_nat, Live 0xbf118000
nf_nat 13364 3 xt_nat,iptable_nat,nf_nat_ipv4, Live 0xbf10f000
nf_conntrack 72079 4 iptable_nat,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat, Live 0xbf0f2000
ip_tables 10836 1 iptable_nat, Live 0xbf0eb000
x_tables 16429 3 xt_nat,xt_tcpudp,ip_tables, Live 0xbf0e1000

관련 정보