Forum Replies Created
-
AuthorPosts
-
hi,admin,you said will release a new version in april,but now, is nothing. please please to going fast
Hopefully this week 🙂
It is possible to add a timestamp to packets if needed.
Если из Ring0 => из драйвера
XP x64 => драйвер 64 битный и ndisrd 64 битныйМежду 64 битными драйверами используем обычный INTERMEDIATE_BUFFER
INTERMEDIATE_BUFFER_WOW64 определена, чтобы из 32 битного приложения передать данные в 64 битный драйвер, при этом не меняя кода 32 битного приложения. Бинарная структура INTERMEDIATE_BUFFER собранная 32 битным компилятором отличается от INTERMEDIATE_BUFFER собранной 64 битным. Но бинарная структура INTERMEDIATE_BUFFER_WOW64 собранной 32 битным компилятором совпадает с бинарной структурой INTERMEDIATE_BUFFER собранной 64 битным. Теперь понятно???
Event set to driver through SetPacketEvent API is signaled immediately on packet send/receive event.
Ккие-то проблемы в вашем коде, никаких наложений и затираний быть не может, память под пакеты идет фиксированными буферами, даже если пакет 14 байт, то все равно под него выделено 1514.
А зачем все это? Структура INTERMEDIATE_BUFFER_WOW64 определена для внутреннего пользования (конверсии в случае 32 битного приложения и 64 битного драйвера). Приложение-клиент должно работать с INTERMEDIATE_BUFFER, все необходимые конверсии сделает NDISAPI если они будут нужны.
Нет там никакой структурки, это случайное дополнение – мусорные байты. В сеть можно закинуть пакет любого размера не превышающего допустимый сетевым адаптером, в случае ethernet общий размер пакета не может превышать 1514 байт. Если Iris видит пакет значит в сеть он ушел, можно его перехватить в точке назначения для верности. Другое дело что стек принимающей системы мог забраковать пакет, увеличение размера TCP данных не совсем тривиальная задача, нужно учитывать меняющиеся SEQ/ACK поля.
В любой сборке WInpkFilter кроме WinpkFilter run-time libraries.
I would recommend to drop the original request and form a new response packet with redirect.
Сделать можно, но готового функционала для шейпинга в драйвере нет. Нужно все сделать руками на уровне пакетов. Впрочем все это достаточно несложно, если есть понимание как должны работать правила.
1- In m_ValidFields in static filters, there are only 3 predescribed values Data_Link_Layer_Valid, Networ_Link_Layer_Valid and Transport_Link_Layer_Valid which they are 1, 2 and 4 respectively.
But sometimes it is set to 0, especially to pass all packets. What does 0 means?It means that none of the validity fields is defined.
2- Why the network mask is 255.255.255.255? It was used when access to http://www.ntkernel.com website was blocked.
To block the particular IP address. If you use another mask you may block more than single IP.
3- How can I know how many packets been dropped?
All filters gather statistics of the packets for which filter did the action. You can query this statistics using API.
snetcfg is shipped in source code to all WinpkFilter licensees.
Looks like ndisapi.lib still does not link into your application for some reason…
You have to start from PassThur sample.
For the authorized users you just pass packet through. When you detect HTTP GET request from unauthorized user you should generate HTTP redirect response packet. Since you pass all network packets through your application you can easily inspect/modify the traffic flow.
Current version f WInpkFilter installer does not recognize Windows 7, but you can install WinpkFilter drivers manually. It works just fine.
-
AuthorPosts