c - 绑定(bind)到一个 veth 接口(interface)

标签 c linux sockets networking raw-sockets

尝试将我的代码绑定(bind)到一个 veth 接口(interface)。我需要为此创建一个 RAW_SOCKET。

使用

创建我的 veth 接口(interface)
ip link add veth10 type veth peer veth10p

谁能帮我提供连接到 veth 连接一端的代码(即我的示例中的 veth10)。

最佳答案

您需要先获取接口(interface)索引 - 在 linux 下您可以使用 struct ifreqioctl。我已经编写了自己的 ARP 请求,这实际上不是您所需要的,但您可以观察代码以了解如何使用接口(interface)(名称 -> 索引)

https://github.com/petrbel/pvu2/blob/master/arp-request/arp.c#L59

希望对你有所帮助

关于c - 绑定(bind)到一个 veth 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22293504/

相关文章:

linux - 使用 ssh 检查远程主机上是否存在文件

python - Python3套接字/选择器注册多个事件

c - 如何在 C 中编译 C 程序?

c - 读取字符串

c - 为什么指向不同函数的函数指针与定义的不同

linux - 在 UNIX 中将函数中的属性调用到另一个函数中

c - 理解#define 的本质

linux - Expect 脚本 - 发送字符串所需的引号与 expect 所需的引号冲突

php - "Connection refused"错误在 php 中的 socket_connect

django - gunicorn:无法连接到 gunicorn.sock