问题标签 [raw-ethernet]

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 投票
2 回答
3863 浏览

winsock - 在 Winsock 中实现原始以太网

我正在做一个项目,我必须制作自定义数据包。也就是说,我必须控制每个数据包标头。我正在尝试使用套接字来做到这一点。基本上,我需要做的是:

ethernet_type 是定制的、非标准的,例如 0xAAAA。我正在使用 htons()。另外,我最好不要使用winPcap。

现在,我收到错误 10043,不支持协议。

错误消息似乎表明我可以将协议配置到我的系统中,但我不知道该怎么做。

它说:

不支持协议。请求的协议尚未配置到系统中,或者不存在它的实现。例如,套接字调用请求 SOCK_DGRAM 套接字,但指定了流协议。

这里有几个不同的问题,所以如果有人有任何意见,我真的很感激。

0 投票
1 回答
569 浏览

winsock - Winsock 加入 MAC 地址组播组

有没有办法加入以太网多播组?我找到的所有文档都是关于添加 IP 组的。

我只想接收发送到 MAC 地址 01:00:0c:cc:cc:cc 的 Cisco CDP 数据包。

0 投票
1 回答
7033 浏览

java - 原始以太网的 Java 库

我正在寻找一个 Java 库,它可以让我访问原始以太网帧,用于读取和发送它们。我的最终目标是创建一个 BACnet 以太网网络扫描仪。

请注意,我不是在寻找 TCP\IP。

任何人都知道这样做的好图书馆吗?

0 投票
3 回答
47135 浏览

c# - 如何使用 C# 发送原始以太网数据包?

有没有办法通过 C# 将原始数据包以太网发送到其他主机?在 Windows 7 中,如果它有所作为。

0 投票
1 回答
3925 浏览

visual-studio - 如何使用 VC++ 访问以太网端口?不使用套接字

我是以太网编程的初学者,我想访问以太网端口并向/从它发送/接收数据包。我想过使用 CIM_EthernetPort 类,但不知道该怎么做。请帮忙。我必须编写一个程序来将数据发送到嵌入式系统。

0 投票
1 回答
7783 浏览

python - 如何在软件中可靠地生成以太网帧错误?

问题:

我正在测试一段电缆故障查找软件,我想可靠且可重复地在 cat5 电缆上生成电缆故障。

目前我正在使用一米长的未绞合电缆,并在电源旁边手动扭动电缆,但我无法检测到应用程序中的任何故障(我正在从以太网 ASIC 读取以太网故障计数器。)这是因为没有产生故障,或者是因为软件/硬件检测有故障,我无法判断。

有没有办法在软件中做到这一点?

我会满足于用更高级别的语言编写一些东西,比如 Java 或 python,作为最后的手段,我愿意用 C 把它放在一起,但我真的不想纯粹为了修复一个以太网驱动程序而重新编写一个以太网驱动程序。可能的错误。

[编辑]:我想制造电缆故障 - 不检测它们。

[编辑]:我已经通过 FTP 和 SCP 传输大文件,而修改后的电缆没有问题,并且在使用 Wireshark 检查流量时没有发现任何错误

[编辑]:另见python 中的类似问题

解决方案:

好吧,在与 C 打了一天多之后,这就是 python 解决方案。

首先禁用以太网卡的自动校验和:

然后,从 python 发送你的狡猾帧:

谁说一定要复杂...

PS:我喜欢 Python。

0 投票
4 回答
28843 浏览

networking - 识别非计算机网络设备?

我目前正在开发一个扫描我的网络并发现网络上的计算机和设备的程序。我使用各种操作在我发现的设备上查找数据,但想将网络设备与计算机区分开来。我想知道是否有人知道我该怎么做?

我看了看 SNMP,并尝试连接到我的网络打印机、路由器和调制解调器。但我似乎只能连接到打印机,路由器或调制解调器都没有响应。

是否有另一种方法来识别 IP 地址属于哪种设备?

0 投票
1 回答
814 浏览

raw-ethernet - 64/66b 编码

关于64/66bit encoding有一些我不明白的事情,并且未能在网上找到答案。任何帮助/链接将不胜感激:

i) 如何识别帧的开始?我不认为它可以通过维基百科上称为序言的初始 10/01 位,因为您无法区分它们(如果空闲链接为 0,则 0000 10 和 000 01 0 看起来非常相似)。我希望帧的结束由控制字指示,其余位可能用于 CRC?

ii) 加扰器如何同步,以及它们如何避免以相同的方式加扰相同的数据包?或者换一种说法,为什么恶意用户不可能通过仔细选择坏消息来导致大量丢包?

iii) 这可能已经在 ii) 中得到解答,但是如果一个数据包被发送到交换机,然后再发送到另一台主机,它是否两次都以相同的方式加扰?

再次,非常感谢提前

0 投票
1 回答
770 浏览

windows - 访问以太网或 USB 端口

下午好,这篇文章是为了询问您建议使用哪种 Windows Vista 编程语言从以太网端口或 USB 端口访问原始数据的想法。我的优势在于微控制器。我正在进行一个项目,其中 32 位微控制器是软件定义无线电中的最后一个处理设备。微型计算机能够通过 USB 端口或以太网端口输出数字化信号。我想将 PC 用作绘图工具,将原始数字化声音显示为屏幕上的波形,并可能在声卡输出上播放声音。此外,如果软件足够快,我将在 32 位微型计算机或 PC 中创建 FFT 频谱数据,以便在我的笔记本电脑上显示频谱。我过去有过使用旧 VB 的经验。在我的上一个项目中,我使用了一个简单的基本程序(JustBasic)通过 USB/RS232 设备将控制数据发送到微控制器。这个界面对于这个项目来说肯定不够快。未来的其他功能将是使用以太网或 USB 来控制实时功能,即微控制器中的滤波器频率、FFT 大小和采样率。任何帮助表示赞赏。

0 投票
1 回答
677 浏览

networking - 低级以太网/网络(例如 MII)的书籍建议

我有一位同事正在使用 Xilinx 的 LocalLink TEMAC

虽然我觉得 DS 很有趣,但我想了解更多关于它的基础知识。有没有人对网络/以太网书籍的良好低级介绍有任何建议?

我不需要知道“如何成为一名优秀的网络管理员”,而是需要了解诸如 MII、GMII 之类的接口,以及它们如何与市场上的不同 PHY 进行通信。我想了解的问题类似于:

什么是以太网?数据包是如何构成的?什么是序言以及如何使用它?什么是框架?

如果您认为学习起来真的容易得多,我也会对在线网站感兴趣。如果有系列丛书,我也会对此持开放态度。