Can I force a higher TCP segment size with netcat?

I'm using netcat to send random data from A to B, both Linux machines on Ethernet networks, with a router in the middle. For pedagogic purposes I'd like to force IP fragmentation on the router (Cisco 1811, base image). I've first lowered the MTU to 500 (instead of the original 1500) on the outbound router interface, but then the router sends and ICMP fragmentation needed message and A lowers TCP segment size accordingly. I've then set a lower MTU directly on B, but then B advertises a lower Maximum Segment Size and A accepts it, leading to no fragmentation.

Can I make A ignore B's MSS in the negociation and use a 1500-tailored segment size anyway? Or do you see another way to force IP fragmentation on the router?

For practical reasons I cannot recompile the kernel or install arbitrary software on the machines, I have to work with what's there (reasonably standard set of networking tools I hope).

Leave Your Comment