Using AzCopy to copy blobs between storage accounts with network restrictions

Nassim Cherifi 0 Reputation points
2025-12-17T08:52:56.13+00:00

We followed the recommendations outlined in this document by implementing Workaround 1.

Before implementing Workaround 1, we had two private endpoints in two different VNets, and Workaround 4 was working perfectly in this setup. However, this approach is not scalable. Therefore, we followed the recommendations of Workaround 1 by moving one of the private endpoints.

However, I don’t fully understand technically how Workaround 1 works. Could you please explain? I assume that the traffic is not initiated by the private endpoint itself, as this would be technically impossible.

Regards,

Azure Blob Storage
Azure Blob Storage
An Azure service that stores unstructured data in the cloud as blobs.
{count} votes

1 answer

Sort by: Most helpful
  1. Gowtham CP 7,085 Reputation points Volunteer Moderator
    2025-12-17T09:22:46.01+00:00

    Hi Nassim Cherifi ,

    Thanks for the question.

    How Workaround 1 works (technically)
    In Workaround 1, AzCopy is the component that initiates all network traffic. A private endpoint does not initiate traffic by itself—it is simply a private IP mapped to the Azure Storage service. This is expected behavior for Azure Private Endpoint.

    When AzCopy runs from a VM or host that:

    Is placed in a VNet with access to both storage accounts

    Resolves both storage account DNS names to their private endpoint IPs

    AzCopy establishes two outbound connections:

    One to the source storage account private endpoint

    One to the destination storage account private endpoint

    Data is streamed through the AzCopy client (source → AzCopy → destination). There is no direct storage-to-storage communication between private endpoints.

    Why your assumption is correct
    You are right that traffic is not initiated by the private endpoint. Private Endpoints only accept inbound connections; the client (AzCopy) always drives the data transfer.

    Why this approach is scalable
    Only the AzCopy execution environment requires network access to both storage accounts. This avoids needing multiple private endpoint peerings across VNets, making the setup more scalable.


    References

    Copy blobs between storage accounts with network restrictions
    https://learn.microsoft.com/troubleshoot/azure/azure-storage/blobs/connectivity/copy-blobs-between-storage-accounts-network-restriction

    Azure Private Endpoint overview
    https://learn.microsoft.com/azure/private-link/private-endpoint-overview

    Private Endpoint DNS behavior
    https://learn.microsoft.com/azure/private-link/private-endpoint-dns

    AzCopy networking and authentication overview
    https://learn.microsoft.com/azure/storage/common/storage-use-azcopy-v10

    I hope this clarifies. If the answer is helpful, please accept it to close the thread.


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.