linux - 如何在 Linux 中调试网络堆栈

标签 linux network-programming

我正在尝试使用原始套接字将数据包注入(inject)网络,但似乎无法以某种方式让接收器捕获此数据包。我如何检查数据包是否被 linux 网络堆栈丢弃?有人可以指出执行此操作的一些工具吗?

最佳答案

我不知道如何直接访问网络堆栈(不是说这不可能,只是我不知道如果可以的话该怎么做),但你可能可以使用 Wireshark 或类似的东西来查看 NIC在接收端正在接收数据包。您还可以在发送端使用它来检查数据包是否被正确发送(或者实际上是否首先发送,如果这是问题),因为它允许您检查字段/等。个人数据包。非常有用的工具,真的。

http://www.wireshark.org/

请注意,该网站没有针对 Linux 版本的直接下载,但列出了针对各种 Linux 发行版的第三方软件包。

关于linux - 如何在 Linux 中调试网络堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10920443/

相关文章:

linux - 几个堆栈操作(弹出+推送)与哈希表替代方案

linux - 如果测试 - 检查超过 7 天的文件 - Unix

linux - 将 PDF/DOCX 转换为 mac iwork Pages(5.5.3) 格式

c# - 通信协议(protocol)的可维护性 - 重叠或单独的请求?

python - 将 url 路径重定向到端口

macos - 如何以编程方式重新路由来自特定进程的所有 TCP/IP 或 HTTP 连接

c - 在 header 结构之后访问数据

linux - bash 脚本内 awk 命令中的括号不匹配导致语法错误

linux - 快速 linux 问题

c++ - 提升 :asio IPv4 address and UDP comms