도구스개발

MTU·MSS 오버헤드 계산기

MTU에서 IP·TCP 헤더와 터널 오버헤드를 빼 MSS를 계산합니다. PPPoE·GRE·IPsec·WireGuard·VXLAN을 겹쳐 쌓아 볼 수 있고, IPsec처럼 폭이 있는 값은 범위로 냅니다.

바이트

이더넷은 1500입니다. 이더넷 헤더 14와 FCS 4는 이 밖이라 빼지 않습니다.

겹쳐 쌓을 터널 (여러 개 고를 수 있습니다)

바이트

목록에 없는 캡슐화를 쓸 때 바이트 수를 직접 넣습니다.

권장 MSS

1460 바이트

터널 안 MTU 1500 − IP·TCP 헤더 40로 추정됩니다

터널 오버헤드 합0 바이트
터널 안 MTU1500 바이트
IP·TCP 헤더 (IPv4 20 + TCP 20)40 바이트
권장 MSS (안전한 쪽)1460 바이트
터널이 없을 때의 MSS1460 바이트
터널 때문에 줄어든 양0 바이트
한 패킷에서 헤더가 차지하는 비율2.67%
이더넷 헤더 14바이트를 또 빼면 안 됩니다. 이더넷의 MTU 1500은 프레임 전체가 아니라 페이로드의 크기입니다. 앞의 14바이트 헤더와 뒤의 4바이트 FCS는 그 밖에 있어, 선로에는 1518바이트가 흐르지만 MTU는 1500입니다.MSS = MTU − IP 헤더 − TCP 헤더 = 150040 = 1460반대로 VXLAN의 50바이트에는 바깥 이더넷 헤더 14가 들어 있습니다. 이더넷 프레임을 통째로 감싸기 때문이며, 언더레이 MTU를 1550으로 올리라는 안내가 여기서 나옵니다.
터널 하나를 빠뜨리면 «가끔 큰 파일만 안 넘어갑니다». 작은 패킷은 그대로 통과하고 MTU에 가까운 패킷만 조각나거나 버려지기 때문에, 증상이 간헐적으로 보여 원인을 찾기가 유난히 어렵습니다. PPPoE 위에 IPsec을 얹은 회선에서 PPPoE 8바이트를 빠뜨리는 것이 흔한 사고입니다.경로 MTU 탐색(PMTUD)이 막혀 있으면 더 나빠집니다. 중간 장비가 ICMP «Fragmentation Needed»를 버리면 송신 측이 줄여야 할 것을 모른 채 계속 큰 패킷을 보냅니다. 이럴 때 쓰는 것이 MSS 클램핑이며, 여기서 나온 값을 라우터에 박아 두면 됩니다.
IPsec만 범위로 냅니다. ESP 터널 모드의 오버헤드는 암호 방식과 패딩에 따라 54~73바이트로 달라집니다(AES-GCM은 54~57, AES-CBC+SHA1은 58~73). 확정값이 아니므로 범위로 내며, 실제 설정을 모른다면 안전한 쪽인 큰 값을 기준으로 잡는 편이 낫습니다.VLAN 태그 4바이트는 대개 MTU를 깎지 않습니다. 프레임이 1522로 커질 뿐이고 요즘 장비는 이 «베이비 자이언트»를 그냥 넘깁니다. 중간에 못 넘기는 구간이 있을 때만 켜세요.GRE는 키·시퀀스 옵션을 쓰면 4~8바이트가 더 붙고, L2TPv3는 쿠키 길이에 따라 달라집니다. 목록에 없는 캡슐화는 «직접 더할 오버헤드»에 바이트 수를 넣으세요. 입력한 값은 브라우저 안에서만 계산되며 서버로 전송되지 않습니다.

사용 방법

  1. 1물리 링크의 MTU를 넣습니다. 이더넷은 1500입니다.
  2. 2겹쳐 쌓을 터널을 고릅니다. 여러 개를 함께 켤 수 있습니다.
  3. 3터널 안쪽에서 쓰는 IP 버전과 TCP 타임스탬프 옵션 사용 여부를 지정합니다.
  4. 4권장 MSS가 나옵니다. 범위로 나오면 안전한 쪽인 작은 값을 쓰세요.
  5. 5이 값을 라우터의 MSS 클램핑 설정에 넣으면 됩니다.

자주 묻는 질문

MTU는 한 번에 보낼 수 있는 IP 패킷의 최대 크기이고, MSS는 그 안에서 TCP 데이터가 차지할 수 있는 최대 크기입니다. MSS = MTU − IP 헤더 − TCP 헤더이며, 이더넷 1500·IPv4·옵션 없는 TCP면 1500 − 20 − 20 = 1460이 됩니다.

이더넷의 MTU 1500이 프레임 전체가 아니라 페이로드의 크기이기 때문입니다. 앞의 14바이트 헤더와 뒤의 4바이트 FCS는 그 밖에 있어, 선로에는 1518바이트가 흐르지만 MTU는 1500입니다. 여기서 14를 또 빼면 안 됩니다.

PPPoE 헤더 6바이트와 PPP 프로토콜 필드 2바이트를 더한 8바이트가 이더넷 페이로드를 차지하기 때문입니다(RFC 2516). 1500 − 8 = 1492이고 MSS는 1452가 됩니다.

암호 방식과 패딩에 따라 달라지기 때문입니다. ESP 터널 모드에서 AES-GCM은 54~57바이트, AES-CBC+SHA1은 58~73바이트입니다. 블록 암호는 데이터 길이에 따라 패딩이 0~15바이트로 변합니다. 실제 설정을 모른다면 안전한 쪽인 큰 값을 기준으로 잡는 편이 낫습니다.

VXLAN은 IP 패킷이 아니라 이더넷 프레임을 통째로 감싸기 때문입니다. 바깥 이더넷 14 + IP 20 + UDP 8 + VXLAN 8 = 50이며, 언더레이 MTU를 1550으로 올리라는 안내가 여기서 나옵니다.

대개 깎지 않습니다. 802.1Q 태그 4바이트가 붙으면 프레임이 1518에서 1522로 커질 뿐이고, 요즘 장비는 이 «베이비 자이언트»를 그냥 넘깁니다. 중간에 못 넘기는 구간이 있을 때만 4바이트를 빼면 됩니다.

«가끔 큰 파일만 안 넘어가는» 증상이 납니다. 작은 패킷은 그대로 통과하고 MTU에 가까운 패킷만 조각나거나 버려지기 때문에 간헐적으로 보여 원인을 찾기가 어렵습니다. 경로 MTU 탐색이 막혀 있으면(중간 장비가 ICMP를 버리면) 송신 측이 줄여야 할 것을 모른 채 계속 큰 패킷을 보내 더 나빠집니다. 이럴 때 라우터에서 MSS 클램핑을 겁니다.

전송되지 않습니다. 모든 계산은 브라우저 안에서 이루어지며 입력값은 이 기기에만 남습니다.

알아두면 좋은 점

  • 널리 알려진 조합(이더넷 1500 → MSS 1460, PPPoE 1492 → 1452, GRE 1476 → 1436, VXLAN 1450 → 1410, WireGuard IPv6 1420 → 1380)과 일치하는 것을 테스트로 확인했습니다.
  • IP·TCP 헤더 크기는 RFC로 확정된 값입니다(IPv4 20, IPv6 40, TCP 20, 타임스탬프 옵션 +12).
  • IPsec ESP 터널 모드만 폭이 있어 범위로 냅니다. 암호 방식과 패딩에 따라 54~73바이트입니다.
  • GRE는 키·시퀀스 옵션을 쓰면 4~8바이트가 더 붙고, L2TPv3는 쿠키 길이에 따라 달라집니다. 목록에 없는 캡슐화는 직접 입력하세요.
  • MTU는 68 이상이어야 합니다. IPv4가 반드시 처리해야 하는 최솟값입니다(RFC 791).
  • 입력한 값은 브라우저 안에서만 계산되며 서버로 전송되지 않습니다.

함께 보면 좋은 도구

마지막 검증: 2026년 8월 31일 · 결과는 참고용 추정치입니다.