2012-07-07 45 views
2

我正在linux中構建一個只通過某個接口發送數據的應用程序。我可以使用原始套接字來做到這一點,也許使用套接字選項功能?使用原始套接字時,我們可以選擇特定的接口嗎?

+2

你是什麼意思,當你說「強制」?無緩衝? – 2012-07-07 16:18:43

+0

如果我們有兩個接口(比如wifi和以太網),我需要我的數據包通過其中的一個(比如說wifi)。而不管。 – 2012-07-07 16:32:21

+0

所以你說它通過wifi和其他通過以太網發送一些數據包是不可接受的? – japreiss 2012-07-07 16:34:20

回答

1

當你綁定一個套接字,你可以通過IP來完成。但希望你的接口有不同的IP地址。如果是這樣,你可以先致電getifaddrs並找到你想要的接口地址。

0

我們可以使用以下命令將已經打開的套接字綁定到給定的接口。

  1. 在套接字上使用綁定。
  2. 使用setsockopt。使用選項SO_BINDTODEVICE。
相關問題