问题标签 [ndis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2875 浏览

windows - Windows XP 对远程 NDIS 的支持

我正在考虑开发一种需要通过 USB 支持以太网的设备(托管在 Linux、XP 和 Vista 中)。据我了解,Vista 和 Linux 支持行业标准 USB CDC。然而,在经典的 Windows 风格中,XP 只支持它自己的 Remote NDIS。所以,现在我正在考虑只是鞠躬并通过 RNDIS 进行操作,而不是为 XP 滚动我自己的 CDC 驱动程序。

我一直在阅读一些较旧的文档,这些文档说即使 XP 在 NDIS 中也存在很多问题(惊喜!)。有人对 XP 的 RNDIS 驱动程序有经验吗?它们对产品开发安全吗?任何见解将不胜感激。

0 投票
2 回答
423 浏览

c++ - C/C++ Windows 流量拦截器

我想为我的机器后面的网络开发一个带宽分配器。

现在,我已经阅读了有关 NDIS 的信息,但我不确定既不是来自我的机器也不是发往我的机器的网络流量是否会进入我的 TCP/IP 堆栈,以便我可以通过 NDIS 阻止/取消阻止数据包窗户机。

0 投票
3 回答
22835 浏览

c++ - 如何在 Windows 上获取硬件 MAC 地址

我正在尝试从 NIC 中检索 MAC 地址 - 有多种方法可以获取它,本文介绍了最常见的方法:

http://www.codeguru.com/Cpp/IN/network/networkinformation/article.php/c5451

我目前正在使用 GetAdaptersInfo 方法,这似乎是最防弹的,但如果 MAC 地址已通过注册表设置:

http://www.mydigitallife.info/2008/06/30/how-to-change-or-spoof-mac-address-in-windows-xp-vista-server-20032008-mac-os-x-unix-和-linux/

然后它报告它已更改为的 MAC 地址。我发现真正获得真正 MAC 的唯一方法是删除注册表项,重新启动 NIC,通过 GetAdaptersInfo 获取 MAC,然后替换注册表项,然后重新启动 NIC。虽然它完成了工作,但对用户来说几乎是透明的。

是否有任何其他人熟悉的方法,无论注册表设置为什么,都将返回硬件 MAC?理想情况下,我想要一个适用于 XP 的解决方案。

提前致谢!

0 投票
1 回答
4180 浏览

c# - NDIS 到 C# 的中间驱动程序接口

我正在开发本质上是一个专门的防火墙应用程序。该解决方案需要兼容 32 位和 64 位。我的公司想保留当前的程序界面,它是用 C# 编写的。

我需要的是:一种监控和操纵系统上所有网络流量的方法。我的研究使我相信 NDIS(网络驱动程序接口规范)中间驱动程序是可行的方法。如果我可以用 C# 编写这种驱动程序,那就太好了,但我不确定这是否可能。至少,我需要一个 C# 接口到用任何语言编写的驱动程序。

我在网上找到了一个很好的资源,用于在题为“扩展 Microsoft PassThru NDIS 中间驱动程序”的一系列文章中创建一个:

  1. 第 1 部分 - 添加 DeviceIoControl 接口
  2. 第 2 部分 - 两个 IP 地址阻止 NDIS IM 驱动程序
  3. 第 3 部分 - 支持 Windows XP 64 位版本

但是,它的日期为(2003 年)。在我投入阅读和学习它的内容之前,我想确保我没有浪费我的时间。

有一个更好的方法吗?有没有比上面的文章更能解释这个过程的开源项目或文章?我什至在球场上?请帮忙。

0 投票
1 回答
1977 浏览

networking - 在 Compact Framework 中检测“未插入网络电缆”

我已经完成了所有 Stack Overflow 搜索提供的答案,谷歌或 Bing 都没有向我展示任何爱。我需要知道何时在 Windows CE 设备上连接或断开网络电缆,最好是从 Compact Framework 应用程序。

0 投票
1 回答
707 浏览

device-driver - 希望学习编写 NDIS 或 TDI 驱动程序

谁能推荐一本好书来逐步开发这种用 C 语言编写的驱动程序?我正在寻找一本适合初学者的书。如果有关于如何做到这一点的在线资源从头开始解释该过程,将不胜感激。

0 投票
1 回答
858 浏览

firewall - NDIS Hooking for Blocking/Unblocking website on windows xp

我正在尝试使用 NDIS Hooking 阻止/取消阻止 windows xp 上的某些网站。我是 windows xp 上此 NDIS Hooking 的新手。所以你能告诉我msdn中是否有任何示例,或者你有任何可以阻止/取消阻止网站的示例应用程序吗?

谢谢,卡马尔。

0 投票
1 回答
2297 浏览

windows - Windows XP 的透明代理

我有一个在 Windows XP 下运行的实验性 TCP/IP 堆栈。此堆栈使用 LSP 和 NDIS IM 绕过 Windows TCP/IP 堆栈。我现在需要为此提供代理服务,以支持其他想要使用实验堆栈的平台。代理必须对客户端透明(无客户端配置)。我想在用户模式下运行此代理服务,其中我使用普通 Windows TCP/IP 与客户端建立 TCP 连接,并通过实验堆栈以另一种方式建立 TCP 连接。一旦以这种方式连接,代理只会在两者之间进行读/写。我正在努力解决的问题是如何从客户端获取一个发往某个地址/端口的传入数据包并将其重定向到我的代理,同时仍然保持对原始目标地址/端口的了解,因此代理可以将数据包转发到正确的目的地。我会很感激这方面的任何想法。谢谢...

0 投票
2 回答
1150 浏览

windows - 以编程方式安装 Windows NDIS 中间 (IM) 驱动程序

我正在学习 windows NDIS 中级(IM)驱动程序开发。我在安装时遇到问题。我总是需要手动安装它。

我的问题是如何以编程方式安装 NDIS 中间 (IM) 驱动程序

问候

纳瓦尼思

0 投票
2 回答
2306 浏览

.net - 通过在 .Net (C#) 中编码来阻止计算机上的任何 IP

我正在玩弄一种在现代战争 2 中踢骗子的方法(当你是主持人时)。我已经能够使用 winpcap 来嗅探软件包以识别玩家名称和他们的 IP。

我需要一种方法来阻止所有流量(或者只是目标 IP UDP 流量到我的机器)。因此玩家将超时/延迟。

有谁知道可以让我轻松做到这一点的可用库。我可以用艰难的方式来做这件事,安装 Windows DDK 并在 C++ 中乱七八糟地创建一个低级 NDIS 驱动程序,但是对 C++ 以及为此编译模板代码时出现的所有典型编译问题非常生疏,我更喜欢一些为此准备好编码库。

或者,也许有人有更好的想法可行?

解决方案:使用 Windows 防火墙。轻松创建和删除规则的 API。 有什么方法可以使用 c# 在 Windows 中关闭“互联网”?

并且执行此操作的测试程序现在可以工作。我把两个人踢出了游戏。