捕获 VPN 使用统计数据

2024-02-02

我们正在使用 .NET 2.0 中的 NetworkInterface.GetIPv4Statistics() 来监视网络接口的使用统计信息。这不会报告 VPN 流量通过隧道传输的连接的正确统计信息。相反,对于 Cisco VPN 客户端,其使用仅归因于看起来像以太网连接的新网络接口。

Windows 本身(至少是 Vista)将 VPN 统计数据正确添加到实际物理接口,因此查看原始连接的“状态”对话框会显示正确的字节计数。但是,.NET 中的调用结果不会将流量合并在一起。

有没有办法将 VPN 连接关联回其通过隧道传输的网络连接?如果做不到这一点,有谁知道状态对话框正在使用哪个 API 来检索正确的统计信息?

目前,我们必须手动检测看起来像是 VPN 的连接,并将其使用情况添加到任何其他活动连接中,这似乎不是一个可靠的解决方案。


这是用Delphi编写的程序 http://delphi.about.com/od/fullcodeprojects/l/aa112903a.htm(带有完整来源和解释)将帮助您收集网络信息,包括 VPN 数据。这是使用开源 Indy 组件 http://www.indyproject.org/Sockets/index.EN.aspx,它也可与 C# 一起使用。

我建议浏览源代码,您将找到它所进行的确切 Windows API 调用。它严重依赖 IP Helper API (IPHlpApi http://msdn.microsoft.com/en-us/library/aa366073(VS.85).aspx).

如果您正在寻找仅 C# 的示例,我建议您在 google 上搜索“C# 和 IpHlpApi”。

Regards

替代文本http://z.about.com/d/delphi/1/0/k/2/112903_2.gif http://z.about.com/d/delphi/1/0/k/2/112903_2.gif

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

捕获 VPN 使用统计数据 的相关文章

  • 如何动态调用动态对象的方法?

    当我想在 C 中的任何对象上动态调用静态定义的 静态 是指 在编译时确定 的意义上 而不是 类级成员 的意义上 方法时 我可以使用反射获取该方法的句柄并调用它 typeof Foo GetMethod Bar Invoke foo new
  • 存储库本身通常不经过测试?

    抱歉 我对存储库模式 单元测试和 orm 工具还不熟悉 我一直在研究单元测试和存储库模式 并得出一些结论 我想知道我是否正确 存储库模式有助于在使用它的控制器中替换单元测试 例如 对吧 因为创建上下文 在 EF 中 或会话 在 NH 中 的
  • 如何在 Powershell 中为特定命令设置别名?

    有一个命令我经常输入 java jar foo param1 param2 param n 如何创建命令别名来运行此命令 如下所示 launch foo param3 where launch foo被翻译成完整的命令 你必须创建一个函数
  • 如何在单独的文件(不是 .csproj 或 app.config)中定义条件编译符号

    我们需要在类库项目中定义一个条件编译符号 不应在源代码管理中检查这一点 它不适用于所有开发人员 因此应在除 csproj or the 应用程序配置文件 如何才能实现这一目标 我会在配置管理器中定义您的各种构建类型 菜单Build 配置管理
  • 将 .Net-Repeater 与 jquery 结合使用

    我有一个中继器 ASP Net
  • 如何从 Emacs 中运行 Cygwin Bash Shell?

    我在 Windows 上运行 GNU Emacs 因此输入 M x shell 启动 Windows 命令行 DOS shell 但是 我希望能够从 Emacs 中运行 Cygwin Bash Shell 或任何其他非 Windows sh
  • shell进程的并行执行

    有没有一个工具可以在 Windows 批处理文件中并行执行多个进程 我发现了一些有趣的 Linux 工具 parallel http mi eng cam ac uk er258 code parallel html and PPSS ht
  • CTRL+C 和 CTRL+Break 不同吗?

    我一直认为它们绝对是一样的 但我刚刚在以下位置找到了一些值 CTRL C EVENT 和 CTRL BREAK EVENT设置控制台Ctrl处理程序 http msdn microsoft com en us library ms68601
  • 使用 .NET 类进行 OpenSSL 加密

    我希望创建一个使用与 OpenSSL 兼容的 NET 库的类 我知道有一个 OpenSSL Net 包装器 但我希望避免引用第 3 方 非托管代码 我并不是要讨论这是否是正确的选择 但这是有原因的 目前我有以下内容 我认为它应该与 Open
  • C# 单元测试:测试使用 MapPath 的方法

    首先 我知道这个问题非常接近 如何在 C 单元测试中映射路径 https stackoverflow com questions 1231860 how to mappath in a unit test in c 但我希望它有不同的解决方
  • 使用 For 循环进行异步和等待 [重复]

    这个问题在这里已经有答案了 我有一个 Windows 服务 它根据计划运行各种作业 确定要运行哪些作业后 将调度对象列表发送到迭代列表并运行每个作业的方法 问题是 由于外部数据库调用 某些作业可能需要长达 10 分钟才能运行 我的目标是不让
  • 位置 0 处没有行

    cmd CommandText select from product where prod code Trim txtprod code Text and branch w location and avail stock lt gt 0
  • 安装 confluence-kafka 时“文件名或扩展名太长”?

    我在使用 pip install confluence kafka 安装 confluence kafka 时遇到一些问题 但我收到此错误 文件名或扩展名太长 详细信息如下 Collecting confluent kafka Using
  • 如何将大型 JSON 对象直接序列化到 HttpResponseMessage 流?

    有没有办法将大型 JSON 对象直接流式传输到 HttpResponseMessage 流 这是我现有的代码 Dictionary
  • 如何检测媒体是否已插入可移动驱动器/读卡器

    我有一个读卡器 未插入记忆棒 当我插入计算机时 它在 我的电脑 中显示一个空驱动器 是否有可能知道驱动器是否有媒体 抱歉我不知道如何称呼它 或没有 我找到的建议MSalters to use IOCTL STORAGE CHECK VERI
  • 基于 Netsuite 令牌的 API 调用中的身份验证不明确

    我正在尝试使用基于令牌的身份验证对 Netsuite API 进行 SOAP 调用 我有一个从 WDSL 生成的 C 客户端 它正在发送以下请求 已替换机密
  • 如何使用 System.IO.Pipelines.PipeReader 读取 ASP.NET 应用程序中的所有 POST 正文字节?

    我正在尝试使用 Net 6 将我的 ASP NET 应用程序从 Stream 切换到 PipeReader按照微软的推荐 https youtu be 1koWtKkKb o 这是我的自定义方法 private static async T
  • C# Collection 的最大容量在哪里定义?

    我尝试向一个Collection添加大量元素 每个元素都是简单的数据传输对象 具有基本数据类型的五个属性 没有什么特别的 在循环中添加新条目时 我总是收到 OutOfMemoryException 有趣的是 当我尝试添加第 8388608
  • 关于 MEF 战略和结构的问题

    我的任务是模块化一个 C 应用程序 该应用程序是一个非常大的 Delphi 应用程序的重写 数据库有 249 个表 业务限制禁止对 NET 进行彻底的重新设计和更好的整体架构 因此我们基本上只是用 C 逐步重写 Delphi 应用程序的模块
  • .NET 中用于个人项目的免费代码覆盖率工具 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要一个免费的 NET 代码覆盖率工具用于个人项目 Ncover 对于个人使用来说有点贵 NCove

随机推荐

  • 在 Jenkins 管道中使用的 groovy 脚本中调用 shell 命令

    我有一个 Jenkins 管道脚本 其中加载了一个外部 Groovy 脚本 其中包含一些执行构建的函数 这些函数应该是普通的常规函数 因为如果有人在本地计算机上的某个地方运行构建 我也想在 Jenkins 之外使用它们 在这些函数中 我需要
  • html5:将画布复制到图像并返回

    我在画布元素上实现了放大和缩小功能 它的工作原理是缩放画布 平移画布 然后再次重绘整个场景 问题是 重新绘制所有内容需要花费很多时间 因为我的画布上有很多东西 我需要一种方法将画布复制到图像对象 然后将图像复制回画布而不损失质量 将canv
  • Rails 未定义 NilClass:Class 的方法“model_name”

    我有一个表单 我想出现在每个页面的顶部 因此我将其包含在 app views layouts application html erb 文件中 但出现错误undefined methodmodel name for NilClass Cla
  • 在 Web 应用程序中存储大型临时“会话”数据的好方法是什么

    我的公司有一个第三方网络服务 我们正在为其设计前端 此 Web 服务使用的 对象 非常大 并且根据创建的子实体的数量而变化 Web 服务不公开提交 加载子实体的方法 仅公开完整的对象层次结构 UI 本身分为许多子屏幕和主 详细视图 以便能够
  • Facebook:使用共享对话框共享 Play 商店链接

    我使用 Facebook Android SDK 中的共享对话框共享链接 我的代码如下所示 FacebookDialog shareDialog new FacebookDialog ShareDialogBuilder this setN
  • Django 模板:如何连接命名 URL 和字符串?

    我有以下设置 The urls py该项目的应用程序 urlpatterns url r main include main urls namespace main The main app s urls py urlpatterns ur
  • iPhone:如何加密字符串

    我想在 iPhone 上使用 AES 256 加密字符串 但通过谷歌没有找到太多信息 我想做的是将一些数据作为我正在创建的游戏的一部分发布到网站上 但我不希望用户能够通过查看其发布方式来作弊 因为它是纯文本 因此 我想将一个加密字符串发布到
  • CSS 文本转换“昂贵”吗?

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Is CSS text transform加工成本高吗 在我看来 浏览器被迫做一些通常不需要的工作 如果你没有转型 但是这是一个很大的
  • 将参数传递给 django admin 中的内联表单

    我有一个继承自 ModelAdmin 的管理类 class TemplateAdmin admin ModelAdmin inlines TemplateAttributeInline CompanyAttributeInline list
  • 什么是 ng-transinclude?

    我在 StackOverflow 上看到了很多讨论 ng transclude 的问题 但没有一个问题能通俗地解释它是什么 文档中的描述如下 标记使用嵌入的最近父指令的嵌入 DOM 的插入点的指令 这相当令人困惑 有人能够用简单的术语解释
  • 将两个原始值转换为 32 位 IEEE 浮点数

    我正在尝试通过 TCP modbus 解码来自 Shark 100 功率计的一些数据 我已经成功地拉下了我需要的寄存器 并从寄存器中留下了两个原始值 如下所示 17138 59381 从手册中 我知道我需要将这两个数字转换为32位IEEE浮
  • HTTP 响应如何找到正确的浏览器窗口?

    如果您打开了两个浏览器窗口 并且使用每个窗口导航到不同的网站 那么软件如何知道哪个 HTTP 响应属于哪个浏览器实例 Update 看来是通过入站 TCP 端口号来区分的 但是不涉及 TCP UDP 的网络消息又如何呢 例如 如果您打开两个
  • 在 GKE 上进行活动/就绪探测检查时,Kubelet 会定期丢失与 pod 的 TCP 连接

    我们在单个 GKE 谷歌 kubernetes 引擎 集群节点中部署了一个软件系统 该节点使用大约 100 个 pod 在每个 pod 中我们定义了 TCP 就绪探针 现在我们可以看到就绪探针定期失败 并显示Unable to connec
  • OS X 中每个 WebView 都有单独的 cookie jar

    我一直在努力实现在 macOS 中为每个 WebView 拥有一个唯一 非共享 cookie jar 的目标 iOS 的 cookie 管理工作方式不同 在阅读了大量 StackOverflow 问题并深入研究文档后 我在这些文章中找到了最
  • 在 Expression 中注入 TDelegate 的参数值并减少表达式

    我需要减少一个表达式 Expression
  • numba @jit 比纯 python 慢吗?

    所以我需要改进我一直在处理的脚本的执行时间 我开始使用 numba jit 装饰器来尝试并行计算 但是它让我困惑 KeyError Does not support option parallel 所以我决定测试 nogil 是否解锁了我的
  • 在 Cloud Spanner 中存储 UUID

    我想在 Cloud Spanner 中使用 UUID 作为主键 读写 UUID 的最佳方式是什么 是否有 UUID 类型或客户端库支持 最简单的解决方案是将其存储为标准中的 STRINGRFC 4122 https www rfc edit
  • Java - 等待第三方线程完成

    我有一个线程将运行第三方库 该第三方库也将运行自己的线程 当我的线程的 run 方法完成时 第三方线程还没有完成 那么 在这些外部线程仍在运行之前保持线程的最佳方法是什么 If你是一个应用程序 不必担心SecurityManager的限制
  • 使用按位运算将 Int 转换为 Float 或 Float 转换为 Int(软件浮点)

    我想知道您是否可以帮助解释将整数转换为浮点数或将浮点数转换为整数的过程 对于我的课程 我们将仅使用按位运算符来完成此操作 但我认为对从类型到类型的转换的深入理解将在这个阶段对我有更多帮助 据我所知 到目前为止 对于 int 到 float
  • 捕获 VPN 使用统计数据

    我们正在使用 NET 2 0 中的 NetworkInterface GetIPv4Statistics 来监视网络接口的使用统计信息 这不会报告 VPN 流量通过隧道传输的连接的正确统计信息 相反 对于 Cisco VPN 客户端 其使用