The IP packet, TTL, fragmentation and MTU
IPv4 header fields that matter
| Field | Why you care |
|---|---|
| Version / IHL | IPv4, header length (normally 20 bytes) |
| DSCP | Quality-of-service marking — VoIP uses EF (46) |
| Total length | Size of the packet |
| Identification, flags, fragment offset | Fragmentation |
| TTL | Hop limit; decremented by each router, packet dropped at 0 |
| Protocol | 6 = TCP, 17 = UDP, 1 = ICMP |
| Source / destination address | Who to whom |
traceroute works by sending packets with TTL 1, 2, 3… and listening for the "time exceeded" messages each router returns.
MTU and fragmentation
Ethernet carries at most 1500 bytes of IP per frame (the MTU). Tunnels (PPPoE, VPNs) add headers, reducing the usable size. When a packet is too big and the Don't Fragment bit is set, the router drops it and sends ICMP "fragmentation needed". If a firewall blocks that ICMP message, you get the classic black hole: small requests work, large transfers hang.
Find the path MTU:
ping -f -l 1472 8.8.8.8 # Windows: 1472 + 28 bytes of headers = 1500
ping -M do -s 1472 8.8.8.8 # Linux
Lower the size until it succeeds. Fix with MSS clamping on the firewall.
IPv6 differences
- Fixed 40-byte header with extension headers
- No fragmentation by routers — only the sender fragments, so path-MTU discovery must work (never block ICMPv6)
- Neighbour Discovery replaces ARP; SLAAC can configure addresses without DHCP
Rating
0
0
There are no comments for now.