65

How can I tell which Domain controller I'm authenticated to? Is there a way to do this without local admin?

6 Answers 6

96

You can find this through the following command:

echo %LOGONSERVER%

And you don't have to be admin or poweruser to use it. Have a look at the output of this command:

set
4
  • 2
    FYI: Powershell didn't seem to have that variable set. I had to run it from basic command shell. Jul 1, 2015 at 21:42
  • 1
    This doesn't work when you're logged on as a local user and you're interested in how the computer is authenticated to the domain. For that, see the other answer referencing nltest.
    – wfaulk
    Apr 1, 2016 at 19:47
  • A note, here you get your logged in users controller. Not the domain controller of the computer. Jun 9, 2016 at 9:22
  • 1
    @ChristianBongiorno It works with powershell: it is a simple call on an environment variable. With cmd, these calls are made by %variable%, in Powershell you need another syntax: $env:variable. So in this case, type in Powershell: $env:Logonserver, and you get the same result.
    – Tobias
    Jul 5, 2016 at 7:36
50

To determine computer / server DC use NLTEST:

nltest /dsgetdc:<domain_name> 

To list all DC's with their appropriate site, try:

nltest /dclist:<domain_name>

You don't have to use the FQDN of the domain name or server -- for example, instead of saying /dclist:services.microsoft.com, you can simply type /dclist:services (as long as you are an authenticated member of that domain, of course).

For user authentication and group policy use LOGONSERVER variable:

echo %logonserver%
1
  • nltest was much more reliable for me because LOGONSERVER did not work when coming by RDP
    – ZoolWay
    Nov 26, 2015 at 9:39
3

set l will respond with the variables for both localappdata and for logonserver. However, logonserver is the only variable you are interested in, and the one which will tell you the name of the domain controller you authenticated against.

To only get the logonserver information, type set log (which is simply an abbreviation of set logonserver). The name of the domain controller you authenticated against will be returned.

2

This only answers your question if you have Outlook:

I found an interesting feature in Outlook. If you hold Ctrl and right click the icon in the task bar then click connection status it shows you the exchange server your connected to as well as what domain controller you are connected to. I actually found that one answering another question about Exchange connections, great way to recycle answers...

3
  • Where I got this info: superuser.com/questions/304461/… Sep 9, 2011 at 14:24
  • This is NOT entirely correct. In the rare situation where you have 2 DC's on site for DIFFERENT domains which both belong to the same forest and which both carry the Directory services, it is possible that you authenticate to your own domains DC while Outlook uses the other DC for the directory services. I have seen this happen. Caused a lot of grief, because adding delegates in Outlook doesn't work properly if your logon DC and the directory server used by Outlook are not in the same domain.
    – Tonny
    Aug 26, 2013 at 10:16
  • 1
    I agree that this is less than reliable for the OP's question, but it is still useful info. Thanks!
    – jpaugh
    Apr 6, 2016 at 15:38
1

set L lists all environment variables that begin with the letter L

2
  • 1
    Mind explaining what this does?
    – soandos
    Jul 15, 2012 at 18:18
  • Seems like it lists all variables starting with the letter L. Try set a for example. Nov 22, 2012 at 18:30
1

Powershell provides (with no parameters):

Get-ADDomainController

Or specifically:

(Get-ADDomainController).HostName
2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .