Вы можете обнаружить, что подход к вашим требованиям с другой точки зрения удовлетворит ваши потребности.
iptables
имеет параметр -j NFQUEUE
(см. man iptables
), который позволяет ставить выбранные пакеты в очередь для пользовательского пространства. В вашей программе пользовательского пространства было бы тривиально записывать пакеты на диск.
См. https://home.regit.org/netfilter-en/using-nfqueue-and-libnetfilter_queue/ для некоторых действительно интересных деталей, которые, я должен отметить, я только бегло просмотрел.
Я бы посоветовал отключить автоматический оптимизатор диска Windows для этого диска. Linux просматривает расположение на диске при ведении журнала, а Windows — нет. Так что, даже если он немного изменит местоположение, для Linux это уже не то же самое.
Это должно решить вашу проблему!
https://www.top-password.com/blog/disable-automatic-drive-optimization-defrag-in-windows-10/