ผมได้รับอีเมลจากผู้อ่านหลายรายขอความช่วยเหลือในการแก้ปัญหาการแสดงคอมพิวเตอร์ในสภาพแวดล้อมเครือข่ายบน Windows 10 บิลด์ล่าสุด แน่นอนว่ามีปัญหาการค้นพบอุปกรณ์เครือข่ายใน Windows 10 รุ่นล่าสุด: คุณไม่เห็นคอมพิวเตอร์อื่นๆ บนเครือข่าย หรือ Windows 10 ของคุณไม่แสดงใน Workgroup มาดูวิธีแก้ไข Network Discovery บน Windows 10 บิลด์ล่าสุด (ถึง 1909)
Windows 10 ไม่เห็นคอมพิวเตอร์เครือข่ายอื่นๆ ใน Workgroup
ปัญหาการไม่แสดงคอมพิวเตอร์เครือข่ายในสภาพแวดล้อม Windows 10 Workgroup เริ่มปรากฏตั้งแต่ Windows 10 1703 (Creators Update) หลังจากอัปเกรดเป็น Windows 10 บิลด์นี้ (หรือใหม่กว่า) คอมพิวเตอร์ของคุณอาจหยุดเห็นคอมพิวเตอร์ใกล้เคียงเมื่อดูอุปกรณ์ในรายการ Network ของ File Explorer
คุณสามารถดูรายการคอมพิวเตอร์ในสภาพแวดล้อมเครือข่ายใน File Explorer หรือด้วยคำสั่ง:
net view

และเมื่อคุณคลิกที่ไอคอน Network ใน Windows 10 File Explorer ข้อผิดพลาดนี้จะแสดง:
Network discovery is turned off. Network computers and devices are not visible. Please turn on network discovery in Network and Sharing Center.

Advanced sharing settings ตรวจสอบให้แน่ใจว่าในส่วนโปรไฟล์เครือข่าย Private ตัวเลือกต่อไปนี้ถูกติ๊ก:
- Turn on network discovery + Turn on automatic setup of network connected devices;
- Turn on file and printer sharing;
- Allow Windows to manage homegroup connections (recommended).

จากนั้นเปิดใช้งานตัวเลือกต่อไปนี้ในส่วน All networks:
- Turn on sharing ให้ทุกคนที่มีการเข้าถึงเครือข่ายอ่านและเขียนไฟล์ในโฟลเดอร์ Public;
- Turn off password Protected Sharing (หากคุณเชื่อถืออุปกรณ์ทั้งหมดในเครือข่ายของคุณ); ดังนั้นคุณสามารถเปิดการเข้าถึงเครือข่ายแบบไม่ระบุตัวตนไปยังคอมพิวเตอร์ของคุณได้ ดังนั้นเมื่อคุณเปิดใช้งานตัวเลือกนี้ คุณต้องตั้งค่าสิทธิ์บนโฟลเดอร์เครือข่ายที่แชร์และเครื่องพิมพ์อย่างถูกต้อง
- หากมีอุปกรณ์เครือข่ายเก่าในเครือข่ายของคุณ (Windows รุ่นเก่า, Samba shares, NAS devices) ให้เปิดใช้งานตัวเลือก "Enable file sharing for devices that use 40-bit or 56-bit encryption"

จากนั้นไปที่ Settings -> Network and Internet -> Ethernet (หรือเลือก Wi-Fi หากคุณเชื่อมต่อกับเครือข่ายท้องถิ่นผ่านการเชื่อมต่อไร้สาย) คลิกไอคอนเครือข่ายและตรวจสอบว่าตัวเลือก Make this PC discoverable เปิดใช้งานอยู่

ล้าง DNS cache บนคอมพิวเตอร์:
ipconfig /flushdns
เพื่อเปิดใช้งานการจราจร Network Discovery บน Windows 10 Defender Firewall คุณต้องรันคำสั่งต่อไปนี้ใน command prompt ที่มีสิทธิ์ผู้ดูแล:
netsh advfirewall firewall set rule group="Network Discovery" new enable=Yes
หรือคุณสามารถเปิดใช้งานการจราจร network discovery ใน Windows Firewall ด้วย PowerShell:
Get-NetFirewallRule -DisplayGroup "Network Discovery" -Enabled True -Action Allow -Direction Inbound
นอกจากนี้ คุณสามารถเปิดใช้งานโปรโตคอล Network Discovery สำหรับโปรไฟล์ Private อย่างน้อยในการตั้งค่า Windows Defender Firewall (Control Panel\All Control Panel Items\Windows Defender Firewall\Allowed apps) ได้ด้วยตนเอง

ในบางกรณี คอมพิวเตอร์ Windows อาจไม่แสดงในสภาพแวดล้อมเครือข่ายเนื่องจากการตั้งค่า workgroup ผิดพลาด ลองเพิ่มคอมพิวเตอร์นี้กลับเข้า workgroup ใหม่ ไปที่ Control Panel -> System and Security -> System -> Change Settings -> Network ID

ใน Join Domain or Workgroup Wizard ที่เปิดขึ้น ให้เลือก: This computer is part of a business network -> My company uses a network without a domain -> ป้อนชื่อ workgroup ของคุณ หลังจากนั้น คุณต้องรีสตาร์ทคอมพิวเตอร์
หากหลังจากรีบูทคอมพิวเตอร์ปรากฏในสภาพแวดล้อมเครือข่าย แต่คุณไม่สามารถเข้าถึงได้ ให้ตรวจสอบประเภทโปรไฟล์เครือข่าย (location) บนคอมพิวเตอร์ของคุณ มากที่สุดเครือข่ายท้องถิ่นของคุณถูกจดจำเป็น Public คุณต้องเปลี่ยนตำแหน่งเครือข่ายเป็น Private เพื่อทำเช่นนี้ ให้เปิด Settings -> Network and Internet -> Status -> Homegroup

คลิก Change network location จากนั้นเลือก "Yes" ในกล่องโต้ตอบ "Do you want to allow your PC to be discoverable by other PCs and devices on this network? We recommend allowing this on your home and work network, but not public ones"
เปิด Network และตรวจสอบว่าตอนนี้คุณเห็นคอมพิวเตอร์ Windows ใกล้เคียงแล้วหรือไม่

หากเคล็ดลับเหล่านี้ไม่ช่วย และคอมพิวเตอร์ใน workgroup ยังไม่แสดง ให้ลองรีเซ็ตการตั้งค่าเครือข่าย (Settings -> Network and Internet -> Status -> Network Reset)

คุณยังสามารถรีเซ็ตการตั้งค่าเครือข่ายและกฎไฟร์วอลล์ด้วยคำสั่ง:
netsh int ip reset reset.txt
netsh winsock reset
netsh advfirewall reset
จากนั้นคุณต้องรีบูทคอมพิวเตอร์
ในบางกรณี คุณต้องลบอะแดปเตอร์เครือข่ายของคุณออกโดยสมบูรณ์โดยใช้ Device Manager (รันคอนโซล devmgmt.msc -> Network Adapters -> การ์ดเครือข่ายของคุณ -> Delete device) 
จากนั้นรีสตาร์ทคอมพิวเตอร์ Windows ควรตรวจจับอะแดปเตอร์เครือข่ายของคุณโดยอัตโนมัติและติดตั้งไดรเวอร์ที่เหมาะสม ในกรณีนี้ การตั้งค่าโปรโตคอลเก่าทั้งหมดสำหรับการ์ดเครือข่ายจะถูกรีเซ็ท
นอกจากนี้ ให้ตรวจสอบว่าบริการต่อไปนี้กำลังทำงานอยู่ (พวกมันควรอยู่ในสถานะ automatic startup เพื่อแสดงสภาพแวดล้อมเครือข่ายของคุณอย่างถูกต้อง) รันคอนโซล services.msc และตรวจสอบสถานะบริการ:
- FdPHost – Function Discovery Provider Host (รับผิดชอบในการค้นพบคอมพิวเตอร์อื่นๆ บนเครือข่าย);
- FDResPub – Function Discovery Resource Publication (อนุญาตให้คอมพิวเตอร์อื่นๆ ตรวจจับอุปกรณ์ของคุณบนเครือข่าย);
- Dnscache – DNS Client;
- SSDPSrv – SSDP Discovery;
- Upnphost – PnP Device Host.
ในบางกรณี แอนติไวรัสและไฟร์วอลล์ของบุคคลที่สามสามารถบล็อกคำขอการ resolve ชื่อ NetBIOS, WDS และคำขอ broadcast DNS queries (แน่นอนว่ามีปัญหากับ ESET NOD32) ลองปิดใช้งานแอนติไวรัส/ไฟร์วอลล์ของคุณชั่วคราวและตรวจสอบว่าการค้นพบเครือข่ายทำงานถูกต้องบนอุปกรณ์ Windows 10 ของคุณหรือไม่
วิธีเปิดใช้งาน Network Discovery บน Windows 10
ตั้งแต่ Windows 10 1803 (Spring Creators Update) นักพัฒนา Microsoft ลบความสามารถในการสร้าง HomeGroup นอกจากนี้ คอมพิวเตอร์ Windows 10 ไม่แสดงในสภาพแวดล้อมเครือข่ายของ File Explorer เมื่อดูอุปกรณ์เครือข่าย
จากมุมมองของ Microsoft HomeGroup เป็นวิธีแบบดั้งเดิมในการสร้างเครือข่ายท้องถิ่นเพื่อแชร์โฟลเดอร์และเครื่องพิมพ์ แทนที่จะใช้ HomeGroup Microsoft แนะนำให้ใช้บริการคลาวด์ของมัน (OneDrive หรือการเข้าถึงผ่าน Microsoft Accounts)
ใน Windows 10 1803 (และใหม่กว่า) เพื่อเข้าถึงทรัพยากรที่แชร์บนคอมพิวเตอร์อื่นผ่านเครือข่ายท้องถิ่น คุณต้องรู้ hostname (\\pcname1) หรือที่อยู่ IP (\\192.168.1.90) แต่งคอมพิวเตอร์ในเครือข่ายไม่แสดง อย่างไรก็ตาม สิ่งนี้สามารถแก้ไขได้
คุณสามารถสร้าง shortcut บนเดสก์ท็อปไปยังคอมพิวเตอร์ใกล้เคียงโดยระบุพาธ UNC ไปยังพวกเขา (ด้วยชื่อคอมพิวเตอร์หรือที่อยู่ IP)

ข้อเท็จจริงคือ บริการ Function Discovery Provider Host แยกต่างหากรับผิดชอบในการค้นพบคอมพิวเตอร์ใกล้เคียงบนเครือข่าย Windows 10 อีกบริการหนึ่ง Function Discovery Resource Publication รับผิดชอบในการค้นพบคอมพิวเตอร์ของคุณ
บริการ FdPHost ใช้โปรโตคอล Simple Services Discovery Protocol (SSDP) และ Web Services Discovery (WS-Discovery) เพื่อค้นพบอุปกรณ์บนเครือข่าย
โปรโตคอลเหล่านี้แทนที่ NetBIOS over TCP/IP ซึ่งใช้ในการค้นพบอุปกรณ์บนเครือข่าย Microsoft Windows พร้อม Master Browser ตามประวัติ ดังนั้นคุณสามารถปิดใช้งานโปรโตคอล NetBIOS สำหรับอะแดปเตอร์เครือข่ายของคุณได้อย่างปลอดภัย
หลังจากติดตั้ง Windows 10 บิลด์ล่าสุด บริการเหล่านี้อาจถูกปิดใช้งาน (ประเภทการเริ่มต้นเปลี่ยนจาก Automatic เป็น Disabled) หากบริการเหล่านี้หยุดทำงาน คอมพิวเตอร์จะไม่ถูกค้นพบบนเครือข่ายโดยคอมพิวเตอร์อื่นและไม่สามารถเห็นผู้อื่นได้ คุณสามารถเปิดใช้งานบริการค้นพบเครือข่ายใน Windows 10 ได้ดังนี้
- เปิด Windows Services Management Console (services.msc);
- ในรายการบริการ หาบริการ Function Discovery Resource Publication;
- เปลี่ยนประเภทการเริ่มต้นของบริการจาก Manual เป็น Automatic (Delayed Start);

- เช่นเดียวกัน ให้เปิดใช้งานบริการ Function Discovery Provider Host คุณสามารถเปลี่ยนประเภทการเริ่มต้นของบริการเหล่านี้ด้วยคำสั่ง PowerShell one-liner ต่อไปนี้:
get-Service fdPHost,FDResPub|Set-Service -startuptype automatic -passthru|Start-Service - รีสตาร์ทคอมพิวเตอร์ของคุณ
หลังจากรีบูท คอมพิวเตอร์อื่นๆ บนเครือข่ายท้องถิ่นจะสามารถค้นพบคอมพิวเตอร์นี้และทรัพยากรของมัน (เครื่องพิมพ์เครือข่ายที่แชร์และโฟลเดอร์) ได้
โปรโตคอล SMB 1.0 และปัญหา Master Browser บน Windows 10
บางครั้ง ปัญหาการแสดงคอมพิวเตอร์ในสภาพแวดล้อมเครือข่ายเกี่ยวข้องกับบริการ Computer Browser บริการนี้รับผิดชอบในการสร้างและดูแลรายการคอมพิวเตอร์ที่ใช้งานอยู่บนเครือข่ายท้องถิ่น ในเครือข่ายท้องถิ่นสามารถมีคอมพิวเตอร์เพียงเครื่องเดียวที่มีบทบาทเป็น Master Browser
คุณสามารถระบุ Master Browser ปัจจุบันในเครือข่ายของคุณได้โดยการรันคำสั่งต่อไปนี้สำหรับคอมพิวเตอร์แต่ละเครื่องในเครือข่ายของคุณ:
nbtstat -a ComputerName
คอมพิวเตอร์ที่เป็น Master Browser คือเครื่องเดียวที่มีค่า __MSBROWSE__.
ใน Windows 10 1703 บริการ Computer Browser ทำงานไม่ถูกต้อง แนะนำให้ปิดใช้งานบริการนี้บน Windows 10 โดยสิ้นเชิง และใช้คอมพิวเตอร์ที่รัน Windows 7 (หรือ Windows 8.1/Windows Server 2012 R2 ตาม Windows 7 EoS) เป็น Master Browser บนเครือข่ายของคุณ คุณสามารถตั้งค่าคอมพิวเตอร์ Master Browser ผ่าน registry
เพื่อปิดใช้งาน Computer Browser ให้ไปที่ registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters และเปลี่ยนค่าของ MaintainServerList เป็น False เพื่อบังคับตั้งค่าว่าคอมพิวเตอร์ไหนเป็น Master Browser ของเครือข่าย ให้เปลี่ยนค่าของ MaintainServerList เป็น Yes
นอกจากนี้ ใน Windows 10 1709 และใหม่กว่า (1803, 1809, 1903, 1909) บริการ Computer Browser และโปรโตคอล SMB v1.0 ถูกปิดใช้งานโดยค่าเริ่มต้น บริการ Computer Browser รับผิดชอบในการรวบรวมรายการคอมพิวเตอร์บนเครือข่ายและแสดงพวกเขา (โปรโตคอลการค้นพบนี้ใช้กันอย่างกว้างขวางก่อนการเปลี่ยนไปใช้โปรโตคอล SSDP และ WS-Discovery)
หากคุณมีคอมพิวเตอร์ Win 10 1709 และใหม่กว่าเท่านั้นในเครือข่ายท้องถิ่นของคุณ (ดูตารางเวอร์ชัน SMB) และคุณยังต้องการใช้ Computer Browser คุณต้องเปิดใช้งานโปรโตคอล SMB v1.0 (ไม่ปลอดภัย!) บนคอมพิวเตอร์อย่างน้อยหนึ่งเครื่อง คอมพิวเตอร์นี้จะถูกใช้เป็น Master Browser บนเครือข่ายของคุณ
คุณสามารถเปิดใช้งานการรองรับ SMB 1.0 ได้โดยการเปิดใช้งานฟีเจอร์ Windows ต่อไปนี้จาก Control Panel:
- SMB 1.0 /CIFS Client;
- SMB 1.0 /CIFS Server.

หรือคุณสามารถเปิดใช้งานฟีเจอร์ SMB 1 client และ server จาก OptionalFeatures.exe หรือด้วยคำสั่ง DISM:
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Server"
เราเตือนอีกครั้งว่าไม่แนะนำให้เปิดใช้งาน SMB1 server ใน Windows โปรโตคอล SMB 1.0 ไม่ปลอดภัย ช่องโหว่ SMB1 หลายช่องสามารถถูกโจมตีระยะไกลได้ง่าย
หากคุณเปิดใช้งานโปรโตคอล SMB1 แล้ว เพื่อกำหนดให้คอมพิวเตอร์ปัจจุบันเป็น Master Browser บนเครือข่าย ให้รันคำสั่งต่อไปนี้:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters" /v IsDomainMaster /t REG_SZ /d True /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters" /v MaintainServerList /t REG_SZ /d Yes /f
คอมพิวเตอร์นี้จะเป็น Master Browser ในเครือข่ายของคุณ
Windows 10 ไม่สามารถเชื่อมต่อโฟลเดอร์เครือข่ายที่แชร์ได้
ในบางกรณี Windows 10 สามารถเห็นและสำรวจอุปกรณ์ใกล้เคียงในสภาพแวดล้อม workgroup ได้ แต่ไม่สามารถแสดงรายการโฟลเดอร์เครือข่ายที่แชร์บนมันได้ นี่มักมาพร้อมกับข้อผิดพลาด "0x80070035 – Network path not found" วิธีแก้ปัญหานี้อธิบายในบทความนี้
หากคอมพิวเตอร์ (อุปกรณ์) ใกล้เคียงมองเห็นได้บนเครือข่าย แต่เมื่อคุณพยายามเปิดโฟลเดอร์เครือข่ายใดๆ จากสภาพแวดล้อมเครือข่ายหรือใช้พาธ UNC (\\Hostname_or_IP) ข้อผิดพลาดปรากฏ "You can't access this shared folder because your organization's security policies block unauthenticated guest access" ในกรณีนี้ คุณต้องเปิดใช้งานพารามิเตอร์ registry AllowInsecureGuestAuth โดยใช้คำสั่ง (รายละเอียดดูในบทความ Can't Access Shared Folder from Windows 10):
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f