SMB Multichannel is one of the most frequently misunderstood features in the TrueNAS ecosystem. On paper it sounds simple: two NICs on the server side, two on the client side, SMB bundles the connections and the client gets more bandwidth — without LACP, switch configuration or additional software. In practice, we regularly sit in front of a TrueNAS with two 10GbE ports and a Windows client with two ports as well, wondering why Get-SmbMultichannelConnection shows exactly one connection.
The reason is almost always a combination of three factors: SMB Multichannel is enabled on the server, but the Windows client does not see the second route because either RSS on the adapter is missing, the NIC driver is too old, or both ports sit in the same subnet and the client picks only one address for routing reasons. This article covers the full configuration on TrueNAS Scale 24.10 and 25.04, verification on Windows 11 and Windows Server 2025, plus the failure modes we regularly encounter in real projects.
What SMB Multichannel actually does
SMB Multichannel is a feature of SMB 3.0 and above. When client and server both have multiple suitable network paths to each other, the SMB client automatically opens multiple TCP connections to the server and distributes load across them. “Suitable” means: matching speed, RSS-capable or RDMA-capable, and reachable from the client’s perspective. There is no negotiation process to configure — the client decides unilaterally based on the adapter capabilities it queries from the server.
That is the key difference from LACP or balance-XOR bonds: Multichannel works on Layer 5 (SMB session layer), not Layer 2. It therefore does not depend on the switch, uses multiple queues via RSS even for a single TCP session, and works even when the two ports live in separate subnets — which in many setups is actually the cleaner variant.
Server configuration on TrueNAS Scale
TrueNAS Scale uses Samba as its SMB server. SMB Multichannel has been marked “experimental” since Samba 4.15, but it has been running stably in our customer projects for years. To enable it, open the TrueNAS web UI at System Settings -> Services -> SMB and click Configure. Under Auxiliary Parameters, add the following lines:
server multi channel support = yes
aio read size = 1
aio write size = 1
If you want to check the resulting smb4.conf fragments directly, you will find them under /etc/samba/smb4.conf — but never edit that file manually, as TrueNAS will overwrite it on the next middleware reload. After saving, the SMB service must be restarted.
Important: both network ports must be configured as independent interfaces under TrueNAS Network -> Interfaces, each with its own IP address. A LACP bond on the server side prevents Multichannel rather than helping, because Samba then only sees one interface.
Network layout: one or two subnets
This is where the wheat separates from the chaff. SMB Multichannel supports both variants in principle, but in practice we always recommend two separate subnets for dedicated storage networks:
| Scenario | Recommendation | Reason |
|---|---|---|
| Two 10GbE ports, dedicated storage switch | Two /29 subnets, no gateway | Clean routing, client picks both paths |
| Shared LAN, single switch | One subnet, interfaces option in Samba | Simpler setup, but Windows routing may suppress channels |
| Direct connection (DAC) | Two /30 point-to-point subnets | No switch required, ideal for small setups |
In a two-subnet setup (example: 10.20.10.0/24 and 10.20.11.0/24), the Windows client obviously has to be reachable in both networks. The storage interfaces do not need a default gateway — SMB traffic stays local.
Preparing the Windows client
Two prerequisites must be met on the Windows client: RSS (Receive Side Scaling) must be enabled per NIC, and the driver must be current. For Intel X710/X550 and Mellanox ConnectX-4/5, the Windows inbox drivers are often several years old and support RSS but do not negotiate SMB client capabilities correctly. For production setups: install the current OEM driver (Intel PROSet 29.x, Nvidia/Mellanox WinOF-2 3.20+).
Check and enable RSS:
Get-NetAdapterRss -Name "Ethernet 2"
Enable-NetAdapterRss -Name "Ethernet 2"
Set-NetAdapterRss -Name "Ethernet 2" -NumberOfReceiveQueues 8
The number of queues should be 8 or 16 and must not exceed the number of physical cores. For Intel cards we also recommend a look at the adapter properties (ncpa.cpl -> NIC -> Configure -> Advanced): Receive Side Scaling should be set to Enabled and ideally RSS Load Balancing Profile to NUMAScalingStatic.
Verification: the right commands
After connecting to an SMB share (via Explorer, net use or New-SmbMapping), check on the Windows client whether Multichannel is really active:
Get-SmbMultichannelConnection -ServerName truenas01
Get-SmbMultichannelConnection -ServerName truenas01 -IncludeNotSelected
The first command shows the actively used connections — you should see one line per server IP, so two lines total in a 2x10GbE setup. The second command with -IncludeNotSelected is the more interesting one: it also lists connections the client sees but does not use, with Selected = False and a reason in the Failure Reason field.
Common values in Failure Reason:
Server not RSS capable— the server adapter reports no RSS. On TrueNAS this is usually due to the interface type (bond, VLAN without parent RSS) or outdated kernel-module drivers.Client not RSS capable— RSS on the client adapter is disabled or the driver does not report it.Different network subnets— not an error per se, just information: the client has no route to the server on this path.
Also useful are Get-SmbConnection (shows active sessions with dialect and Multichannel flag) and smbstatus -L on TrueNAS, which shows the per-session open connections.
Common pitfalls from real projects
Over the past years we have seen almost every conceivable failure combination in DATAZONE customer projects. The most common ones:
- VLAN interface without RSS inheritance: if you configure the SMB interface as a VLAN on top of a bond, Samba may stop reporting RSS depending on the kernel version. Fix: use separate physical ports, no VLANs for storage traffic.
- Jumbo frames on only one side: MTU 9000 on the server but not on the switch or client leads to fragmented packets and highly variable performance. In our customer projects we typically see this as “Multichannel is running, but slower than a single session”.
- Antivirus filter on the client: endpoint protection such as Trend Micro or older Defender versions keeps SMB sessions in a single filter-driver context, which blocks Multichannel.
- Windows Server as a client with SMB client Multichannel disabled: check with
Set-SmbClientConfiguration -EnableMultiChannel $true. Enabled by default, but Group Policies love to reset it. - TrueNAS with mixed NIC speeds: a 10GbE and a 1GbE port are not combined. Multichannel requires matching adapter speeds.
DATAZONE supports you
TrueNAS SMB Multichannel is not a “tick a box and it works” feature. Without proper network planning, current drivers and a basic understanding of RSS queues, bandwidth stays on the table — often without anyone noticing that double the performance would actually be possible. As a TrueNAS Solutions Architect partner we plan and implement 10GbE and 25GbE storage networks for SMB, iSCSI and NFS workloads, including Windows and Hyper-V integration. Get in touch — we will assess your existing setup, measure actual Multichannel usage and deliver a concrete recommendation.
More on these topics:
More articles
TrueNAS on Old Hardware: Recycle or Buy New?
TrueNAS on decommissioned server hardware: when recycling for backup and secondary storage makes sense, when ECC RAM, HBA and PSU need to be new.
OPNsense HA with CARP: 3 Real-World Pitfalls
OPNsense HA with CARP in SMB environments: the three most common pitfalls -- config drift, sync-interface saturation and DHCP failover -- with fix procedures.
TrueNAS Made in USA: Honestly Assessing the Data Privacy Debate for EU Customers
TrueNAS is developed in the US -- is that a GDPR problem? An honest look at CLOUD Act, telemetry, source-available code and support contracts for EU customers.