+ -
当前位置:首页 → 问答吧 → IP分片重组的问题

IP分片重组的问题

时间:2011-08-30

来源:互联网

在IP层协议处理IP分片重组时,会调用ip_defrag() -> ip_frag_queue()
在ip_frag_queue函数中有关于分片与前个分片或后个分片重叠的情形,比如与前个分片重叠的处理:
C/C++ code

if (prev) {
    int i = (FRAG_CB(prev)->offset + prev->len) - offset;

    if (i > 0) {
        offset += i;
        err = -EINVAL;
        if (end <= offset)
            goto err;
        err = -ENOMEM;
        if (!pskb_pull(skb, i))
            goto err;
        if (skb->ip_summed != CHECKSUM_UNNECESSARY)
            skb->ip_summed = CHECKSUM_NONE;
    }
}


我想问的是,在什么情况下会发生分片间重叠的情况?IP分片时应该都是分割的不会重叠的

作者: qy532846454   发布时间: 2011-08-30

好像是为了阻止 IP碎片攻击吧,具体忘记了,呵呵 

作者: louyong0571   发布时间: 2011-08-30

teardrop攻击就是利用老内核对重叠包处理的缺陷实施攻击的。
内核增加对重叠包的处理来完善安全性。

作者: yiyaaixuexi   发布时间: 2011-08-30

热门下载

更多