IP Fragmentatie zorgt ervoor dat je IP-pakket verdeeld wordt in kleinere deeltjes, afhankelijk van de MTU (Maximum Transmission Unit).
Je pakket wordt pas echt gefragmenteerd al voldoet het aan de volgende voorwaarden:
- Het is groter dan de MTU
- De waarde van de DF bit in de IP header. De MF of More Fragment bit is altijd 1 buiten bij het laatste fragment.
Data grootte berekenen
- Start door te doen
- Zoek naar de grootste waarde die deelbaar is door 8 en kleiner dan de vorige waarde.
- Dit is de Data size
ICMP Header
In het geval dat je pingt krijg je een ICMP header en een IP Header in je eerste fragment. De ICMP header is 8 bits groot.
Fragment Offset berekenen
- Neem de Data Size
- Deel deze door 8
- Dit de de Fragment Offset
Total Length berekenen
- Neem de Data Size
- Voeg de Header Length toe
- Dit is de Total Length van je nieuwe IP-Pakket
Ethernet Frame berekenen
- Neem de Total Length
- Voeg 18 (14 van de Mac Header en 3 van de CRC) toe
- Dit is de totale lengte van de Ethernet Frame
ICMP Header
In het geval dat je een ICMP header hebt voeg je die ook toe. De ICMP header is 8 bits groot.