2015-09-14 65 views
0

我們在做什麼: 我們正在使用netfilter庫。 我們的模塊(比如說「X-engine」)讀取和緩存if_index。如何獲得關於更改的通知if_index

真正的問題: 如果內核決定改變出於某種原因if_index,X形發動機緩存if_index不更新,並且它開始丟棄數據包,因爲他們是什麼是模塊 - 緩存if_index之間的不匹配X以及內核中實際存在的內容。

我們正在尋找: 現在有沒有辦法/ API,通過該模塊-X可以被通知,使模塊-X更新它的緩存適當這種if_index改變事件?

回答

0

也許您需要使用rtnetlink套接字來監視和處理RTM_NEWLINK和RTM_DELLINK消息(提供有關創建或刪除特定網絡接口的信息)。更多信息在http://man7.org/linux/man-pages/man7/rtnetlink.7.html

+0

我們如何模擬這種情況,而不用硬編碼if_index。有什麼方法可以改變與現有接口關聯的if_index? – vikas

相關問題