OS10 Enterprise Edition User Guide Release 10.4.0E(R3)


IP fragment handling

OS10 supports a configurable option to explicitly deny IP fragmented packets, particularly for the second and subsequent packets. This option extends the existing ACL command syntax with the fragments keyword for all Layer 3 (L3) rules:

  • Second and subsequent fragments are allowed because you cannot apply a L3 rule to these fragments. If the packet is to be denied eventually, the first fragment must be denied and the packet as a whole cannot be reassembled.
  • The system applies implicit permit for the second and subsequent fragment prior to the implicit deny.
  • If you configure an explicit deny, the second and subsequent fragments do not hit the implicit permit rule for fragments.

IP fragments ACL

When a packet exceeds the maximum packet size, the packet is fragmented into a number of smaller packets that contain portions of the contents of the original packet. This packet flow begins with an initial packet that contains all of the Layer 3 (L3) and Layer 4 (L4) header information contained in the original packet, and is followed by a number of packets that contain only the L3 header information.

This packet flow contains all of the information from the original packet distributed through packets that are small enough to avoid the maximum packet size limit. This provides a particular problem for ACL processing.

If the ACL filters based on L4 information, the non-initial packets within the fragmented packet flow will not match the L4 information, even if the original packet would have matched the filter. Because of this filtering, packets are not processed by the ACL.

The examples show denying second and subsequent fragments, and permitting all packets on an interface. These ACLs deny all second and subsequent fragments with destination IP, but permit the first fragment and non-fragmented packets with destination IP The second example shows ACLs which permits all packets — both fragmented and non-fragmented — with destination IP

Deny second and subsequent fragments

OS10(config)# ip access-list ABC
                                 OS10(conf-ipv4-acl)# deny ip any fragments
                                 OS10(conf-ipv4-acl)# permit ip any

Permit all packets on interface

OS10(config)# ip access-list ABC
                                 OS10(conf-ipv4-acl)# permit ip any
                                 OS10(conf-ipv4-acl)# deny ip any fragments

Rate this content

Easy to understand
Was this article helpful?
0/3000 characters
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please select whether the article was helpful or not.
  Comments cannot contain these special characters: <>()\