qq_40332177 2022-02-24 17:43 采纳率: 0%
浏览 38

c# 如何通过socket获取数据的源mac

如何通过socket获取通讯设备的mac,通讯的多个设备可能ip相同,怎么获取到每个设备的mac

  • 写回答

2条回答 默认 最新

  • wanghui0380 2022-02-25 08:49
    关注

    直接做不行,mac在ip数据报里,这个东西由网卡驱动负责,你在上层获取信息实际是网卡驱动剥离IP数据报头以后的data,所以你在上层无法获取

    间接手段可以有,比如封包监听工具wireshark
    他使用自己的虚拟网卡驱动--为了便于理解我大体上就这么描述了---所以他可以获取剥离前的原始ip数据报,所以他可以分析到mac(当然也和应用协议有关系,icmp协议报是发mac的)

    https://blog.csdn.net/qq_30033537/article/details/105349838
    https://www.cnblogs.com/loveshit/p/11922925.html

    上面都是理论基础,所以解决上手段
    1.直接让底层给你主动发mac
    2.集成类似wireshark 的底层包,直接在底层进行ip数据报分析

    评论

报告相同问题?

问题事件

  • 创建了问题 2月24日

悬赏问题

  • ¥15 pandas代码实现不了意图
  • ¥15 GD32H7 从存储器到外设SPI传输数据无法重复启用DMA
  • ¥25 LT码在高斯信道下的误码率仿真
  • ¥45 渲染完成之后将物体的材质贴图改变,自动化进行这个操作
  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题