Win10 NetBIOS Names Get Weirder
Last Friday, I observed in a post here that machine names appeared case sensitive in RDP. Indeed they are — kind of — and in other places, too. This includes the ancient and venerable PING command, a go-to utility to check connectivity between IP hosts. In trying to get all of my PCs to show up on the LAN, I turned to PING to see who was reporting in and who wasn’t. Along the way I observed some fascinating and surprising case sensitivity in PING itself. Here’s an illustrative screen capture from PowerShell:
An abridged version of PING attempts using the same base string, with differing upper- and lower-case chars.
Why I Insist That NetBIOS Names Get Weirder and Weirder
The following table sums up the results from the preceding sequence of PING attempts (plus another item I chose not to include). It basically shows that NetBIOS name resolution has its apparent quirks.
Variations on a NetBIOS name: DellVP11 | ||
Name string | Ping result | Capitalization map |
dellvp11 | succeeds | llllllnn |
Dellvp11 | succeeds | Clllllnn |
DEllvp11 | succeeds | CCllllnn |
DELlvp11 | succeeds | CCClllnn |
DELLvp11 | succeeds | CCCCllnn |
DELLVp11 | succeeds | CCCCClnn |
DELLVP11 | succeeds | CCCCCCnn |
DellVP11 | FAILS | ClllCCnn |
DellVp11 | succeeds | ClllClnn (not shown) |
To me, there’s one captivating thing about the outputs. The only string that DOESN’T work is also the same string that PING uses itself — namely, DellVP11. That’s ClllCCnn, in the notation of the table. This denotes: initial cap, followed by three lower-case letters, two more cap letters, and two digits, in case you wondered.
A Surprising Finding for NetBIOS Names
It turns out there’s good reason for PING to use that specific NetBIOS name for the Venue Pro. The Microsoft Developer Network Documentation says this about NetBIOS names (emphasis mine):
Neither [RFC1001] nor [RFC1002] discusses whether names are case-sensitive. This document clarifies this ambiguity by specifying that because the name space is defined as sixteen 8-bit binary bytes, a comparison MUST be done for equality against the entire 16 bytes. As a result, NetBIOS names are inherently case-sensitive.
There’s only one way I can find to get the “real NetBIOS name” for a Windows 10 computer. It requires checking the Computer Name field in the Control Panel’s System element. On my Venue Pro, that field reads “DellVP11” (ClllCCnn). Go figure! It’s the only name that DOESN’T resolve in PING. This makes no sense to me whatsoever, but it’s indisputably true — on this particular PC at least.
On some of my other PCs, PING accepts all variants of the machine name. The case of individual letters doesn’t matter. On others, it does. As I’ve already reported for my T520 Lenovo laptop, “T520” doesn’t work but “t520” does– and the latter is the apparent actual NetBIOS name string. For my X220 Tablet, “X220T” doesn’t work, but all three other possible variants do (“x220T” “X220t” and “x220t”, of which “x220t” is the actual NetBIOS name string).
Again: weird! I sure hope MS comes up with some kind of fix for this. Because most IP utilities report the machine name in upper case only, seems like that should be the canonical form for such names. We’ll just have to wait and see how it all plays out…