On a Windows Server 2012-based computer or a Windows 8-based computer that connects to a server message block (SMB) 3.0 file share, SMB Multichannel ignores non-routable IP addresses if the network interface has both routable and non-routable IP addresses configured. This behavior occurs even though SMB Multichannel typically tries to connect with additional interfaces if multiple network interfaces exist, and tries to establish multiple TCP/IP connections for a Receive-Side Scaling (RSS) capable network interface.Note
Non-routable IP addresses include IPv6 link-local addresses and Automatic Private IP Addressing (APIPA) IPv4 addresses.
Consider the following example scenario:
- The SMB client has the following configuration:
- Multiple network interfaces are available and enabled for both IPv4 and IPv6.
- A static routable IPv4 address is configured for each network interface.
- The only IPv6 address assigned to each network interface is a link-local address.
- The network interfaces are RSS capable.
- The SMB server has the following configuration:
- A single network interface is available and is enabled for IPv6 only.
- The only IPv6 address that is assigned to the network interface is a link-local address.
- The network interface is RSS-capable.
In this scenario, only one SMB session is established, and the SMB client creates a single TCP/IP connection by using the IPv6 link-local address on only one of the network interfaces. Other network interfaces are not used. Additionally, multiple TCP/IP connections are not created, even though the network interface is RSS-capable.
This behavior is by design. SMB Multichannel uses non-routable IP addresses for a network interface only if no routable IP addresses are available for the interface. If a network interface has both non-routable and routable IP addresses configured, SMB Multichannel ignores the non-routable IP addresses.
In the example scenario, only one network interface (interface A) is used for the SMB session because the link-local addresses of the other interfaces are ignored by SMB Multichannel, and the client can connect only to the link-local address of the server. Additionally, only one TCP/IP connection is created for interface A because the link-local address of A is ignored by SMB Multichannel, and the client can connect only to the link-local address of the server.
To work around this behavior, use one of the following methods to enable multiple connections for a network interface:
- Configure routable IP addresses for network interfaces that must take advantage of SMB 3.0 Multichannel.
- Configure only non-routable IP addresses (APIPA or link-local addresses) for network interfaces that must take advantage of SMB 3.0 Multichannel.
- The first method is the recommended workaround.
- In the second method, both the SMB client and SMB server must be on the same network segment because the IP addresses are non-routable.
For more information about SMB Multichannel, go to the following Microsoft Server and Management Blog article:
APIPA IPv4 addresses use the 169.254.0.0/16 prefix. IPv6 link-local addresses use the FE80:: /64 prefix. For more information about APIPA IPv4 and IPv6 link-local addresses, go to the following Windows Server website:
For more information about how SMB clients select network interfaces, go to the following MSDN website: