/pmtud

Primary LanguageGoApache License 2.0Apache-2.0

Path MTU Discovery Daemon

Build Status Coverage Status Go ReportCard Go Doc

In ECMP or L4 load balanced environments ICMP messages are mostly routed to the wrong servers. Path MTU Discovery Daemon solves this problem by "broadcasting" received ICMP packet too big messages to all backend instances of an L3/L4 load balanced service using IPIP encapsulation. Some Details:

If you've stumbled over https://github.com/cloudflare/pmtud/ but you're in an environment where your servers are in different L2 domains this is probably what you're looking for.

Install

go get github.com/exaring/pmtud

Run

pmtud -cfg.file /path/to/config.yml

Configuration

# interfaces to read ICMP type 3 code 4 packet from
interfaces: ["enp4s0"]
# IP tunnel endpoints to send the read packets to
backends:
  - 10.0.0.0
  - 10.0.0.1