Distributed File System (DFS)

Distributed File System, or DFS, is a Microsoft implementation of a network file system that allows data to exist in multiple places over a network while mitigating the need for clients asking for such data to know exactly which server and path the data exists upon.  For detailed information about how DFS works, please reference this Microsoft document.

DFS services are comprised of two components, DFS Namespaces (commonly abbreviated DFSn) and DFS Replication (commonly abbreviated DFSr).  These can be used together or independently.  These technologies supersede older File Replication Services (FRS).

WolfTech maintains DFS namespaces for the domain, stored on a number of centrally-managed servers, and various departments can create their own DFS links.  DFS allows a client machine to access a filesystem share without knowledge of the actual file server name.  A virtual sharename/UNC path that never has to change even though the server(s) hosting the share may change.  Note: Mapping a drive to certain DFS namespace locations – in particular, DFS virtual directories and “root” DFS paths – may cause Windows Explorer and other tools to show disk space utilization information from the DFS servers and not the server locations that the DFS link is pointing towards.  This could conceivably cause support calls from clients because the DFS servers do not typically have much free space on their filesystem, and Windows Explorer in particular will highlight that the mapped drive is low on disk space.

To manage DFS links, use either dfsutil.exe, the DFS MMC, or PowerShell (Cmdlets for Namespaces; Cmdlets for Replication).

 

.DFSFolderLink

Once in a while while creating a link (either via the GUI or via script) something goes wrong and you are left with a “.DFSFolderLink” DFS link hanging out that goes nowhere and doesn’t even show up in the DFS MMC.

C:\>dfsutil.exe link \\wolftech.ad.ncsu.edu\engr\coedean\admin\cbe\.DFSFolderLink
Link Name="coedean\Admin\cbe\.DFSFolderLink" Comment="Temporary link used by the DFS UI. Please do not delete." State="OK" Timeout="300"
        Target="\\null\engr\coedean\Admin\cbe\.DFSFolderLink" State="OFFLINE"  [Site: (null)]
Done processing this command.
C:\>dfsutil.exe link remove \\wolftech.ad.ncsu.edu\engr\coedean\admin\cbe\.DFSFolderLink
Done processing this command.

DFS and Access-based Enumeration

Please view the following pages to set up access-based enumeration on your file servers.  Servers configured for access-based enumeration will compare the permissions of a user against the permission entries for each file or directory on the server, and only list those files and directories that the user has permissions to access.

File Filters

DFS by default will not replicate certain files, and you can administratively modify this filtering rule to allow these or disallow additional files.  The default file filter will exclude file names that start with the tilde (~) character, and files with a .tmp or .bak extension.  Click here for additional information about DFSr file filters.

DFS Referrals, NetBIOS, and FQDN

By default, DFS servers will use NetBIOS when handing out referrals to clients.  The domain servers hosting the DFS namespace have been configured to instead only hand out fully-qualified domain names.  As a result, anyone using DFS should be using the fully-qualified domain name of the server target instead of a NetBIOS name.  This protects against certain types of name resolution failures that can occur when computers in a domain have different DNS suffixes than that of the domain’s suffix.