Windows 2025
Sponsored Link

File Server : Configure DFS Replication2025/01/10

 

Configure DFS Replication groups.

To configure DFS Replication, it's possible to replicate data in a target folder on a server to other servers.

This example is based on the Active Directory Domain environment like follows.

                                   |
+----------------------+           |           +----------------------+
|  [ fd3s.srv.world ]  |10.0.0.100 | 10.0.0.101|  [ rx-7.srv.world ]  |
|   Active Directory   +-----------+-----------+     File Server #1   |
|                      |           |           |    DFS Replication   |
+----------------------+           |           +----------------------+
                                   |
                                   |           +----------------------+
                                   | 10.0.0.102|  [ rx-8.srv.world ]  |
                                   +-----------+     File Server #2   |
                                               |    DFS Replication   |
                                               +----------------------+

[1] Run PowerShell with Admin Privilege and Configure DFS Replication on the branch (source) server.
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

# create a DFS replication group (any name are OK)
PS C:\Users\serverworld> New-DfsReplicationGroup -GroupName "RepGroup01" 

GroupName   : RepGroup01
DomainName  : srv.world
Identifier  : 6eb84337-fe83-464e-9a42-7a20a510dcbe
Description :
State       : Normal

# set member servers for the replication group
PS C:\Users\serverworld> Add-DfsrMember -GroupName "RepGroup01" -ComputerName "rx-7","rx-8" 

GroupName                    : RepGroup01
ComputerName                 : RX-7
DomainName                   : srv.world
Identifier                   : 26bfe587-ac0c-4190-a26b-eb079efc0483
Description                  :
DnsName                      : rx-7.srv.world
Site                         : Default-First-Site-Name
NumberOfConnections          : 0
NumberOfInboundConnections   : 0
NumberOfOutboundConnections  : 0
NumberOfInterSiteConnections : 0
NumberOfIntraSiteConnections : 0
IsClusterNode                : False
State                        : Normal

GroupName                    : RepGroup01
ComputerName                 : RX-8
DomainName                   : srv.world
Identifier                   : c78a68e9-34f2-4ee5-8d92-653bf103ac3c
Description                  :
DnsName                      : rx-8.srv.world
Site                         : Default-First-Site-Name
NumberOfConnections          : 0
NumberOfInboundConnections   : 0
NumberOfOutboundConnections  : 0
NumberOfInterSiteConnections : 0
NumberOfIntraSiteConnections : 0
IsClusterNode                : False
State                        : Normal

# set a connection between members of the replication group
# -SourceComputerName [branch (source) server]
# -DestinationComputerName [hub (destination) server]
PS C:\Users\serverworld> Add-DfsrConnection -GroupName "RepGroup01" `
-SourceComputerName "rx-7" `
-DestinationComputerName "rx-8" 

GroupName               : RepGroup01
SourceComputerName      : RX-7
DestinationComputerName : RX-8
DomainName              : srv.world
Identifier              : 7a24425e-1dfe-417d-a0a4-fc61efec0dbe
Enabled                 : True
RdcEnabled              : True
CrossFileRdcEnabled     : True
Description             :
MinimumRDCFileSizeInKB  : 64
State                   : Normal

GroupName               : RepGroup01
SourceComputerName      : RX-8
DestinationComputerName : RX-7
DomainName              : srv.world
Identifier              : 7cf2b658-8db2-45db-811b-21fb898c8f60
Enabled                 : True
RdcEnabled              : True
CrossFileRdcEnabled     : True
Description             :
MinimumRDCFileSizeInKB  : 64
State                   : Normal

# create a target folder for replication
PS C:\Users\serverworld> New-Item E:\Replica01 -ItemType Directory

# set folder name (any name are OK)
PS C:\Users\serverworld> New-DfsReplicatedFolder -GroupName "RepGroup01" -FolderName "Replica01" 

GroupName              : RepGroup01
FolderName             : Replica01
DomainName             : srv.world
Identifier             : ad6a7471-ba47-43e8-a777-d0d9571b11a8
Description            :
FileNameToExclude      : {~*, *.bak, *.tmp}
DirectoryNameToExclude : {}
DfsnPath               :
IsDfsnPathPublished    : False
State                  : Normal

# set physical path of the replication folder on the branch server
PS C:\Users\serverworld> Set-DfsrMembership -GroupName "RepGroup01" `
-FolderName "Replica01" `
-ContentPath "E:\Replica01" `
-ComputerName "rx-7" `
-PrimaryMember $True 

This operation will modify the DFSR membership with domain: srv.world; replication group: "RepGroup01"; replicated folder:
"Replica01"; computer: RX-7; GUID: {34788889-0295-474a-8f9f-3ae9a86cbe39}.
Are you sure you want to modify this membership?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): Y


GroupName                   : RepGroup01
ComputerName                : RX-7
FolderName                  : Replica01
GroupDomainName             : srv.world
ComputerDomainName          : srv.world
Identifier                  : 34788889-0295-474a-8f9f-3ae9a86cbe39
DistinguishedName           : CN=ad6a7471-ba47-43e8-a777-d0d9571b11a8,CN=c362261f-c382-4f48-aec3-2ca70b35ea25,CN=DFSR-LocalSett
                              ings,CN=RX-7,CN=Computers,DC=srv,DC=world
ContentPath                 : E:\Replica01
PrimaryMember               : True
StagingPath                 : E:\Replica01\DfsrPrivate\Staging
StagingPathQuotaInMB        : 4096
MinimumFileStagingSize      : Size256KB
ConflictAndDeletedPath      : E:\Replica01\DfsrPrivate\ConflictAndDeleted
ConflictAndDeletedQuotaInMB : 4096
ReadOnly                    : False
RemoveDeletedFiles          : False
Enabled                     : True
DfsnPath                    :
State                       : Normal

# set physical path of the replication folder on the hub server
PS C:\Users\serverworld> Set-DfsrMembership -GroupName "RepGroup01" `
-FolderName "Replica01" `
-ContentPath "C:\Replica01" `
-ComputerName "rx-8" 

This operation will modify the DFSR membership with domain: srv.world; replication group: "RepGroup01"; replicated folder:
"Replica01"; computer: RX-8; GUID: {0679979a-48cd-4f45-b5d1-e174d7b92a73}.
Are you sure you want to modify this membership?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): Y


GroupName                   : RepGroup01
ComputerName                : RX-8
FolderName                  : Replica01
GroupDomainName             : srv.world
ComputerDomainName          : srv.world
Identifier                  : 0679979a-48cd-4f45-b5d1-e174d7b92a73
DistinguishedName           : CN=ad6a7471-ba47-43e8-a777-d0d9571b11a8,CN=41b9db3e-fae0-4202-8a90-88c8c9b0b800,CN=DFSR-LocalSett
                              ings,CN=RX-8,CN=Computers,DC=srv,DC=world
ContentPath                 : C:\Replica01
PrimaryMember               : False
StagingPath                 : C:\Replica01\DfsrPrivate\Staging
StagingPathQuotaInMB        : 4096
MinimumFileStagingSize      : Size256KB
ConflictAndDeletedPath      : C:\Replica01\DfsrPrivate\ConflictAndDeleted
ConflictAndDeletedQuotaInMB : 4096
ReadOnly                    : False
RemoveDeletedFiles          : False
Enabled                     : True
DfsnPath                    :
State                       : Normal

# confirm current replication state
PS C:\Users\serverworld> Get-DfsrCloneState 
Ready

# verify settings to create test files or folders in the replication folder
PS C:\Users\serverworld> New-Item E:\Replica01\testfolder -ItemType Directory 
PS C:\Users\serverworld> Add-Content -Path E:\Replica01\testfile.txt "Test File" 
PS C:\Users\serverworld> Get-ChildItem E:\Replica01 

    Directory: E:\Replica01


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----          1/9/2025   8:12 PM             11 testfile.txt
-a----          1/9/2025   8:12 PM              0 testfolder

PS C:\Users\serverworld> ssh rx-8 powershell -c "Get-ChildItem C:\Replica01" 
fd3s01\serverworld@rx-8's password:


    Directory: C:\Replica01


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----          1/9/2025   8:12 PM             11 testfile.txt
-a----          1/9/2025   8:12 PM              0 testfolder


PS C:\Users\serverworld> ssh rx-8 powershell -c "Add-Content -Path C:\Replica01\testfolder\testfile2.txt 'Replication Test'" 
fd3s01\serverworld@rx-8's password:

PS C:\Users\serverworld> Get-ChildItem E:\Replica01\testfolder 

    Directory: E:\Replica01\testfolder


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----          1/9/2025   8:23 PM             18 testfile2.txt

PS C:\Users\serverworld> Get-Content E:\Replica01\testfolder\testfile2.txt 
Replication Test
File Server : Configure DFS Replication (GUI)
 

On GUI configuration, set like follows.

[2] Run [Start] - [Server Manager] - [Tools] - [DFS Management].
[3] Right click the [Replication] on the left pane and open the [New Replication Group] on the menu.
[4] For simply 2 server's replication group, check a box [Replication group for data collection].
If you'd like to use more than 3 servers or use advansed configuration options even if 2s servers, choose [Multipurpose replication group].
(proceed with [Replication group for data collection] on this example)
[5] Input any replication group name and description and click [Next] button.
[6] Specify the branch (source) server for replication and click [Next] button.
[7] Specify the replicated folders on the branch server, click [Add] button.
[8] Select the path of replicated folders and click [OK].
[9] Specify the hub (destination) server for replication and click [Next] button.
[10] Specify the target folders on the hub server for replication.
[11] Specify the replication schedule and bandwidth. By default settings, repliation task is always enabled, data are replicated at once if changes are detected in the target folders and also full bandwidth is used. If you'd like to set specified schedules or limit bandwidth configure them with the lower option.
[12] Confirm selections and click [Create] button if that's OK.
[13] That's OK if all tasks are [Success], click [Close] button to finish.
[14] Created replication groups are displayed on the DFS management.
[15] Verify settings to put files or folders on the tgarget replication folders.
Matched Content