簡體   English   中英

Windows上的網絡控制

[英]Network control on Windows

如何在Windows上控制網絡接口? 實際上,這個想法很簡單。

  1. 建立連接到計算機上的某個適配器。

  2. 將適配器的整個流量定向到該程序。

  3. 授予此程序權利,哪些必須轉移到適配器,哪些不應該轉移到適配器。

我認為該程序必須實現任何Windows網絡適配器接口並被注冊為適配器驅動程序。 因此,當它想將數據傳輸到實際適配器時,該程序必須調用適配器驅動程序方法。 相應地,這些方法實現了相同的Windows網絡接口(或者以其他方式調用,我不太了解,希望您能理解),不是嗎?

結果,我們在這里有了一種繼承。 在使用我們的新驅動程序之前:Windows應用程序和Windows本身

__ _ __ _ __ _ __ _ __ _ __ _ __ _ _ __ Windows Windows網絡接口

Adapter1的驅動程序

__ _ _ __ __ _ _ __ __ _ _ __ __ _ ___ OS邊界的端

轉接器1

使用我們的新驅動程序:Windows應用程序和Windows本身

__ _ __ _ __ _ __ _ __ _ __ _ __ _ _ __ Windows Windows網絡接口

我們的驅動力

__ _ __ _ __ _ __ _ __ _ __ _ __ _ _ __ Windows Windows網絡接口

Adapter1的驅動程序

__ _ _ __ __ _ _ __ __ _ _ __ __ _ ___ OS邊界的端

轉接器1

我相信這種界面已經存在,並且希望它很容易實現。

您可能需要掛鈎Windows API調用才能真正做到這一點。 可能...從Google鈎子API和Winternals開始-看看是否可以找到它們的示例代碼。

在Microsoft收購Winternals之前,他們先發布了代碼。 http://technet.microsoft.com/zh-cn/sysinternals/bb545021

這個想法是這樣的:

  • 您編寫一個控制掛鈎設備驅動程序的用戶模式程序。
  • 掛鈎設備驅動程序確定給定API調用上的網絡流量是否正常。
  • 驅動程序允許正常的API調用成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM