Skip to content

MTU

How To Change The TCP/IP MTU On Windows Server 2016

Over the year’s I’ve had numerous occasions arise when I needed to change the MTU on a Windows based computer.  There are a million reasons why this is needed, such as the following.

  • Windows Servers deployed in an OpenStack environment require the MTU to be decreased to 1454 in order to work correctly with Neutron.
  • DSL very commonly uses a smaller 1492 byte MTU when deployed with PPPoE encapsulation, so performance can be significantly degraded if the router and computers are not decreased to match.
  • VPN connections over DSL and some WIFI networks are notorious for failing unless the MTU is adjusted.

 

What Affect Does MTU Have?

 

Packet size, also known as MTU or Maximum Transmission Unit, is the largest amount of data that can be transferred in one packet at the physical layer (OSI Layer 1) of the network. Ethernet’s default MTU is 1500 bytes without using Jumbo Frames.  For PPPoE the MTU is 1492 and dial-up connections typically used 576 back in the day.

Each transmission unit contains of header and actual data. This data is called the MSS, or Maximum Segment Size.  MSS defines the largest segment of TCP data that can be transmitted in a packet.  In a more summarized manner,

MTU=MSS + TCP & IP headers.

Click Here To Keep Reading!

How to change the MTU in Windows Server 2008 & 2012

When I finally got a Windows Server 2012 image built and deployed on OpenStack, I started having some seriously squirrely problems with networking. I was able to ping and resolve DNS. I was even able to browse network shares on other servers that were well up the chain outside of the virtual environment, but I was unable to actually browse the internet from the Windows Server 2012 instance on OpenStack. I was having no issues with Linux based images.

I immediately suspected MTU as the culprit. I double check my neutron-dnsmasq.conf file to make sure the MTU was set at 1454, via DHCP configuration. It was. So, I checked the MTU settings on the Windows image and it was in fact 1500. For some reason the DHCP option was not having any effect on the Windows image. This is supposed to be addressed by the CloudBase VirtIO driver, allowing the MTU to be set via DHCP in OpenStack environments, but it obviously wasn’t working. You can check your MTU by doing the following:

 

Open an Administrator command prompt.

netsh interface ipv4 show interfaces

 

Screen Shot 2015-04-27 at 7.29.38 PM

 

This will show you your current MTU settings. Pay close attention to the Idx # of the ethernet interface. You will need this information to change the MTU. To change the MTU to 1454 use this command. (you will need to replace the “10” with the Idx for your ethernet interface)

Click here to read the entire tutorial!