python - Linux:如何模拟接口(interface)上的传入数据包?

标签 python c linux network-programming tun

如何模拟特定软件接口(interface)上的一些传入流量?这种需求的原因是我们在 Ether 级别和 IP 级别之间有几个软件接口(interface),它们将沿着网络堆栈解析我们自己的 L2.5 header ,即

eth header -> virt_dev1 -> virt_dev2 -> IP -> TCP

我正在查看 TAP,它看起来可以提供帮助。但我不明白如何将这个 TAP 接口(interface)链接到我们自己的软件接口(interface),以便数据包通过预期的网络堆栈?可能是我对TAP的理解不正确?

谢谢,

最佳答案

tap 接口(interface)充当网络堆栈的第 2 层端口 - 从设备节点读取和写入将从网络层接收/检索数据包。这些数据包在该点之后的去向取决于网络配置(转发、桥接等)。

关于python - Linux:如何模拟接口(interface)上的传入数据包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14450680/

相关文章:

c - 有没有办法在编译时将二进制文件作为常量变量加载到 C 中

python - 如何替换多个文件中的字符串?

c++ - 为什么 sizeof(int) 与 sizeof(int*) 不同?

c - strcpy() 删除其他所有内容

c - Xorg 中的全屏窗口不会导致键盘事件

linux - 错误处理 Bash 脚本

python - 如何从pandas数据框中返回几个最大值的索引?

Python、MySQL、Django、Syncdb 给出 DataBaseError(1046,未选择数据库)

python - 使用 irc.bot.SingleServerIRCBot 保留线程(与 twitch 一起使用)

python - ImageField 未定义