C ++ перенаправление iptables, формирующее отдельные пакеты

У меня весь трафик с порта 50 перенаправлен на 5050 с помощью

iptables -t nat -A POSTROUTING -p udp --dport 50 -j REDIRECT --to-port 5050

Я слушаю, используя RAW Socket на 5050, и вижу IP-пакеты от 0.0.0.0:50 до 0.0.0.0:5050. Исходный адрес назначения, очевидно, отсутствует, поскольку это, кажется, отдельный пакет перенаправления с порта 50 на порт 5050.

Если исходный пакет должен был перейти на a.b.c.d: 50, как я могу получить этот IP-адрес? Как определить адрес получателя, на который должно было быть отправлено сообщение, чтобы я мог переслать его туда?

Я ценю вашу помощь.

П.С .: Я не хочу использовать libipq, потому что по какой-то причине он не работает, и я не хочу тратить больше времени на то, чтобы заставить его работать.

Ответы на вопрос(1)

Ваш ответ на вопрос