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)
Wed, Mar 18, 12:17 PM
Unknown Object (File)
Sat, Mar 14, 5:47 PM
Unknown Object (File)
Thu, Mar 5, 3:22 AM
Unknown Object (File)
Tue, Mar 3, 6:27 PM
Unknown Object (File)
Tue, Mar 3, 1:47 PM
Unknown Object (File)
Mon, Mar 2, 9:07 AM
Unknown Object (File)
Mon, Mar 2, 3:26 AM
Unknown Object (File)
Feb 1 2026, 10:29 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