Standard D8ns v6 VMs cannot reach Azure Files Private Endpoint over TCP 445 when NAT Gateway is enabled

mr. Ma 0 Reputation points
2026-06-24T16:16:08.51+00:00

Hello,

I need help with an Azure networking issue involving Azure Virtual Desktop, NAT Gateway, Azure Files Private Endpoint, and TCP 445 / SMB connectivity.

This is not a general outbound internet connectivity issue. NAT outbound internet access works correctly. The affected VMs show the expected NAT public outbound IP when testing internet connectivity.

The issue is specifically related to TCP 445 connectivity from Standard D8ns v6 VMs to an Azure Files Private Endpoint.

Environment summary:

Region: UK South

Azure Virtual Desktop session hosts

Windows 11 Enterprise multi-session

Session hosts are in the same VNet and same session host subnet

NAT Gateway is associated with the session host subnet

Azure Files is accessed through a Private Endpoint in the same VNet

Azure Files is used for FSLogix profile containers

DNS resolves the Azure Files FQDN to the Private Endpoint private IP

Destination FQDN pattern: <storage-account>.file.core.windows.net

Destination: Azure Files Private Endpoint private IP

Destination port: TCP 445 / SMB

No NSG is applied to the relevant VM NICs or subnets

No UDR / route table is applied to the relevant subnet

Problem:

Standard D8ns v6 VMs consistently cannot reach the Azure Files Private Endpoint over TCP 445 when NAT Gateway is enabled on the session host subnet.

I recreated the affected VM multiple times, approximately five times, using the same VM size/series. Every newly created Standard D8ns v6 VM shows the same behavior: TCP 445 to the Azure Files Private Endpoint fails or times out.

However, I also tested other VM sizes/series in the same subnet, with the same NAT Gateway and the same Azure Files Private Endpoint, and they work correctly.

Known test results:

Standard D8ns v6 VM: TCP 445 to Azure Files Private Endpoint fails / times out.

Standard D4lds v6 VM in the same subnet: TCP 445 succeeds.

Standard D2lds v6 VM in the same subnet: TCP 445 succeeds.

All tested VMs use the same general network path:

Same VNet

Same session host subnet

Same NAT Gateway

Same Azure Files Private Endpoint

Same DNS resolution behavior

Same destination FQDN pattern: <storage-account>.file.core.windows.net

Same destination port: TCP 445

Diagnostic details:

Azure Network Watcher Connection troubleshoot confirms the connectivity difference.

For the affected Standard D8ns v6 VM:

  • Result: Unreachable
  • Destination: Azure Files Private Endpoint
  • Port: TCP 445
  • Probes sent: 316
  • Probes failed: 316
  • Next hop: PrivateEndpoint
  • Route table: System Route
  • For working VM sizes in the same subnet:

Connection troubleshoot to the same Azure Files Private Endpoint on TCP 445 shows Reachable.

Additional observations:

DNS resolution is correct.

Azure Files FQDN resolves to the Private Endpoint private IP.

NAT outbound internet works from all tested VMs.

All tested VMs show the expected NAT public outbound IP.

There is no NSG applied to the relevant subnet or NICs.

There is no UDR / route table applied.

Network Watcher Next Hop shows PrivateEndpoint / System Route.

The Azure Files Private Endpoint is healthy and reachable from other VM sizes in the same subnet.

Impact:

This breaks FSLogix profile container access on the affected Standard D8ns v6 Azure Virtual Desktop session hosts. FSLogix cannot attach the user profile container because SMB TCP 445 to the Azure Files Private Endpoint is not reachable.

When NAT Gateway is removed from the session host subnet and default outbound access is allowed, the affected VM can access the FSLogix profile storage and the user profile files appear correctly. When NAT Gateway is enabled again, the affected Standard D8ns v6 VM cannot reach the Azure Files Private Endpoint over TCP 445.

Expected behavior:

All VMs in the same subnet should be able to reach the Azure Files Private Endpoint over TCP 445. NAT Gateway should not break connectivity to a Private Endpoint, especially when Network Watcher shows the next hop as PrivateEndpoint / System Route.

Actual behavior:

Standard D8ns v6 VMs consistently fail TCP 445 connectivity to the Azure Files Private Endpoint when NAT Gateway is enabled, while other VM sizes in the same subnet work correctly.

Question:

Could this be related to the Standard D8ns v6 VM size/series, Azure fabric placement, NIC path, or a platform routing issue affecting Private Endpoint traffic when NAT Gateway is enabled?

I would appreciate guidance on how to investigate this further, or whether this needs escalation to Azure networking/platform engineering.

Suggested tags:

azure-virtual-network

azure-nat-gateway

azure-private-link

azure-files

azure-virtual-desktop

Azure NAT Gateway
Azure NAT Gateway

NAT Gateway is a fully managed service that securely routes internet traffic from a private virtual network with enterprise-grade performance and low latency.


4 answers

Sort by: Newest
  1. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

  2. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

  3. mr. Ma 0 Reputation points
    2026-06-25T08:41:03.9033333+00:00

    Hello,

    I completed the additional checks you suggested.

    1. Accelerated Networking

    I tested the affected Standard D8ns v6 VM with Accelerated Networking both disabled and enabled.

    Results:

    • EnableAcceleratedNetworking = False → TCP 445 to the Azure Files Private Endpoint still fails / times out.
    • EnableAcceleratedNetworking = True → TCP 445 to the Azure Files Private Endpoint still fails / times out.

    So Accelerated Networking / SR-IOV does not appear to be the cause or workaround in this case.

    1. Guest route / adapter comparison

    I compared the guest OS route selection and adapter configuration between the affected Standard D8ns v6 VM and a working VM in the same subnet.

    The only difference I found is the local Windows InterfaceIndex value. All relevant routing values are otherwise the same:

    • Same selected route to the Azure Files Private Endpoint
    • Same route logic
    • Same route/interface metrics
    • No NSG applied
    • No UDR / route table applied
    • Network Watcher Next Hop still shows PrivateEndpoint / System Route

    So this does not appear to be a guest OS route selection issue.

    1. Packet capture comparison

    I performed packet captures inside both VMs using pktmon and opened the pcapng files in Wireshark.

    On the affected Standard D8ns v6 VM, during the TCP 445 test to the Azure Files Private Endpoint, I can see TCP SYN packets being sent to port 445, followed by multiple SYN retransmissions. However, there is no SYN-ACK response from the Azure Files Private Endpoint.

    D8ns v6 VM

    [Insert screenshot 1 here: affected Standard D8ns v6 VM — SYN packets and SYN retransmissions to TCP 445, no SYN-ACK response]

    On the working VM size in the same subnet, the same test shows a normal TCP handshake:

    • client → 445: SYN
    • 445 → client: SYN, ACK
    • client → 445: ACK

    working VM

    [Insert screenshot 2 here: working VM size — normal TCP handshake, SYN → SYN-ACK → ACK]

    This confirms that the affected Standard D8ns v6 VM is generating and sending the TCP connection attempt, but the TCP handshake does not complete because the SYN-ACK response is not received. The same Azure Files Private Endpoint and TCP 445 flow works from other VM sizes in the same subnet.

    Based on these results, the issue still appears to be specific to Standard D8ns v6 / Azure fabric / NIC path behavior rather than DNS, NSG, UDR, guest routing, or Accelerated Networking.

    Could you please advise the next diagnostic step?

    Given that the suggested checks have been completed and the issue still appears isolated to Standard D8ns v6, could you please escalate this to Azure networking/platform engineering or create a support case on my behalf if further investigation is required? I currently have access through Azure Developer Support / Priority Community Support, so I cannot open a private technical support case directly from the Azure Portal.

    Was this answer helpful?


  4. Jerald Felix 18,760 Reputation points Volunteer Moderator
    2026-06-24T17:07:41.8933333+00:00

    Hello mr. Ma,

    Greetings! Thanks for raising this question in the Q&A forum.

    Based on what you have already collected, this looks like a platform level networking behavior tied specifically to the Standard D8ns v6 size rather than a configuration issue in your VNet, NSG, route table or Private Endpoint. You have already ruled out the usual suspects (DNS, NSG, UDR, Private Endpoint health) and isolated the variable to VM size, which is the right approach. Here is how to take this further before and during an Azure Support escalation.

    1. Rule out Accelerated Networking as a factor The Dnsv6 family uses a newer NIC and Accelerated Networking implementation compared to older Dv5/Dsv5 series. When Accelerated Networking is enabled, the data path for SR-IOV virtual functions can behave differently when a NAT Gateway is also attached to the same subnet, particularly for flows that should bypass NAT entirely (Private Endpoint traffic). Temporarily disable Accelerated Networking on the affected D8ns v6 VM's NIC and retest TCP 445 to the Private Endpoint.
    Stop-AzVM -ResourceGroupName "<rg>" -Name "<vmname>" -Force
    Update-AzNetworkInterface -NetworkInterface (Get-AzNetworkInterface -ResourceGroupName "<rg>" -Name "<nicname>") -EnableAcceleratedNetworking $false
    Start-AzVM -ResourceGroupName "<rg>" -Name "<vmname>"
    

    If TCP 445 starts working with Accelerated Networking disabled, that confirms the data path implementation on this VM size is the trigger and gives Azure Support a concrete repro to work from.

    1. Capture the effective routes from inside the VM, not just Network Watcher Network Watoner showing next hop PrivateEndpoint is correct from a control plane perspective, but it does not always reflect what the host's actual flow table is doing for a specific VM size. Pull the effective routes directly:
    Get-AzEffectiveRouteTable -ResourceGroupName "<rg>" -NetworkInterfaceName "<nicname>" | Format-Table
    

    Confirm the Private Endpoint's /32 route still shows next hop type VNetLocal or PrivateEndpoint, and that there is no overlapping NAT Gateway influenced route for that specific /32 prefix.

    1. Run a packet capture on the affected VM during a failed connection attempt
    netsh trace start capture=yes tracefile=C:\PEtrace.etl
    # reproduce the SMB connection attempt to the storage account FQDN
    netsh trace stop
    

    Open the trace and check whether the SYN packet is leaving the NIC at all, or whether it is being silently dropped at the host level before it reaches the wire. If the SYN never leaves the VM, this points to a host or NIC driver level issue specific to this VM series rather than anything in the VNet.

    1. Check MTU and TCP offload settings Some newer VM series default to different TCP Chimney Offload or RSS settings. From an elevated PowerShell session on the affected VM:
    Get-NetAdapterAdvancedProperty -Name "Ethernet*"
    netsh interface ipv4 show subinterfaces
    

    Compare the MTU and offload settings against a working D4lds v6 VM in the same subnet. A mismatch here combined with NAT Gateway's flow handling can cause exactly this kind of selective TCP 445 timeout.

    1. Escalate to Azure Support with the evidence you already have Since this reproduces consistently across 5 separately created VMs of the same size, and resolves when NAT Gateway is removed, this is very likely a fabric or host networking regression tied to the D8ns v6 SKU rather than something you can resolve from the customer side. Open a support case under Networking > Virtual Network and include:
      • The Network Watcher Connection Troubleshoot results for both the failing and working VM sizes
        • The Resource ID of the affected VM, the NAT Gateway, and the Private Endpoint
          • Results from steps 1 to 4 above
            • The exact timestamps of your test attempts so the networking team can correlate against fabric telemetry

    Until this is resolved, removing the affected VM size from the session host pool, or keeping NAT Gateway off this specific subnet and using a UDR to a firewall/NVA for general internet egress instead, is the safest interim workaround so FSLogix profile attach is not impacted.

    If this answer helps you kindly accept the answer which will help others who have similar questions.

    Best Regards,

    Jerald Felix.

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.