Я использую систему Linux (на основе Debian), в которой включена переадресация IP (/proc/sys/net/ipv4/ip_forward установлен в 1). Я могу читать входящие пакеты с помощью программы необработанных сокетов, но я хочу изменить их содержимое, прежде чем они будут перенаправлены. В этой ссылке упоминается, что я могу использовать iptables REDIRECT rule
для отправки входящих пакетов на порт, который прослушивает моя программа, но я не нашел никакой информации о том, как именно это должно быть сделано. В основном я хочу знать:
Как я должен пересылать пакеты после их изменения. Нужно ли отправлять их вручную из программы на их адрес назначения после их получения и изменения?
Что я должен делать, если программа не прослушивает определенный порт (например, программа связана только с заголовками IP пакетов).
В случае, если это имеет значение, прием и пересылка выполняются на одном интерфейсе (wlan0). Я должен пересылать пакеты и получать пакеты от устройств в той же WLAN.