В зависимости от конфигурирования в Вашем/etc/nssswitch.conf файле можно использовать его для разрешения доменного имени прежде, чем обратиться к другой системе, обычно DNS.
hosts: files dns
Тот признак, что сначала это должно использовать локальные файлы (/etc/hosts) и затем запросить DNS.
Так, обычно, система направит все запросы имени хоста через/etc/hosts сначала, прежде, чем запросить DNS.
Используйте проксирование netsed и iptables.
iptables -t nat -D PREROUTING -s yourhost -d desthost -p tcp --dport 80 -j REDIRECT --to 10101
Затем запустите:
netsed tcp 10101 desthost 80 s/text-A/text-B
NetSED - небольшая и удобная утилита, предназначенная для изменения в реальном времени содержимого пакетов, пересылаемых через вашу сеть. Это действительно полезно для изменения, подделки или обработки сетевых пакетов. NetSED поддерживает:
аудит протокола черного ящика - когда есть два или более проприетарных ящика, обменивающихся данными с использованием какого-либо недокументированного протокола. Принудительно изменяя текущие передачи, вы сможете проверить, можно ли считать исследуемое приложение безопасным.
эксперименты по генерации нечеткости, тесты целостности - всякий раз, когда вы проводите тесты стабильности приложения, чтобы увидеть, как оно заботится о целостности данных; 1233] и другие распространенные варианты использования: ввод в заблуждение, фильтрация контента, преобразование протокола - все, что лучше всего подходит для вашей задачи.
You can do exactly this by using iptables to transparently proxy connections through a squid proxy, and then having squid re-write the http content for you.
iptables
+ использование libnetfilter_qu - еще один вариант, который сделает то, что вы хотите:
"... [повторно вставить] измененные пакеты в ядро Подсистема nfnetlink_queue. "
Вероятно, это даст вам наибольшую расширяемость, так как программирование программного обеспечения зависит от вас.
Также доступна оболочка python .