У меня проблема NAT с UDP и трансляцией:

Конфигурация iptables: (перенаправление основного порта на тот же сервер, UDP 80 на 8080)

iptables -t nat -A PREROUTING -p udp --dport 80 -j REDIRECT --to-port 8080

Сценарий:

192.168.0.1:1234 broadcast "hello" to 192.168.0.255:80
192.168.0.2:80 receives (NAT) to port 8080
192.168.0.2:8080 answers "I'm here !" to sender (192.168.0.1:1234)
192.168.0.1:1234 get "I'm here" with the Source IP 192.168.0.255:80

Проблема: мне нужен исходный IP 192.168.0.2:80 вместо широковещательной 192.168.0.255:80, как я могу это сделать?

Я уже пытался POSTROUTING SNAT изменить 192.168.0.255 на 192.168.0.2, но пакет не входит в таблицу.

1 ответ1

1

Из-за различных странных поведений я наконец использовал socat для перенаправления портов и больше не проблема (он съедает больше ресурсов, но без проблем)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .