c - 在不使用 libpcap 的情况下在 Linux 中嗅探数据包

标签 c libpcap packet-sniffers

我在大学(网络工程)的一门类(class)中接到了一个项目,其中涉及编写一个数据包嗅探器,可以捕获和识别 IPv4、IPv6、TCP、UDP、IP、ICMP 等数据包并显示它们的内容。

最初我们被指示使用 libpcap 来执行此操作,但一位大学技术人员刚刚通知我们,无法在当前安装 (Arch linux) 中使用 libpcap。

还有哪些其他方法可以在不使用 libpcap 的情况下使用 C 语言创建数据包嗅探器?

我不是在问这个项目的答案,我只是在问方向,我应该从哪里开始?

最佳答案

我会去问问更高级的人你实际上应该做什么。这里似乎有两个完全不同的任务——一个是解析和显示网络数据包,另一个是与操作系统/硬件接口(interface)以捕获数据包。如果您应该学习前者,那么您可能不应该花时间在后者上。

关于c - 在不使用 libpcap 的情况下在 Linux 中嗅探数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6739907/

相关文章:

c - 如何使用 libpcap 通过 poll() 接收以太网帧

c - Mac OS X Lion Radiotap header 和 libpcap

c - 如何使用包含好的 pcap 结构

http - 动态修改HTTP POST数据

c - 为什么这段代码不能为大型数组提供正确的结果?

c - 在 C 中除以零

c - 在 AVX vector 中加载 64 位整数

c - 了解 C 内存分配和释放

python - 在 Mac 中使用 scapy 嗅探 UDP 数据包