使用原始套接字时,我们可以select一个特定的接口吗?

我正在linux中构build一个只通过特定接口发送数据的应用程序。 我可以做到这一点使用原始套接字,也许使用套接字选项function?

当你绑定一个套接字,你可以通过IP来完成。 但希望你的接口有不同的IP地址。 如果是这样,你可以先调用getifaddrs并找到你想要的接口的地址。

我们可以使用以下命令将已经打开的套接字绑定到给定的接口。

  1. 在套接字上使用绑定。
  2. 使用setsockopt。 使用选项SO_BINDTODEVICE。