Hi Folks,
O.M.G.! I have spent all afternoon trying to diagnose a DNS problem that presents like corruption but I can't find any trace, beyond the failure that I think is the result. This is a Windows Server problem...
I have a domain name for my NAS -- "\NAS0.TCLC.org = 10.1.1.80", and all evaluations show me that translation. I can ping it; I can nslookup; I can run the DNS management application. My linux machines can "mount //NAS0.TCLC.ORG/d0 /net/nas0/d0 ..." All work exactly as you'd expect. Then I try to view the share with the Windows File Explorer -- "Windows can't find the DNS name"!! In that case I can use the IP address directly or the alternate domain name, so it is the domain name on the windows machines that is the problem, not the disk access protocol. I also created a second domain name "\NASX.TCLC.org = 10.1.1.80" and that one work just fine everywhere!
Here I tried the command prompt:
C:\Windows\system32>net use n: \10.1.1.80\d0 The command completed successfully.
C:\Windows\system32>net use n: /delete n: was deleted successfully.
C:\Windows\system32>net use n: \NASX.TCLC.org\d0 The command completed successfully.
C:\Windows\system32>net use n: /delete n: was deleted successfully.
C:\Windows\system32>net use n: \NAS0.TCLC.org\d0 System error 64 has occurred.
The specified network name is no longer available.
Of course I have flushed all caches I can find, scavenged resources records, rebooted every element -- Windows DNS server, Windows Server 2012r2, NAS, Client, ... the toaster and the microwave!
So, I have a domain name that shows zero problems in any investigation, until I try to use it for its intended purpose on the windows machines , and I have another one that is nearly identical that has no problems!
Any thoughts?
Thanks for the help,
On Mon, Jan 16, 2023 at 09:30:37PM -0800, Chris Miller wrote:
Hi Folks, O.M.G.! I have spent all afternoon trying to diagnose a DNS problem that presents like corruption but I can't find any trace, beyond the failure that I think is the result. This is a Windows Server problem... I have a domain name for my NAS -- "\NAS0.TCLC.org = 10.1.1.80", and all evaluations show me that translation. I can ping it; I can nslookup; I can run the DNS management application. My linux machines can "mount //NAS0.TCLC.ORG/d0 /net/nas0/d0 ..." All work exactly as you'd expect. Then I try to view the share with the Windows File Explorer -- "Windows can't find the DNS name"!! In that case I can use the IP address directly or the alternate domain name, so it is the domain name on the windows machines that is the problem, not the disk access protocol. I also created a second domain name "\NASX.TCLC.org = 10.1.1.80" and that one work just fine everywhere! Here I tried the command prompt: C:\Windows\system32>net use n: \10.1.1.80\d0 The command completed successfully. C:\Windows\system32>net use n: /delete n: was deleted successfully. C:\Windows\system32>net use n: \NASX.TCLC.org\d0 The command completed successfully. C:\Windows\system32>net use n: /delete n: was deleted successfully. C:\Windows\system32>net use n: \NAS0.TCLC.org\d0 System error 64 has occurred. The specified network name is no longer available. Of course I have flushed all caches I can find, scavenged resources records, rebooted every element -- Windows DNS server, Windows Server 2012r2, NAS, Client, ... the toaster and the microwave! So, I have a domain name that shows zero problems in any investigation, until I try to use it for its intended purpose on the windows machines, and I have another one that is nearly identical that has no problems! Any thoughts?
Maybe you need to map your dns to netbios? I just donated some samba books to Goodwill at Alhambra and S. I don't know they process them, but you feel free to go check and see. The thing is that they are a bit old.
On Mon, Jan 16, 2023 at 10:03:04PM -0800, Brian E. Lavender wrote:
On Mon, Jan 16, 2023 at 09:30:37PM -0800, Chris Miller wrote:
Hi Folks, O.M.G.! I have spent all afternoon trying to diagnose a DNS problem that presents like corruption but I can't find any trace, beyond the failure that I think is the result. This is a Windows Server problem... I have a domain name for my NAS -- "\NAS0.TCLC.org = 10.1.1.80", and all evaluations show me that translation. I can ping it; I can nslookup; I can run the DNS management application. My linux machines can "mount //NAS0.TCLC.ORG/d0 /net/nas0/d0 ..." All work exactly as you'd expect. Then I try to view the share with the Windows File Explorer -- "Windows can't find the DNS name"!! In that case I can use the IP address directly or the alternate domain name, so it is the domain name on the windows machines that is the problem, not the disk access protocol. I also created a second domain name "\NASX.TCLC.org = 10.1.1.80" and that one work just fine everywhere! Here I tried the command prompt: C:\Windows\system32>net use n: \10.1.1.80\d0 The command completed successfully. C:\Windows\system32>net use n: /delete n: was deleted successfully. C:\Windows\system32>net use n: \NASX.TCLC.org\d0 The command completed successfully. C:\Windows\system32>net use n: /delete n: was deleted successfully. C:\Windows\system32>net use n: \NAS0.TCLC.org\d0 System error 64 has occurred. The specified network name is no longer available. Of course I have flushed all caches I can find, scavenged resources records, rebooted every element -- Windows DNS server, Windows Server 2012r2, NAS, Client, ... the toaster and the microwave! So, I have a domain name that shows zero problems in any investigation, until I try to use it for its intended purpose on the windows machines, and I have another one that is nearly identical that has no problems! Any thoughts?
Maybe you need to map your dns to netbios? I just donated some samba books to Goodwill at Alhambra and S. I don't know they process them, but you feel free to go check and see. The thing is that they are a bit old.
I just did an update on a system and it says.
Modify smb.conf to use WINS settings from DHCP?
Hi Brian,
I just did an update on a system and it says. Modify smb.conf to use WINS settings from DHCP?
The behavior does not implicate configuration, or if it does, it implicates configuration for exactly one domain name, and I have no idea how THAT happens:
1. I can do everything I should be able to do if I use the IP address, 10.1.1.80, and not the domain name. 2. I can do everything I should be able to do if I use a different domain name, NASX.TCLC.org, with exactly the same IP address, 10.1.1.80. 3. I can do everything I should be able to do with the domain name, NAS0.TCLC.org, except reference that NAS with Windows.
I think this behavior indicates something Windows-specific, since whatever is preventing my use of "NAS0.TCLC.org" only prevents in on Windows machines. I am not prevented from any investigation of the domain name, meaning Windows knows about it and has a correct evaluation and willingly tells me whatever I want to know. I am prevented from using it: "net use n: \NAS0.TCLC.org\d0"
An illustration from PowerShell:
PS H:> dir \NAS0.TCLC.org\d0 dir : Cannot find path '\NAS0.TCLC.org\d0' because it does not exist.
PS H:> dir \10.1.1.80\d0 Directory: \10.1.1.80\d0 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2023-01-16 23:30 Justice.TCLC.org
PS H:> dir \NASX.TCLC.org\d0 Directory: \NASX.TCLC.org\d0 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2023-01-16 23:30 Justice.TCLC.org
Thanks for the help,
Perhaps one of the following will help diagnose what is going on with the connection.
use Wireshark to see the difference?
What does the log file say for samba?
Otherwise, i am not sure.
Brian
On January 17, 2023 7:45:03 AM PST, Chris Miller cjm@tryx.org wrote:
Hi Brian,
I just did an update on a system and it says. Modify smb.conf to use WINS settings from DHCP?
The behavior does not implicate configuration, or if it does, it implicates configuration for exactly one domain name, and I have no idea how THAT happens:
- I can do everything I should be able to do if I use the IP address, 10.1.1.80, and not the domain name.
- I can do everything I should be able to do if I use a different domain name, NASX.TCLC.org, with exactly the same IP address, 10.1.1.80.
- I can do everything I should be able to do with the domain name, NAS0.TCLC.org, except reference that NAS with Windows.
I think this behavior indicates something Windows-specific, since whatever is preventing my use of "NAS0.TCLC.org" only prevents in on Windows machines. I am not prevented from any investigation of the domain name, meaning Windows knows about it and has a correct evaluation and willingly tells me whatever I want to know. I am prevented from using it: "net use n: \NAS0.TCLC.org\d0"
An illustration from PowerShell:
PS H:> dir \NAS0.TCLC.org\d0 dir : Cannot find path '\NAS0.TCLC.org\d0' because it does not exist.
PS H:> dir \10.1.1.80\d0 Directory: \10.1.1.80\d0 Mode LastWriteTime Length Name
d----- 2023-01-16 23:30 Justice.TCLC.org
PS H:> dir \NASX.TCLC.org\d0 Directory: \NASX.TCLC.org\d0 Mode LastWriteTime Length Name
d----- 2023-01-16 23:30 Justice.TCLC.org
Thanks for the help,
Chris.
V:916.799.9461 F:916.974.0428 A: Because we read from top to bottom, left to right. Q: > Why should I start my reply below the quoted text?
Hi Brian,
Perhaps one of the following will help diagnose what is going on with the connection. use Wireshark to see the difference? What does the log file say for samba
It is clear that when the NAS joins the domain and makes a DNS entry, it is doing something that corrupts that domain name. I cannot find any distinctions in any listing, so I have no idea what is being done. This may actually be a "Feature" of the NAS for which there is a preference setting.
I have managed to enter several domain names for IP 10.1.1.80 which worked, "C:> dir <XXX>.TCLC.org\d0" until I named the NAS <XXX> and joined the domain. From that point on, that specific domain name was now corrupted -- even when I changed the name of the NAS and I deleted and re-entered that domain name. It is not clear if there is a less draconian rehabilitation, but deleting all known instances and caches, and re-booting seems to do the trick.
Now that I have a clear mechanism, I should be able to search for similar experiences and/or open a support ticket with ASUS.
Thanks for the help,
On Tue, Jan 17, 2023 at 05:44:38PM -0800, Chris Miller wrote:
Hi Brian,
Perhaps one of the following will help diagnose what is going on with the connection. use Wireshark to see the difference? What does the log file say for sambaIt is clear that when the NAS joins the domain and makes a DNS entry, it is doing something that corrupts that domain name. I cannot find any distinctions in any listing, so I have no idea what is being done. This may actually be a "Feature" of the NAS for which there is a preference setting. I have managed to enter several domain names for IP 10.1.1.80 which worked, "C:> dir <XXX>.TCLC.org\d0" until I named the NAS <XXX> and joined the domain. From that point on, that specific domain name was now corrupted -- even when I changed the name of the NAS and I deleted and re-entered that domain name. It is not clear if there is a less draconian rehabilitation, but deleting all known instances and caches, and re-booting seems to do the trick. Now that I have a clear mechanism, I should be able to search for similar experiences and/or open a support ticket with ASUS.
So, you didn't snoop the wire? My calculus teacher used to say, "What do we do now? Punt?" Open Wireshark. snoop. investigate.
Hi Brian,
So, you didn't snoop the wire? My calculus teacher used to say, "What do we do now? Punt?" Open Wireshark. snoop. investigate.
No. I'm not going to be able to diagnose anything from binary traffic on the wire. If it is Windows protocol problem, I would have to spend a fair amount of time learning what the correct protocol is before I could even hope to recognize a defect, and if it is a coding problem, I would have to spend a fair amount of time learning the binary encoding before I could even hope to recognize a defect.
And it is probably not anything I would see on the wire anyway, since this problem happens with the command, "dir \nas0.tclc.org\d0" on the domain controller, meaning the problem is happening long before any SaMBa activity. The SaMBa activity is fine since "mount //nas0.tclc.org/d net/nas0/d0 ... " works just fine. I interpret this to mean that the problem is not in the DNS server, or the SaMBa server; the problems seems to be how Windows asks for or interprets the domain name.
And besides, I have a diagnosis confirmed by ASUS, and I have a nearly zero cost work-around, so I don't have to go digging into wire level protocols or encodings.
Thanks for the help,
On Wed, Jan 18, 2023 at 06:27:11PM -0800, Chris Miller wrote:
Hi Brian,
So, you didn't snoop the wire? My calculus teacher used to say, "What do we do now? Punt?" Open Wireshark. snoop. investigate.No. I'm not going to be able to diagnose anything from binary traffic on the wire. If it is Windows protocol problem, I would have to spend a fair amount of time learning what the correct protocol is before I could even hope to recognize a defect, and if it is a coding problem, I would have to spend a fair amount of time learning the binary encoding before I could even hope to recognize a defect.
Wireshark makes it a whole lot easier than you make it out to be. It decodes the traffic. Especially with the fact that it works with an IP address, yet it didn't work with a dns entry leads me to believe that wireshark could provide valuable info. I would say at least look at it.
Hi Brian,
Wireshark makes it a whole lot easier than you make it out to be. It decodes the traffic. Especially with the fact that it works with an IP address, yet it didn't work with a dns entry leads me to believe that wireshark could provide valuable info. I would say at least look at it.
Yes. Wireshark will decode the protocol, but it will not decode the message content, and in this case, there is no problem with network protocol. How do I know? "mount //nas0.tclc.org/d0 /net/nas0/d0 ..." works on all Fedora machines, even when the Windows machines do not.
An investigation of network protocol and message encoding would have been a waste of time even before I solved the problem, but would most definitely be a waste of time now. I solved it in a few hours, and I couldn't have done anything with Wireshark in a few hours. I'd have been digging around in DNS internals, and that would have been pointless because even if I was able to pinpoint some defect, I would not have been able to change anything about that interaction. Wireshark is only going to tell me about problems I can't solve.
The problem is how Windows is handling something about that domain name. Joining the domain enters a domain name for the participating machine in DNS and there is something out of spec in that operation in this case. It is not clear to me if the ASUStor NAS has any way to perform the "Join Domain" operation that could cause this. So, Wireshark might be able tell me something about this, but, frankly, I don't care; that's a discussion between ASUS and Microsoft . If this is where the problem is than the problem is between ASUS and Microsoft, and it will be a monumental waste of time for me to try to debug it. I've already solved the problem!
Knowing what is happening during the "Join Domain" operation, is also pretty pointless, since whatever is going wrong is manifest in the DNS entry, and that has nothing to do with wire protocol or traffic, and I can't do anything about it anyway. A clear understanding of DNS internals would likely provide much more information than looking at network traffic and protocols. And I don't want to do that, either.
Besides, the comand "dir \nas0.tclc.org\d2" fails on the domain controller with some nonsense about the domain name not existing, so there is no network traffic involved .
But, the most important point is that I solved this:
* Create domain name, "<>.tclc.org = 101.1.80", which is the static IP address of the NAS. * On the domain controller, "dir \<>.tclc.org\d2". Notice success. * Name the NAS "<>.TCLC.org" * Join the domain * On the domain controller, "dir \nas<>.tclc.org\d2". Notice failure. Also notice that the command never got to the "wire".
* Repeat as many times as necessary to convince the skeptical. In my case it was four.
And I avoided it by naming the ASUStor, "NASTY.TCLC.org" freeing "nas0.tclc.org" for all purposes as before. So, nothing changed beyond spending one throw-away domain name.
I have already reported this to ASUS and they have confirmed the issue and I have a nearly zero cost strategy to avoid the problem. Why do I need to do anything more?
Thanks for the help,
Hi Brian,
I just did an update on a system and it says. Modify smb.conf to use WINS settings from DHCP?
The behavior does not implicate configuration, or if it does, it implicates configuration for exactly one domain name, and I have no idea how THAT happens. I think this behavior indicates something Windows-specific, since something is preventing my use of "NAS0.TCLC.org" and only prevents it on Windows machines. I am not prevented from any investigation of the domain name, meaning Windows knows about it and has a correct evaluation and willingly tells me whatever I want to know. I am prevented from using it: "net use n: \NAS0.TCLC.org\d0" or "dir \NAS0.TCLC.org\d0"
1. I can do everything I should be able to do if I use the IP address, 10.1.1.80, and not the domain name. 2. I can do everything I should be able to do if I use a different domain name, NASX.TCLC.org, with exactly the same IP address, 10.1.1.80. 3. I can do everything I should be able to do with the domain name, NAS0.TCLC.org, except reference that NAS with Windows.
PS H:> dir \10.1.1.80\d0 Directory: \10.1.1.80\d0 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2023-01-16 23:30 Justice.TCLC.org
PS H:> dir \NASX.TCLC.org\d0 Directory: \NASX.TCLC.org\d0 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2023-01-16 23:30 Justice.TCLC.org PS C:\Windows\system32> nslookup nasx.tclc.org Server: aequitas.tclc.org Address: 10.1.1.11
Name: nasx.tclc.org Address: 10.1.1.80 PS H:> dir \NAS0.TCLC.org\d0 dir : Cannot find path '\NAS0.TCLC.org\d0' because it does not exist. PS C:\Windows\system32> nslookup nas0.tclc.org Server: aequitas.tclc.org Address: 10.1.1.11
Name: nas0.tclc.org Address: 10.1.1.80
Thanks for the help,
Brian wrote:
Maybe you need to map your dns to netbios?
<snip>
Maybe he'd get better results posting to a Microsoft Windows list? Mind that my MS skills are rusty, but DNS troubleshooting maybe should include using a Windows DNS-specific tool:
C:> nslookup > set debug > set timeout=10 > nasx.tclc.org > nas0.tclc.org
Also useful:
c:> dnscmd ‹server› ∕ZoneInfo ‹zone› c:> dnscmd ‹server› ∕ZonePrint ‹zone› c:> ipconfig ∕displaydns c:> ipconfig ∕flushdns c:> net stop dnscache c:> net start dnscache
Hi Chuck,
Maybe he'd get better results posting to a Microsoft Windows list?
Yeah, ... maybe. But this list needs the traffic. (-: And I know that you read this list. And eventually, this problem will have to be solved by me. Advice and hints can come from anywhere. Any question, regardless of the source must be answered carefully, and Linux or Windows, the questions are likely to be similar.
It has been my frequent experience that I solve a problem by carefully crafting a question or a response to a question. There is a certain discipline about writing.
C:> nslookup
set debug set timeout=10 nasx.tclc.org nas0.tclc.org
This produces a fair amount of text, and I need to review it before I can comment.
c:> dnscmd ‹server› ∕ZoneInfo ‹zone› c:> dnscmd ‹server› ∕ZonePrint ‹zone› c:> ipconfig ∕displaydns
Also lots of text that I have not yet reviewed.
c:> ipconfig ∕flushdns c:> net stop dnscache c:> net start dnscache
None of these has any effect on the problem.
If this is configuration, it is the strangest configuration problem I've ever seen -- one domain name, and only in one context -- in use on Windows.
Thanks for the help,
Hi Chuck,
C:> nslookup
set debug set timeout=10 nasx.tclc.org nas0.tclc.org
This produces a fair amount of text, and I need to review it before I can comment.
I did "vimdiff" on these to listings and there is no difference between them that can't be explained by having different names.
c:> dnscmd ‹server› ∕ZoneInfo ‹zone› c:> dnscmd ‹server› ∕ZonePrint ‹zone› c:> ipconfig ∕displaydns
Also lots of text that I have not yet reviewed.
This was information on the aggragate zone, and my symptoms were for a single domain name, so I didn't learn anything here.
Thanks for the help,
On 1/17/23 17:57, Chris Miller wrote:
Hi Chuck,
C:\> nslookup > set debug > set timeout=10 > nasx.tclc.org > nas0.tclc.org This produces a fair amount of text, and I need to review it before I can comment.I did "vimdiff" on these to listings and there is no difference between them that can't be explained by having different names.
c:\> dnscmd ‹server› ∕ZoneInfo ‹zone› c:\> dnscmd ‹server› ∕ZonePrint ‹zone› c:\> ipconfig ∕displaydns Also lots of text that I have not yet reviewed.This was information on the aggragate zone, and my symptoms were for a single domain name, so I didn't learn anything here.
Have you tried disabling WINS name resolution?
On 1/17/23 17:57, Chris Miller wrote:
Hi Chuck,
C:\> nslookup > set debug > set timeout=10 > nasx.tclc.org > nas0.tclc.org This produces a fair amount of text, and I need to review it before I can comment.I did "vimdiff" on these to listings and there is no difference between them that can't be explained by having different names.
c:\> dnscmd ‹server› ∕ZoneInfo ‹zone› c:\> dnscmd ‹server› ∕ZonePrint ‹zone› c:\> ipconfig ∕displaydns Also lots of text that I have not yet reviewed.This was information on the aggragate zone, and my symptoms were for a single domain name, so I didn't learn anything here.
On second thought, try creating a new DWORD registry key under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters* *Name the new key "DisableStrictNameChecking" and set it to one (1).
Hi Chuck,
On second thought, try creating a new DWORD registry key under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters Name the new key "DisableStrictNameChecking" and set it to one (1).
I will do that later today and I'll let you know.
In the mean time, the solution is to name the NAS something other than NAS0.TCLC.org; I picked "NASTY.TCLC.org", and I collaterally entered "NAS0.TCLC.org = 10.1.1.80" in DNS. Everything goes back to "normal". I can make all references with "NAS0.TCLC.org", and the corrupted domain name, "NASTY.TCLC.org", just sits there fat, dumb, and happy, doing nothing to or for anybody.
ASUS reports that the issue is "known", but they don't offer any insight into "Known, how well?", of likely cause or solution. However, from my point of view, my "updated" NAS is now working [nearly] exactly the same as before the "update", so I'm not really concerned about their timing, but I am pleased to have discovered exactly the problem and had my diagnosis confirmed by ASUS. As I said, the likely solution was going to have to come from me, regardless of whatever mailing list I was using. Answering questions and providing explanations will eventually focus the field of inquiry and provide insight. In this case, it was during such a message that I realized that the "Join Domain" step was what damaged the DNS entry.
Thanks for the help,
Hi Chuck,
On second thought, try creating a new DWORD registry key under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters Name the new key "DisableStrictNameChecking" and set it to one (1).
I will do that later today and I'll let you know.
I tried your suggestion and, assuming I made no mistakes, it had no effect on the symptoms. What I find interesting is that from a Windows machine, "dir \nas0.tclc.org\d0" fails with some cryptic explanation about the domain name not existing, but on Fedora, "mount //nas0.tclc.org/d0 /net/nas0/d0 ..." works just fine so only Windows cares about whatever the ASUS NAS "join domain" is doing to that domain name.
I have "worked around" the problem by naming the NAS something other than "NAS0.TCLC.org" before joining the domain. This leaves "NAS0.TCLC.org" free for me to collaterally enter it into DNS and to use it in all cases but leaves me with a domain name, "NASTY.TCLC.org", for the NAS that I never even have to use. ASUS was already aware of the problem before I reported it, but they don't seem terribly excited about it, so I doubt that they are exerting much effort to diagnose and fix it. My solution is pretty non-invasive, and very easy, once you understand that it is joining the domain that causes the problem for just that one domain name, and that you never even have to use that domain name for file access activities.
Thanks for the help,