2016-11-24 47 views
0

在Linux中,網絡設備由struct net_device提供。這種結構的一個字段是指向struct net_device_ops的指針,用於呈現網絡設備操作的表格。如何更改網絡設備操作表的安全性?

我在寫內核模塊,它是網絡數據包過濾器。 我該如何安全替換這些表(恐怕併發)?

+0

你看過netfilter是否適合你的用例嗎?這比根據每個設備的結構簡單得多。 –

+0

我寫課程項目。 – gibsonman01

回答

0

我非常同意喬爾的回答。您最好嘗試使用內核netfiler API來過濾流量。 netfilter API在Linux內核網絡堆棧中沿着數據包遍歷的不同點提供了五個掛鉤,您需要找出註冊callack需要哪一個來執行所需過濾。有時需要多個鉤子。網上有關於它的文檔。