[Samba] "Windows couldn't connect to the printer" 0x00000709 when using server short name

Alex Korobkin korobkin+smb at gmail.com
Thu Aug 18 22:24:03 UTC 2016


Hi all,

Samba 4.3.11 is serving printers in my office from a server called
"printserver".

If a Windows 7 client tries to reach it using a short name \\prinserver ,
it can see the list of printers, but can't connect to any of them: "Windows
couldn't connect to the printer" pop-up appears immediately. Weirdly, it
doesn't happen all the times, sometimes it can connect.

Also, if I use FQDN name \\printserver.office.acme.com to connect, then
everything works nicely.

In the Wireshark logs I see this error:

Ioctl Request FSCTL_DFS_GET_REFERRALS, File: \printserver\printer-color
Ioctl Response, Error: STATUS_NOT_FOUND

In the log.smbd I see these corresponding lines:
[<timestamp>,  3] ../source3/smbd/msdfs.c:993(get_referred_path)
  get_referred_path: |printer-color| in dfs path \printserver\printer-color
is not a dfs root.

When the operation is successful, I don't see any DFS requests at all.
Microsoft has a KB article about this, [1]. It says "This issue may occur
if certain non-Microsoft DNS solutions are providing name resolution for
the network."

Their resolution is to set DnsOnWire value in the registry on the
printserver, which they expect to be Windows-based. I don't know how that
key would change its behaviour to fix the problem.

What exactly is happening in my situation? Why would Windows ask for this
DFS thing when connecting to a printer, and immediately give up on Samba's
answer?

1. https://support.microsoft.com/en-ca/kb/2546625

-- 
-Alex


More information about the samba mailing list