Unix网络编程卷2:OSI第 2层网络编程(layer 2 osi)

我最近参加了一些网络课程(CCNA 1 到 4),所以我了解了这一切背后的大部分理论。我现在想做的是将我拥有的知识以一些小应用程序的形式付诸实践。

我一直在阅读 MSDN 上的一些文章如何做到这一点,但他们似乎只涵盖网络编程在第 3 层或第 4 层及以上,IIRC。我正在寻找的是一些简单如何处理主机之间的第二层连接(即框架)的例子,甚至只是简单的东西,如如何执行以太网广播。

我对 C # 和 C ++ 有一点经验,所以使用这些语言的例子会很棒。

谢谢

5

对于 Windows,请查看WinPcap,它提供了低级网络访问。开发人员包已经包含了一些简单的示例来帮助您入门。

顺便说一句,在 Linux 上有packet sockets

5

您可以使用eEx Network Library编写小型应用程序(我在 CCNA 期间也做过同样的事情)。

它是一个易于使用且面向对象的.Net 编程库,可让您转到第 2 层并通过 WinPcap 发送自定义帧。

实现了以太网,ARP,IP,UDP,TCP 和 RIP 等帧类型,据我所知,这些是在 CCNA 期间发生的协议。

C # 中的教程是可用的here,如果你想看看深入的东西,如地址解析,你总是可以看看源代码,因为库是开源的。

1

很可能,您可以研究 GNU / Linux 系统上的低级网络实用程序,或者也可以研究内核 TCP 或 UDP 或 IP 层。但是例如,进行以太网广播是非常低级的,不是很有用。真实的例子(通常用 C 编码,而不是 C ++)可能不简单,因为它们必须处理错误处理。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(855)
Linux如何释放内存空间:读写内存空间(write a memory)
上一篇
C证包括哪些:包括 github项目的许可证
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(12条)