+ -
当前位置:首页 → 问答吧 → 请教2.6中分片重组后的怪现象

请教2.6中分片重组后的怪现象

时间:2010-12-27

来源:互联网

假設有一組分片包,frag1, frag2, frag3,從eth0收上來;
經過IP-PREROUTING的conntrack後,它們會重組為一個完整的大包 pkt;
那麼,按理,在此之後查看(如在IP_PREROUTING低於conntrack優先級的hook點)
pkt 包最後的內容一定與frag3最後的內容一樣,在2.4中確實是這樣。

但到了2.6,發現重組後的pkt最後的內容與frag3毫不相關。
我知道2.6的重組包不會線性化,在查看之前已經作了 skb_linearize(),但還是不行。
而最終轉發到最終的接收端卻還是對的,即pkt確實是由frag1+frag2+frag3組成的。

不知除了skb_linearize之外,還需什麼步驟,才能看到完整連續的pkt?
多謝!

作者: davhuang   发布时间: 2010-12-27

记得最常用的也就是 skb_linearize 了。
你确定 2.4 中  conntrack 中对frag 的重组中,包含了数据包内容的重组吗,还是只是简单的将几个分片包串起来了。

作者: Godbach   发布时间: 2010-12-27