WinpkFilter is a high performance packet filtering framework for Windows
9x/ME/NT/2000/XP/2003/Vista/2008 that allows developers to transparently filter
(view and modify) raw network packets with minimal impact on network activity
without having to write low level TDI or NDIS driver code. WinpkFilter is more
than just a firewall development kit for Windows. Wide range of solutions can be
implemented using WinpkFilter: custom firewalls, internet connection sharing
(NAT), IP shaper, VPN and many other low-level network solutions completely in
user-mode using your favorite development environment: Visual C++, Visual C#,
Delphi, C++ Builder, Visual Basic and etc. Using WinpkFilter requires no
experience in kernel mode programming on your behalf since WinpkFilter provides
you with powerful user level API. However, if you need to implement your
solution (to achieve better performance) in kernel mode you can use
well-documented raw IOCTL interface as well.
Пример применения http://www.xakep.ru/post/29448/default.asp
Для того, чтобы получить возможность изменять заголовки пакетов на внешнем
(Internet) сетевом интерфейсе, нам понадобится драйвер фильтр пакетов уровня
NDIS. Написание подобного драйвера требует навыков работы в kernel mode и
выходит за рамки данной статьи, желающих разобраться самостоятельно я отсылаю к
документации DDK. Мы же воспользуемся готовым решением, которое позволяет
реализовать прозрачную фильтрацию и обработку пакетов в user mode. Это
библиотека WinpkFilter от ntkernel.com. Продукт сей бесплатный для
некоммерческого использования, скачать run-time библиотеку можно отсюда http://www.ntkernel.com/w&p.php?id=7
Комментариев нет:
Отправить комментарий