URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 97969
[ Назад ]

Исходное сообщение
"Вставить опции в заголовок TCP/IP пакета"

Отправлено Diozan , 17-Май-24 08:27 
Добрый день, коллеги!

Возникла потребность в заголовки некоторых TCP/IP пакетов, проходящих через Linux маршрутизатор, добавить поле Options. Содержимое поля известно и статично. Каким инструментом это можно сделать, например, может, через пока неизвестное мне расширение iptables? Что бы пакет входил в него как есть, а выходил с уже с прикрученным Options.


Содержание

Сообщения в этом обсуждении
"Вставить опции в заголовок TCP/IP пакета"
Отправлено pavel_simple. , 17-Май-24 15:09 
> Добрый день, коллеги!
> Возникла потребность в заголовки некоторых TCP/IP пакетов, проходящих через Linux маршрутизатор,
> добавить поле Options. Содержимое поля известно и статично. Каким инструментом это
> можно сделать, например, может, через пока неизвестное мне расширение iptables? Что
> бы пакет входил в него как есть, а выходил с уже
> с прикрученным Options.

из дефолтного наверное только это. Остальное наверное через написание target для netfilter
https://www.man7.org/linux/man-pages/man8/tc-pedit.8.html
https://www.man7.org/linux/man-pages/man8/tc-actions.8.html


"Вставить опции в заголовок TCP/IP пакета"
Отправлено Tron is Whistling , 18-Май-24 21:48 
Емнип ничем. Да ещё и MTU учитывать...

"Вставить опции в заголовок TCP/IP пакета"
Отправлено Tron is Whistling , 18-Май-24 21:49 
Самое реальное правильно подсказали - писать свой target или плагин к tc.

"Вставить опции в заголовок TCP/IP пакета"
Отправлено Аноним , 20-Май-24 00:02 
https://serverfault.com/questions/1056031/is-there-a-way-to-...

I've eventually done it with two iptables modules - ipt-so and iptables-OVERWRITE, they can be found on Github.

ipt-so module adds ability to filter packets based on their 130 option values (and hence, mark them to modify afterwards)

OVERWRITE simply writes specified byte in packet at specified offset

That's not a proper way and it's very unstable. Also, I'm unsure about performance, but it's only possible way without implementing special module for netfilter.