【问题标题】:Is it possible to doa layer 2 Packet Capture in Powershell是否可以在 Powershell 中进行第 2 层数据包捕获
【发布时间】:2014-08-27 16:40:49
【问题描述】:

是否可以使用 powershell 捕获第 2 层流量?我见过使用套接字的方法,但它们似乎只捕获第 3 层及更高层的流量。我想看看以太网帧;但我不确定它是否可以在powershell中完成。是否可以在不在系统上安装任何额外软件/驱动程序(可能使用 dll 或其他东西)的情况下做到这一点?

【问题讨论】:

  • 您是否考虑过仅使用 Wire Shark 或与其底层库 WinPcap 进行交互?
  • @ScottChamberlain WireShark 获得了我想要的信息,但我正在寻找一种可以编写脚本的便携式解决方案。
  • 我认为您将遇到的问题是 Windows 内置的默认驱动程序不会公开您正在寻找的信息,WinPcap 会将这些信息重新添加。您必须“安装” WinPcap 驱动程序,但you could make that install silent 并且您可以在完成后卸载您的程序。我认为如果不安装驱动程序,您将无法访问第 2 层信息。
  • @ScottChamberlain 这就是我害怕的。我希望有某种类型的“便携式 winpcap”可以在不安装的情况下公开信息。

标签: powershell networking capture ethernet


【解决方案1】:

如果您只需要便携而不需要静音,您可以使用 portable Wireshark 来“临时安装”所需的驱动程序,然后使用 Wireshark 的 command line switches 使用 powershell 编写脚本。

另一种选择是,如果已经安装了 WinPcap(您可以在您的 powershell 文件中编写安装和卸载脚本),您可以使用像 Pcap.Net 这样的包装库,这将允许您通过脚本直接与驱动程序通信而无需去通过 Wireshark。

【讨论】:

    猜你喜欢
    • 2013-08-12
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多