iptables: redirect трафика на другой порт
Добрый день. Суть вопроса: нужно перенаправить трафик от одного конкретного хоста с одного порта на другой (форвардить трафик куда-то дальше не нужно, нужно только принять его именно от этого хоста на нестандартном порту). Я прописал правило:
iptables -t nat -A PREROUTING -p udp --src 172.21.10.2 --dport 162 -j REDIRECT --to-ports 10150
tcpdump -i any port 10150
iptables -t nat -L -v -n --line-numbers
Chain PREROUTING (policy ACCEPT 35073 packets, 5126K bytes)
num pkts bytes target prot opt in out source destination
1 56 7112 REDIRECT udp -- eth2.2 * 172.21.10.2 0.0.0.0/0 udp dpt:162 redir ports 10150
Chain POSTROUTING (policy ACCEPT 289K packets, 53M bytes)
num pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 289K packets, 53M bytes)
num pkts bytes target prot opt in out source destination
Причем видно, что через правило редиректа какие-то пакеты проходят...
Список правил таблицы filter:
iptables -L -v -n --line-numbers
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 10G 4374G ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 81806 10M ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
3 1945K 200M ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
4 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:514
5 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:49
6 1163K 56M ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:49
7 17610 778K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:249
8 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:249
9 491 28508 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
10 482K 27M ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpts:10099:10200
11 1382K 107M ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:162
12 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:514
13 14437 5626K ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:10113
14 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:514
15 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:10150
16 3187 250K REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT 2565K packets, 825M bytes)
num pkts bytes target prot opt in out source destination
Таблица raw:
iptables -t raw -L -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
В /proc/net/nf_conntrack я вообще не вижу пакетов с udp:162 (то бишь snmp-trap'ов).
uname -a
Linux smarts-Nizhniy_Novgorod 2.6.32-642.11.1.el6.x86_64 #1 SMP Wed Oct 26 10:25:23 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.8 (Santiago)
iptables --version
iptables v1.4.7
Вопрос: ЧЯДНТ???