@Sven: you need something called - Inverted Call Model
The Inverted Call Model in KMDF - OSR
| |
| | | | | | | |
| The Inverted Call Model in KMDF - OSROne of the most common questions we see
from students, clients, and new Windows driver Read more |
| |
| View on www.osr.com | Preview by Yahoo |
| |
| |
On Thursday, February 4, 2016 12:49 PM, Sven Kerschbaum <[email protected]>
wrote:
@Yang: It is not possible to get notifications of media state changes by the
API which you proposed in your previous post. It provides only notifications
about IP table changes.Am 04.02.2016 16:31 schrieb "Sven Kerschbaum"
<[email protected]>:
Hi Yang,
thanks for providing me the detailed information about Npcap. I will
definitively have a look at it and try it.
Cheers,SK
2016-02-04 13:04 GMT+01:00 食肉大灰兔V5 <[email protected]>:
Hi Sven,
Npcap (https://github.com/nmap/npcap) has better performance because of NDIS 6.
It also has several new features:
- NDIS 6 Support: Npcap makes use of new LWF driver in Windows Vista and
later (the legacy driver is used on XP). It's faster than the legacy NDIS 5
Intermediate technique. One reason is that packet data stucture has changed
(fromNDIS_PACKET to NET_BUFFER_LIST) since Vista and NDIS 5 needs to handle
extra packet structure conversion.
- "Admin-only Mode" Support: Npcap supports to restrict its use to
Administrators for safety purpose. If Npcap is installed with the option
Restrict Npcap driver's access to Administrators only checked, when a non-Admin
user tries to start a user software (Nmap, Wireshark, etc), the User Account
Control (UAC) dialog will prompt asking for Administrator privilege. Only when
the end user chooses Yes, the driver can be accessed. This is similar to UNIX
where you need root access to capture packets.
- "WinPcap Compatible Mode" Support: "WinPcap Compatible Mode" is used to
decide whether Npcap should coexist With WinPcap or be compatible with WinPcap.
With "WinPcap Compatible Mode" OFF, Npcap can coexist with WinPcap and share
the DLL binary interface with WinPcap. So the applications unaware of Npcap
SHOULD be able to use Npcap automatically if WinPcap is unavailable. The
applications who knows Npcap's existence can choose to use Npcap or WinPcap
first. The key about which is loaded first is DLL Search Path. With "WinPcap
Compatible Mode" OFF, Npcap installs its DLLs into C:\Windows\System32\Npcap\
instead of WinPcap's C:\Windows\System32\. So applications who want to load
Npcap first must make C:\Windows\System32\Npcap\ precedent to other paths in
ways such as callingSetDllDirectory, etc. Another point is Npcap uses service
name npcap instead of WinPcap's npf with "WinPcap Compatible Mode" OFF. So
applications using net start npf for starting service must use net start npcap
instead. If you want 100% compatibility with WinPcap, you should install Npcap
choosing "WinPcap Compatible Mode" (Install Npcap in WinPcap API-compatible
Mode). In this mode, Npcap will install its Dlls in WinPcap's
C:\Windows\System32\and use the npf service name. It's notable that before
installing in this mode, you must uninstall WinPcap first (the installer wizard
will prompt you that).
- Loopback Packets Capture Support: Now Npcap is able to see Windows
loopback packets using Windows Filtering Platform (WFP) technique. After
installation, Npcap will create an adapter named Npcap Loopback Adapter for
you. If you are a Wireshark user, choose this adapter to capture, you will see
all loopback traffic the same way as other non-loopback adapters. Try it by
typing in commands like ping 127.0.0.1 (IPv4) or ping ::1 (IPv6).
- Loopback Packets Send Support: Besides loopback packets capturing, Npcap
can also send out loopback packets based on Winsock Kernel (WSK) technique. A
user software (e.g. Nmap) can just send packets out using Npcap Loopback
Adapter like other adapters. Npcap Loopback Adapter will automatically remove
the packet's Ethernet header and inject the payload into Windows TCP/IP stack,
so this kind of loopback packet never go out of the machine.
I actually didn't add a function about making user software getting notified
about media state changes. From my knowledge I don't know there's any support
of such a function in libpcap. libpcap is an interface standard followed by
WinPcap/Npcap. However, I think you can do it using native Windows APIs (like
Receiving Notification of Network Events in
https://msdn.microsoft.com/en-us/library/windows/desktop/aa366334(v=vs.85).aspx).
And if you have any improvement advice about Npcap, I will consider it:)
Cheers,Yang
On Thu, Feb 4, 2016 at 7:18 PM, Sven Kerschbaum <[email protected]> wrote:
Oh, I have to admit that I did not try it on an update to date Windows 10
system... Thanks for the hint that this was only an issue in early Windows 10
versions.
I was also not aware of the Npcap. Thanks for pointing me to this fork! How
does Npcap differ from WinPcap with respect to performance, feature? At least I
am missing the possibility to get notified about media state changes
(connected, disconnected) in WinPcap. Does Npcap offer such a functionality?
Furthermore: Is WinPcap still under active development? Its last release was in
2013. Or I am better advised to rely on Npcap?
Thank you!Best regards,SK
2016-02-04 11:08 GMT+01:00 Gisle Vanem <[email protected]>:
Sven Kerschbaum wrote:
> is there already effort for getting WinPcap ready for Windows 10? As Pascal
> Quantin already pointed out WinPcap does not
> run on Windows 10 due to the fact that the WinPcap driver is not an NDIS 6
> driver. Please find more information here:
> http://www.winpcap.org/pipermail/winpcap-users/2015-March/004936.html
Really? All my WinPcap-based programs works fine here.
>From 'sigcheck c:\WINDOWS\sysnative\drivers\npf.sys':
Verified: Signed
Signing date: 02.49 01.03.2013
Publisher: Riverbed Technology
Company: Riverbed Technology, Inc.
Description: npf.sys (NT5/6 AMD64) Kernel Driver
Product: WinPcap
Prod version: 4.1.0.2980
File version: 4.1.0.2980
MachineType: 64-bit
The version and 'Signing date' is in accordance with what's on winpcap.org.
An also:
F:\> windump -Dv
1. \Device\NPF_{E069AC87-4219-4F7E-9CA5-DE3FBA031CEF} Descr: Microsoft
Addr 0: 10.0.0.11 (mask 255.255.255.0)
MAC-addr: 00:18:4D:00:DE:17, MTU 1514, link-type 802.3 over Native802_11,
DOWN, 54Mb/s (NDIS)
2. \Device\NPF_{990D25A5-6071-4C67-AC14-A5380B0FFDEC} Descr: Microsoft
Addr 0: fe80::8089:b86f:1ef6:347e (mask ::)
Addr 1: fe80::8089:b86f:1ef6:347e (mask ::)
MAC-addr: 00:15:83:12:37:2F, MTU 1514, link-type 802.3 over Bluetooth,
DOWN, 3Mb/s (NDIS)
3. \Device\NPF_{7BA27187-146B-4FB6-B4BA-DC5D218FB607} Descr: Realtek
Ethernet Controller
Addr 0: 10.0.0.10 (mask 255.255.255.0)
MAC-addr: E0:3F:49:81:2E:EA, MTU 1514, link-type 802.3, UP, 100Mb/s (NDIS)
--------------
I'm on Win 10. Version 1511 (OS-Build 10586.71).
Windows 10 build 10041 (as mention in that mail) is pretty old.
--
--gv
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users