Page MenuHomeFreeBSD

sys/netinet: handle IPv4 PMTU Discovery
Needs ReviewPublic

Authored by wma on Jul 2 2021, 4:37 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Oct 14, 1:06 PM
Unknown Object (File)
Tue, Oct 14, 1:05 PM
Unknown Object (File)
Tue, Oct 14, 1:05 PM
Unknown Object (File)
Mon, Oct 13, 11:14 PM
Unknown Object (File)
Wed, Sep 17, 8:03 PM
Unknown Object (File)
Jul 23 2025, 6:39 PM
Unknown Object (File)
Jul 21 2025, 2:36 AM
Unknown Object (File)
Jul 5 2025, 3:17 AM
Subscribers

Details

Reviewers
mw
imp
np
tuexen
Summary

On input ICMP handler is updating tcp_hostcache with the PMTU value.
On output calculate MTU based on the route/interface and hostcache.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

wma requested review of this revision.Jul 2 2021, 4:37 AM

SCTP and TCP do a similar handling, but only after performing some checks (port numbers and vtag in case of SCTP, port numbers and sequence number in case of TCP) to make it non-trivial for an off-path attacker to generate an ICMP message, which will be accepted and the corresponding MTU will be cached.

How is such an check done in this context?

Good point. I removed all *input processing and left only *output check, which might be worth to have it in one place as we don't update mtu here anyway. Also pushed some changes to UDP ctlinput to match https://reviews.freebsd.org/D30992