Re: [問題] linux中收到的封包 如何知道介面

看板LinuxDev作者 (開心呀)時間14年前 (2009/08/23 22:00), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/4 (看更多)
※ 引述《carlcarl (carl)》之銘言: : 想問一下 : 就是我在AP(linux系統)中寫了一個module抓取無線的封包 : 我利用skb->dev->name 這個來看是什麼介面 : 可是像我連到google的話 有些會印出br0 有些是印出eth1(無線的介面) : br0底下是vlan0(LAN 4個port)和eth1 : 所以想請問一下這是什麼原因 : 為什麼介面名稱會這麼模稜兩可?? 因為eth1收到後會呼叫netif_rx送到bridge裡 然後bridge發現mac是host的 所以把skb->dev又改成br0在呼叫netif一次往上送 所以一個封包一共通過了兩次netif_rx 一次是eth1 一次是br0 : 還是我不應該利用skb->dev->name來作為判斷嗎? : 還有就是 : 我module的hook是寫在netif_rx裡 : 可是我還是會收到google到ap的封包(eth1) : google到AP應該會從wan進來吧? 因為你wan的drv也呼叫了netif_rx來把封包往上送 : 我去看了一下 : tcpdump 裡面是會用到pcap : 接下來有點複雜 現在還是沒看懂= =a -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.235.217
文章代碼(AID): #1AaKjg0e (LinuxDev)
討論串 (同標題文章)
文章代碼(AID): #1AaKjg0e (LinuxDev)