GRE Tunnel
Calculate GRE tunnel encapsulation overhead and effective payload MTU.
About GRE Tunnel
A GRE tunnel wraps each original packet with a 4-byte GRE header and a new 20-byte outer IPv4 header, adding 24 bytes of overhead per packet (more if GRE keepalive or checksum options are enabled, which this baseline calculation excludes). Because the tunneled packet must still fit within the physical network's MTU, the effective MTU available to traffic entering the tunnel is reduced by this overhead — commonly requiring either a lower MTU configured on tunnel interfaces or path MTU discovery/fragmentation handling to avoid black-holed traffic.
Formula
Effective payload MTU
effective_payload = physical_mtu − 24
- 24
- 4 bytes GRE header + 20 bytes outer IPv4 header
Worked example
With the default values below, GRE Tunnel returns Effective Payload MTU (after GRE header) of 1,476. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Physical (Underlay) MTUminimum 576 bytes
- 1,500 bytes
- Inner IP Versionone of IPv4, IPv6
- IPv4
Results
- Effective Payload MTU (after GRE header)
- 1,476 bytes
- GRE Encapsulation Overhead
- 24 bytes
- Max Inner IP Payload (after inner IP header)
- 1,456 bytes
- Overhead as % of Physical MTU
- 1.60%
Step by step
- 1Values used
- 2Effective payload MTU
- 3Effective Payload MTU (after GRE header)= 1,476 bytes
- 4GRE Encapsulation Overhead= 24 bytes
- 5Max Inner IP Payload (after inner IP header)= 1,456 bytes
- 6Overhead as % of Physical MTU= 1.60
Assumptions and limits
- The result is derived only from the 2 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
- Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
Why is GRE overhead only 24 bytes when VXLAN is 50?
GRE is a simpler, Layer-3 tunneling protocol — it just adds a 4-byte GRE header and a 20-byte outer IP header. VXLAN adds a full UDP transport layer (8 bytes) and preserves the original Ethernet frame with its own outer Ethernet header (14 bytes) on top of similar IP encapsulation, since VXLAN is designed to tunnel Layer-2 (Ethernet) traffic across a Layer-3 network, which GRE in its basic form does not.
What happens if I don't adjust MTU on GRE tunnel interfaces?
Full-size packets entering the tunnel may exceed the underlay's MTU once the 24-byte GRE overhead is added, causing fragmentation (if the 'don't fragment' bit is clear) or silent packet drops with an ICMP 'fragmentation needed' message that's often blocked by firewalls — leading to intermittent connectivity issues that are notoriously hard to diagnose (the classic 'MTU black hole' problem).
Does using GRE with IPsec change the overhead?
Yes — GRE-over-IPsec (a common design for routable, encrypted tunnels supporting dynamic routing protocols) stacks GRE's 24 bytes with IPsec's own ESP/AH overhead, which can add 50+ bytes total depending on the cipher and mode, so effective MTU should be calculated for the combined stack, not GRE alone.
