Подскажите пожалуйста как программно можно заменить ip адресс пакета на другой ip адресс? Меня интересует сам алгоритм замены, или пример, или где про это можно прочитать.
Как вариант можно использовать библиотеку pcap для перехвата пакетов с последующей модификацией нужных полей в заголовках и выбрасыванием исправленного пакета на нужный интерфейс
пишишь свой сетевой обработчик и регистрируешь его ETH_P_IP а в обработчике делаешь замену IP и пересчет чексуммы(модуль ядра) если Линукс то смотри книгу Linux Сетевая Архитектура. Для других ОС немного подругому.