Windows – How do Windows DFS referrals work for laptops away from the office

dfswindowswindows-server-2008-r2

How do Windows DFS referrals work for laptops away from the office?

[Edit 2014-11-26] I already understand how sites are defined by subnets, etc. But what I want to know is what happens to users that are not fitting within any sites at all? Home users via VPN, for example. The VPN doesn't supply an IP that is within any of the sites either due to how the VPN system works, so that's not going to help define a site. Does it treat all DFS namespace targets as exactly equal since the client is in zero sites at the moment? Is there any way to encourage DFSN to treat the DFSN targets in one site as preferred based on proximity or the user's usual site? (I know how to say "treat X server as preferred when all is equal" but that's not what I'm asking for here.)


The rest of this text is just background for your interest or entertainment.

I was under the impression that the laptop would retain whatever last site it was at or the site of the last DC it connected to. And then that site would determine which site that laptop is presently at for the purposes of referral ranking.

The reason I ask is because we're getting some laptop users getting some strange referrals to an office that they've never actually been to. And those laptops are having a great connection to the servers in the other sites that they should be connecting to. The strange referral target in this case is a server that isn't known for being reliable. If it were basing it on some speed or reliability metric, it's got it completely wrong. The question is just that first line up there, the rest of this text is just background.

The hardware/software involved is: Windows 2008 R2 servers for all things; Windows 7 64-bit and Windows XP 32-bit laptops.

And this is a question about DFS Namespaces, not about DFS Replication.

How DFS Works: DFS Processes and Interactions states the following:

When least expensive target selection is enabled, DFS places targets
in the referral in the following order:

Targets in the same site as the client are listed in random order at
the top of the referral.

Targets outside of the client’s site are listed in order of lowest
cost to highest cost. Referrals with the same cost are grouped
together and within each group the targets are listed in random order.

If the laptop is at a client office, hotel, home, etc, is it still considered to be within a site? If so, I assume that site would be used in the first group of targets above. If it isn't within a site, I'd assume it skips that first group altogether and just randomly assigns the targets. But the behavior we're seeing is that it is more like the latter than the former.

Edit: (5/21/2012 3am PT)
It seems that the folders with "Override referral ordering" set to "First among targets of equal cost" get goofy. The goofy part is that the target with that enable seems to be the last in order, not first. I'm unsetting these to see what happens. Will report later.

Best Answer

By default, targets in a client's site are preferred to any other referrals. Therefore, you can chose an ordering method for targets ousite of the client's site.

From the Microsoft website: http://technet.microsoft.com/en-us/library/cc782417%28v=ws.10%29.aspx

The domain controller determines the clients site and returns a list of root targets. By default, the root targets in the clients site are at the top of the list, followed by the remaining root targets in random order. If least-expensive target selection is enabled, the remaining root targets are ordered by lowest cost. If same-site target selection is enabled, only root servers in the clients site are listed in the referral.

Also, from the DFS help you have the procedure to change the priority of referrals:

A referral is an ordered list of targets that a client computer receives from a domain controller or namespace server when the user accesses a namespace root or folder with targets in the namespace. Each target in a referral is ordered according to the ordering method for the namespace root or folder. To refine how targets are ordered, you can set priority on individual targets. For example, you can specify that the target is first among all targets, last among all targets, or first (or last) among all targets of equal cost.

To set target priority on a root target for a domain-based namespace

  1. Click Start, point to Administrative Tools, and then click DFS Management.

  2. In the console tree, under the Namespaces node, click the domain-based namespace for the root targets that you want to set priority on.

  3. In the details pane, on the Namespace Servers tab, right-click the root target with the priority that you want to change, and then click Properties.

  4. On the Advanced tab, click Override referral ordering, and then click the priority that you want.

    • First among all targets Specifies that users should always be referred to this target if the target is available.
    • Last among all targets Specifies that users should never be referred to this target unless all other targets are unavailable.
    • First among targets of equal cost Specifies that users should be referred to this target before other targets of equal cost (which usually means other targets in the same site).
    • Last among targets of equal cost Specifies that users should never be referred to this target if there are other targets of equal cost available (which usually means other targets in the same site).

To set target priority on a folder target

  1. Click Start, point to Administrative Tools, and then click DFS Management.

  2. In the console tree, under the Namespaces node, click the folder of the targets that you want to set priority on.

  3. In the details pane, on the Folder Targets tab, right-click the folder target with the priority that you want to change, and then click Properties.

  4. On the Advanced tab, click Override referral ordering, and then click the priority that you want.