看板 LinuxDev 關於我們 聯絡資訊
※ 引述《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