我有一個綁定到eth0的應用程序,它將端口A上的UDP數據包發送到255.255.255.255。同時,我有一個UDP服務器綁定到eth0,0.0.0.0和端口A.在Linux上過濾UDP環回C
我想要做的是確保服務器不會接收應用程序生成的消息(純粹處理軟件由內核提供),但它會接收由網絡中其他主機生成的消息。
我無法更改UDP數據包的有效負載,也無法向其添加任何標頭。
我已經實現了一個解決方案,使用RTNETLINK獲取我所坐的機器的所有IP地址(並根據recvfrom()的地址進行過濾),但是我想知道是否可能有一個更簡單的清潔解決方案
編輯:我想過類似標記skb的東西 - 標籤在離開物理接口後會消失,但如果只是在軟件中路由,則不會。
任何想法?
似乎它仍然不可能在Linux上:http://www.mail-archive.com/[email protected]/msg196866.html – Pawel