Since a connection's MTU is not guaranteed to be the same in both directions, fragmentation at the IP layer might still occur. This can be simply fixed by responding the MTU-sized connection request message with an MTU-sized connection reply message (and setting the DoNotFragment flag).
It's easy to test this by connecting to a Windows machine with a lower MTU (e.g. netsh interface ipv4 set subinterface "Local Area Connection" mtu=1200). The configured MTU will only be enforced on outgoing messages causing the wrong MTU to be detected, which will cause outgoing messages to be fragmented at the IP layer.
Since a connection's MTU is not guaranteed to be the same in both directions, fragmentation at the IP layer might still occur. This can be simply fixed by responding the MTU-sized connection request message with an MTU-sized connection reply message (and setting the DoNotFragment flag).
It's easy to test this by connecting to a Windows machine with a lower MTU (e.g. netsh interface ipv4 set subinterface "Local Area Connection" mtu=1200). The configured MTU will only be enforced on outgoing messages causing the wrong MTU to be detected, which will cause outgoing messages to be fragmented at the IP layer.