[TIP] Small network (Win10) Peer Name Resolution tip

Metanis

Well-Known Member
Reaction score
810
Location
Medford, WI, USA
First off... your mileage may vary!

Yet another potential method to "fix" peer-to-peer name resolution issues on small networks is to make sure Bonjour is installed on every PC and then set your DNS suffix to "local" in the IPv4 configuration.

Any device with an Apple software product such as iTunes or iCloud will already have Bonjour installed and active. Otherwise you can download the SDK for devices for which you prefer not to install the retail software. The SDK is like 8MB so it's easy to carry around on your USB stick.

Bonjour is a Multicast DNS resolver for local networks. It gives Windows 10 yet another method to find other devices on the network. When the IP stack encounters a "local" domain ID it is supposed to turn over resolution to the multicast service (Bonjour).

Obviously the "real" solution is to have a local DNS server, but we know many mom & pop shops just rely on the ISP-provided modem/router. In those kinds of situations this "tip" may help.
 
I always...always....pull bonjour when I see it. None of my clients have software/services needed (business networks) that rely on Bonjour, and Bonjour causes incredibly heavy multicast traffic on the network

Enable netbios over TCP/IP is a setting I use to help native Windows resolution, and manually electing 1x computer as the master browser (a registry setting)...that will communicate to the others.
 
I still haven't quite figured out Bonjour. I was always removing it thinking it was a leftover from iTunes or whatever, until I read one day it is used by some/all scanners to initiate a scan back to a PC.
 
Several caveats here.

1. Since about Win10-1903 an mDNS service has been an integral part of Windows 10. Bonjour is just a more ubiquitous version. It's an old and stable program, Apple hasn't updated it for 10 years now!

2. mDNS can be more efficient than NetBIOS resolution because it is multicast, every listening device updates their name cache rather than just the device that requested the name resolution. Yes, it's a chatty protocol but could be less chatty than traditional NetBIOS. Although you're always going to have both methods running in an unmanaged network.

3. None of this matters unless you configure the PC to use a .local domain! And even then many older Windows programs and services won't use it because they're coded to use traditional broadcast or port 53 lookups.

4. As I mentioned in my original post this is just one more tool in the toolbox for small networks. But have you ever thought about why you rarely hear about Apple users having name resolution problems? Yet problems with Windows 10 keep reoccurring after every feature upgrade that resets protocols and services back to defaults?

dotlocal.PNG
 
But have you ever thought about why you rarely hear about Apple users having name resolution problems?
Well, considering that 95% of Mac users have no network to really speak of and don't normally use LAN "sharing" as everything is an online service.. I would suspect that would have a lot to do with it. Not to mention that the overwhelming market share for Windows machines will present a lop-sided view of issues. If Mac were 93%+ of the market then I would expect to see more issues with Mac.

Anecdotally, I have many more issues with trying to get Mac machines to talk with Windows machines/networks.
Yet problems with Windows 10 keep reoccurring after every feature upgrade that resets protocols and services back to defaults?
Do they? Not on mine. Not on my customer's machines.. Not sure where you're getting this one from?
 
Enable netbios over TCP/IP is a setting I use to help native Windows resolution, and manually electing 1x computer as the master browser (a registry setting)...that will communicate to the others.
For reference: HKLM\SYSTEM\CurrentControlSet\Services\Browser\Parameters\IsDomainMaster ->"True"
 
A copy of something I posted over at AskWoody in response to a Home Networking issue. This is info I've distilled from numerous sources including threads here at Technibble, so you may recognize things like the drive mapping commands! The audience was intended for non-Technicians.

=====================================================

Windows 10 – Peer Networking Issues – Mike Tanis – Feb.2022

Quick Reference


  • Document network.
  • Reboot Router/Gateway.
  • Network Reset & Reboot.
  • Memorable local Computer name (Hostname) and Workgroup name.
  • Private Network (not Public).
  • Network Not Metered.
  • Network Provider Order (Microsoft Networking on top).
  • Network Adapter Options.
  • IPv4 settings.
  • IPv6 settings.
  • Advanced sharing settings.
  • Windows Services.
  • Windows Explorer – Folder Options – Sharing Wizard & View File Extensions.
  • Control Panel – Windows Credential Manager.
  • Firewall settings.
  • Can’t locally share using a Microsoft Internet Account.
Reference Discussion
This discussion is predicated on a Windows 10 network with NO custom Firewall or Security Suite installed. If you have custom software disable it temporarily until you’ve established reliable communications. Every local machine should be touched to ensure uniformity of settings.

We are also not installing SMB1 due to its security issues.

I am assuming a Residential router set to mostly default or routine settings. Keep in mind we can compare settings with working systems to determine a baseline for default values.

You will need to reboot the local PC several times during this process.

Finally, you will not always see every machine in Network Neighborhood even though you can map a drive or open Explorer to that machine. Not sure why this is, but the lack of consistency here is actually very consistent with Windows 10!

  1. Document network on paper.
  • Hostnames
  • Workgroup name
  • IP addresses (Gateway, DNS, Subnet mask)
  • Usernames & Passwords
  • Login scripts
  • Mapped drives.
  • Ipconfig /all
  • Arp -a
  • Nbtstat -c
  • Delete old mappings and scripts if not valid.
    • Net Use * /delete /yes
    • If exist t:\nul ( net use t: /delete )
    • Net use t: \\server\share /persistent:no /user:dummy password
  1. Reboot Router/Gateway. (Should be early in the process)
  2. Do a Network Reset & Reboot. (This is a must!)
  3. Create a Dummy local user per machine, make them all the same. Login at least once on every shared machine to ensure Windows correctly instantiates the user account. Will not need to create as an Administrator level if you explicitly give Share and NTFS permissions to the dummy user. This allows you to access any share with \\sharedmachine\dummy and known password.
  4. Static IP outside of DHCP range. Best long-term reliability if possible.
  • Or Address Reservation in Router/Gateway
  • Use addresses least likely to be DHCP assigned if you don’t have router access.
  1. Create a memorable local Computer name (Hostname) and Workgroup name.
  2. Edit the Hosts and LMHosts files (using #PRE, must be in CAPS, and files have no extensions!). Will need to use Explorer View Options and NOT Hide Extensions! Located in \Windows\System32\Drivers\etc. Use information gathered in documentation phase to enter all sharing machines. In theory this step can be skipped but the old ways seem to work very well!
  3. Private Network (to ensure Firewall uses most permissive settings).
  4. Not Metered. (May not matter but metering adds an unknown).
  5. Network Provider Order (Microsoft Windows Network on top). This is the old LANABASE 0 issue with NetBIOS communications over multiple adapters.
  6. Network Adapter Options (to include Microsoft Client, Microsoft File & Print Sharing, IPv4, IPv6, LLDP, Link-Layer items).
  7. IPv4 settings (Use Static addressing if possible, set DNS suffix to “local” for mDNS to function correctly, not necessary to register in DNS, but DO enable LMHOSTS & NetBIOS). Proper IP address settings are beyond the scope of this discussion, use information gathered during the documentation phase. Perhaps incorporate DNSBench results if ISP DNS resolvers aren’t good.
  8. IPv6 settings (automatic if possible)
  9. Advanced sharing settings –
  • Private (turn on discovery and sharing)
  • All Networks (turn on Public sharing, 128bit, password protected)
  1. Check Services.msc (to Enable DNS Client, Function Discovery, Link-layer Topography, Network Connections, Network List, Network Location, Peer Name, Peer Networking, Server, uPnP, Windows Time, Workstation). Use Automatic-Delayed Start if necessary.
  2. Windows Explorer – Folder Options (Use Sharing Wizard enabled and Show File Extensions)
  3. Create Drive Mappings and/or Desktop shortcuts to desired shares using Dummy account. Need to do this at least once to ensure Windows Credential Manager saves the username/pw combo.
  4. Control Panel – Windows Credential Manager (may have to delete old mapping credentials)
  5. Windows Firewall – Allow an App through the Firewall – Ensure File & Print Sharing is enabled for Private networks. (Mostly safe to just allow everything in the list for Private Networks).
  6. Local file sharing will not work with a Microsoft Internet login. The SMB protocol will not resolve the credentials in that case. Use the Dummy local account instead!
Some sample configurations.
My personal network uses a TDS.Net T3200 Router/Gateway that uses DHCP and DNS forwarding. I have administrative access and have reprogrammed the defaults to change the DHCP range assigned for the router LAN to 192.168.0.101 through 192.168.0.199.

The router/gateway address is 192.168.0.1.

The machine I’m typing on is statically assigned as 192.168.0.250 with a mask of 255.255.255.0 and a Default Gateway of 192.168.0.1 and DNS servers of 192.168.0.1 and 1.1.1.1. My DNS suffix is set to “local” without the quotes and both Enable LMHOSTS and Enable NetBIOS over TCP/IP are checked. The local suffix triggers Peer Name Resolution via mDNS (multicast DNS) broadcast.

My machine name is KIOSK1 and my workgroup is WORKGROUP. All machines share that Workgroup name.

My HOSTS file looks like:

192.168.0.254 MACHINE1
192.168.0.253 MACHINE2
192.168.0.252 MACHINE3
192.168.0.251 LAPTOP1
192.168.0.250 KIOSK1
192.168.0.249 TV8


My LMHOSTS file looks like:

192.168.0.254 MACHINE1 #PRE
192.168.0.253 MACHINE2 #PRE
192.168.0.252 MACHINE3 #PRE
192.168.0.251 LAPTOP1 #PRE
192.168.0.250 KIOSK1 #PRE
192.168.0.249 TV8 #PRE

And both files are plain Text but lacking any file extension. (You may have to save the files with the .TXT extension and then come back and use Windows Explorer to rename and chop off the extension.)
 
Back
Top