AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 887066
Accepted
morleyc
morleyc
Asked: 2017-12-08 07:52:27 +0800 CST2017-12-08 07:52:27 +0800 CST 2017-12-08 07:52:27 +0800 CST

通过端口镜像 HP-2610 到 Hyper-V 的单向流量

  • 772

我有一个 Hyper-V 盒子,它具有以下连接的 IP 电话的通话录音:

  1. PBX 在接入端口(本地 vlan 42)上,插入交换机上的端口 22(它没有 VLAN 设置,因此我们设置本地接入 vlan,使其所有流量都在 VLAN 42 上)。
  2. 混合端口上的电话(本机 vlan 1 用于工作站,标记为 42 用于电话)
  3. Hyper-V 机器上用于来宾 VM 的专用 NIC
  4. Hyper-V 机器上的专用 NIC,用于监视交换机上的端口 21。
  5. 在 Hyper-V 上启用端口镜像

HP ProCurve 2610-24 交换机配置如下:

mirror-port 21
vlan 1
  name "DEFAULT"
  untagged 1-17,19-21,23-28
  no untagged 18,22
exit
vlan 42
  name "VOICE"
  untagged 22
  tagged 1-20,23,26
exit
interface 22
  monitor
exit

我在 Hyper-V 主机上启用了监控:

  1. 在 Hyper-V 主机上,创建一个名为 Monitor 的新虚拟交换机,它物理连接到专用的监控 NIC(也为一般流量创建一个单独的交换机)。
  2. 启用扩展 Microsoft NDIS Capture。
  3. $portFeature=Get-VMSystemSwitchExtensionPortFeature -FeatureName "Ethernet Switch Port Security Settings"
  4. $portFeature.SettingData.MonitorMode = 2
  5. Add-VMSwitchExtensionPortFeature -ExternalPort -SwitchName Monitor -VMSwitchExtensionFeature $portFeature
  6. 创建一个新的虚拟机,添加以下虚拟网络适配器:
    1. 用于连接到访客虚拟交换机的一般数据流量的 NIC
    2. 用于监控连接到监控虚拟交换机的流量的 NIC
  7. 在来宾虚拟机的监控虚拟网卡下,进入Advanced Features,将端口镜像模式设置为Destination。

当我在访客监控 VM 上运行 Wire-shark 时,我只看到从 PBX(源)到电话(目的地)的单向流量,而不是从电话到 PBX。

原则上,由于 PBX 可以发送/接收未标记的数据(在端口 22 上显示),这应该在端口监控端口上逐字显示为未标记的数据帧(对于本地 VLAN 42),否则我会叫错树?

我已经完成了相同的 Hyper-V 设置,但使用了 Cisco,并且没有任何问题可以正常工作。

不确定这是我做错了什么,是 Windows 的问题,还是 HP 的问题。非常感谢指针。

networking
  • 3 3 个回答
  • 1387 Views

3 个回答

  • Voted
  1. Best Answer
    morleyc
    2017-12-08T23:37:59+08:002017-12-08T23:37:59+08:00

    根据上述配置,端口镜像是正确的(HP 在其 25xx 和 26xx 型号上声明其监控保留 VLAN 标签,无论被监控的端口是否设置为未标记 - 注意,这是用于端口监控,不确定这是否是新型号上的 vlan 类型不同,因为无法在此固件上进行测试)。

    我的第一步是使用默认监控设置来捕获 VM 上的流量:

    // On Hyper-V host, create a new virtual switch called Monitor, this
    // physically connects to the dedicated monitoring NIC (create a separate switch for general traffic also).
    // Also Enable extension Microsoft NDIS Capture for this NIC.
    $portFeature=Get-VMSystemSwitchExtensionPortFeature -FeatureName "Ethernet Switch Port Security Settings"
    $portFeature.SettingData.MonitorMode = 2
    Add-VMSwitchExtensionPortFeature -ExternalPort -SwitchName Monitor -VMSwitchExtensionFeature $portFeature
    // final step i did through GUI => Under the monitor virtual network adapter
    // of the guest VM, go to Advanced Features, and set the port mirror mode to Destination.
    

    我可以看到我正在获取来自 PBX 的所有未标记帧(它没有标记帧的概念)。

    然后我尝试将中继设置到交换机以接收标记的 42 和本机 vlan 42 Set-VMNetworkAdapterVlan -VMName MonitorVM -VMNetworkAdapterName Monitor -Trunk -Allowed VlanIdList 813 -NativeVlanId 42,此时我看到我不再接收 PBX 数据(未标记的帧)。

    在线阅读后,我发现Hyper-V 将 untagged (vlan disabled) 定义为 VLAN ID 0。

    将主干设置为 VM以接受标记的 42 帧和未标记的帧(重命名接口,以便我只能针对它):

    $a = Get-VMNetworkAdapter -vmname MonitorVM
    $a[1] -NewName Monitor // referenced the monitor NIC, you will need to search array to check
    Set-VMNetworkAdapterVlan -VMName MonitorVM -VMNetworkAdapterName Monitor -Trunk -Allowed VlanIdList 813 -NativeVlanId 0
    

    然后我能够看到双向交通!

    • 2
  2. LostWander
    2017-12-08T09:44:47+08:002017-12-08T09:44:47+08:00

    我无法对 ProCurve 设置发表评论,但由于您在 HV 上有一个专用 NIC 用于监控,您是否也需要在虚拟交换机上进行额外的镜像配置?此时流量可以正常传递到虚拟机。

    您是否能够确认 ProCurve 是否正确地镜像流量并且至少到达专用 NIC?

    • 1
  3. Alkampfer
    2020-12-06T03:27:38+08:002020-12-06T03:27:38+08:00

    谢谢你的帖子,它对我帮助很大。

    我可以确认这也解决了我的情况。我注意到 PowerShell 中的代码片段略有错误(可能是由于某些格式问题),这是我使用的脚本

    #Get all network interface reference for a virtual machine
    $a = Get-VMNetworkAdapter -vmname testmirror
    
    # Visualize all the virtual network adapters to identify by virtual switch name
    $a 
    
    #Rename the cards so you can distinguish them, in my situation
    #first one is the LAN card and second one is the one connected
    #to the SPAN port of the switck
    rename-VMNetworkAdapter -VMNetworkAdapter $a[0] -newname "LAN"
    rename-VMNetworkAdapter -VMNetworkAdapter $a[1] -newname "LAN_Mirror"
    
    #Finally enable trunking on mirror port
    Set-VMNetworkAdapterVlan -VMName testmirror -VMNetworkAdapterName LAN_Mirror -Trunk -AllowedVlanIdList 1-100 -NativeVlanId 0
    
    • 0

相关问题

  • 谁能指出我的 802.11n 范围扩展器?

  • 我怎样才能得到一个网站的IP地址?

  • 在一个 LAN 中使用两台 DHCP 服务器

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve