บทแนะนำฉบับสมบูรณ์เกี่ยวกับการใช้คำสั่ง NETSH ใน Windows

การปรับปรุงครั้งล่าสุด: 27/02/2026
ผู้แต่ง: ไอแซก
  • Netsh ช่วยให้คุณสามารถสอบถาม กำหนดค่า และวินิจฉัยเครือข่ายใน Windows โดยใช้บริบทเฉพาะทาง (IPv4, Wi-Fi, ไฟร์วอลล์, TCP, พร็อกซี ฯลฯ)
  • ด้วยคำสั่งต่างๆ ของโปรแกรมนี้ คุณสามารถจัดการที่อยู่ IP, DNS, โปรไฟล์ Wi-Fi, กฎไฟร์วอลล์ และรีเซ็ตสแต็ก TCP/IP และ Winsock ได้
  • Netsh ช่วยให้การทำงานอัตโนมัติเป็นไปได้ง่ายขึ้น โดยรองรับการเขียนสคริปต์ การส่งออกและนำเข้าการกำหนดค่า และการเรียกใช้งานจากระยะไกลด้วยข้อมูลรับรองที่แตกต่างกัน
  • แม้ว่าจะใช้งานได้ไม่สะดวกเท่ากับอินเทอร์เฟซแบบกราฟิก แต่ก็ยังคงเป็นเครื่องมือสำคัญสำหรับการจัดการเครือข่ายและการแก้ไขปัญหาขั้นสูง

บทแนะนำการใช้งานคำสั่ง netsh ใน Windows

หากคุณใช้งาน Windows และเกี่ยวข้องกับเครือข่ายบ่อยๆ ไม่ช้าก็เร็วคุณจะต้องเจอกับคำสั่ง netsh และศักยภาพเต็มรูปแบบของมันในการจัดการเครือข่ายและ Wi-Fi ด้วยคำสั่งแม้ว่าส่วนใหญ่จะสามารถทำได้จากส่วนติดต่อผู้ใช้แบบกราฟิก แต่เมื่อคุณต้องการทำงานอย่างรวดเร็ว ทำงานอัตโนมัติ หรือแก้ไขปัญหาที่สำคัญ บรรทัดคำสั่งคือเพื่อนที่ดีที่สุดของคุณ

คู่มือนี้ได้รวบรวมและจัดระเบียบข้อมูลจากคู่มือที่ดีที่สุดในหัวข้อนี้ไว้อย่างชัดเจน เพื่อให้คุณมีคู่มือ netsh ฉบับสมบูรณ์ในที่เดียว: มันคืออะไร ทำงานอย่างไร และคำสั่งที่มีประโยชน์ที่สุดสำหรับ IPv4, Wi-Fi, ไฟร์วอลล์, DNS, พร็อกซี, สคริปต์ และการวินิจฉัยเครือข่ายใน Windows

netsh คืออะไร และใช้ทำอะไรใน Windows?

Netsh (Network Shell) เป็นเครื่องมือแบบบรรทัดคำสั่งที่มีอยู่ใน Windows ซึ่งช่วยให้คุณสามารถตรวจสอบ กำหนดค่า และวินิจฉัยเครือข่ายของคุณได้ทั้งบนคอมพิวเตอร์ไคลเอ็นต์ (Windows 10, 11 ฯลฯ) และบน Windows Server ทุกอย่างทำได้โดยใช้คำสั่งโดยไม่มีส่วนติดต่อผู้ใช้แบบกราฟิก

ยูทิลิตีนี้ทำงานโดยใช้บริบทคำสั่งที่โหลดผ่านไฟล์ DLLแต่ละไฟล์ DLL จะเพิ่มชุดคำสั่งสำหรับฟังก์ชันเฉพาะ เช่น DHCP, ไฟร์วอลล์, IP, Wi-Fi, TCP เป็นต้น ตัวอย่างเช่น ไลบรารี dhcpmon.dllจะเพิ่มบริบทสำหรับการจัดการเซิร์ฟเวอร์ DHCP จาก netsh

ในหลายกรณี คำสั่ง netsh มีฟังก์ชันการทำงานเหมือนกับส่วนเสริมของ Microsoft Management Console (MMC)ที่คุณใช้ในโหมดกราฟิก เช่น ไฟร์วอลล์ขั้นสูง, Network Policy Server (NPS), BranchCache, IPsec, HTTP และอื่นๆ ในบางกรณี คุณยังสามารถเข้าถึงการตั้งค่าที่ส่วนติดต่อผู้ใช้แบบกราฟิกไม่สามารถเข้าถึงได้ เช่น การกำหนดค่า IPv6, WFP หรือ RPC บางอย่าง

ข้อดีอย่างยิ่งของ netsh คือคุณสามารถตั้งค่าการเปลี่ยนแปลงโดยอัตโนมัติ เรียกใช้คำสั่งจากระยะไกล และสร้างสคริปต์ที่นำกลับมาใช้ซ้ำได้ซึ่งเป็นประโยชน์อย่างมากหากคุณจัดการคอมพิวเตอร์หรือเซิร์ฟเวอร์หลายเครื่องและต้องการทำงานอย่างสม่ำเสมอ

ไวยากรณ์ทั่วไปของคำสั่ง netsh

ไวยากรณ์พื้นฐานของ netsh ตามที่ Microsoft ได้ระบุไว้ มีดังนี้ (ปรับให้เข้ากับภาษาสเปน):

netsh

พารามิเตอร์แต่ละตัวมีวัตถุประสงค์เฉพาะ และทั้งหมดเป็นตัวเลือก ยกเว้นคำสั่งหรือสคริปต์ที่คุณต้องการเรียกใช้:

  • -ถึง: ระบุว่าคุณต้องการเรียกใช้ไฟล์นามแฝง (ข้อความธรรมดาที่มีคำสั่ง netsh หลายคำสั่ง) และเมื่อเสร็จสิ้นแล้ว ให้กลับไปยังเชลล์ netsh แทนที่จะออกจากโปรแกรม
  • -c: กำหนดบริบทเริ่มต้น นั่นคือ พื้นที่คำสั่งที่คุณจะใช้งาน (ตัวอย่างเช่น wlan, interface, advfirewall).
  • -r: เรียกใช้คำสั่งบนคอมพิวเตอร์เครื่องอื่น โดยใช้ชื่อคอมพิวเตอร์ ชื่อโดเมนแบบเต็ม (FQDN) หรือที่อยู่ IP ต้องเปิดใช้งานบริการ Remote Registry หากไม่เปิดใช้งาน คุณจะพบข้อผิดพลาด "ไม่พบเส้นทางเครือข่าย".
  • -หรือ: อนุญาตให้เรียกใช้ netsh ด้วยข้อมูลประจำตัวของบัญชีผู้ใช้อื่น ไม่ว่าจะเป็นบัญชีภายในเครื่องหรือบัญชีโดเมน
  • -p | *: ประกอบ -u เพื่อป้อนรหัสผ่านบัญชี ด้วย * บังคับให้คุณต้องป้อนรหัสอย่างปลอดภัยโดยไม่ต้องแสดงรหัสบนหน้าจอ
  • -เอฟ: เรียกใช้สคริปต์ netsh (รายการคำสั่ง) และออกจากโปรแกรมโดยอัตโนมัติเมื่อเสร็จสิ้น

เมื่อค่าสตริงมีช่องว่าง ช่องว่างนั้นจะต้องไม่มีอยู่จริง ใส่เครื่องหมายอัญประกาศคู่ล้อมรอบตัวอย่างเช่น หากต้องการใช้งานคอมพิวเตอร์ระยะไกลที่มีชื่อไฟล์มีช่องว่างอยู่ คุณจะต้องทำเช่นนี้: -r "equipo remoto oficina".

บริบท บริบทย่อย และความช่วยเหลือในตัวของ Netsh

Netsh ทำงานในลักษณะ "คอนโซลขนาดเล็ก" ภายในระบบ โดยคุณสามารถสลับไปมาระหว่างบริบทและบริบทย่อยต่างๆ ขึ้นอยู่กับส่วนประกอบเครือข่ายที่คุณต้องการจัดการ เช่น อินเทอร์เฟซ, IPv4, IPv6, ไฟร์วอลล์, Wi-Fi, TCP, UDP เป็นต้น

หากคุณพิมพ์เฉพาะจาก CMD หรือ PowerShell เท่านั้น netsh และคุณกด Enter คุณจะเข้าสู่ระบบ netsh interactive shellตรงนั้นคุณจะเห็นข้อความแจ้งเตือนที่คล้ายกับ netsh>และจากตรงนั้นคุณสามารถเปลี่ยนบริบทได้:

  • การเขียน dhcpclient คุณจะเข้าสู่บริบทไคลเอ็นต์ DHCP
  • ถ้าคุณเขียน interfaceคุณจะข้ามไปยังบริบทของอินเทอร์เฟซเครือข่าย
  • จาก interface คุณสามารถไปที่บริบทย่อยได้ ipv4 o ipv6, otros Entre

ข้อความที่ปรากฏอยู่ก่อนสัญลักษณ์ > มันบอกคุณ คุณอยู่ที่ไหน ณ ขณะใดขณะหนึ่ง. ยกตัวอย่างเช่น netsh interface ipv4> ข้อความนี้แสดงให้เห็นอย่างชัดเจนว่าคุณอยู่ในบริบทย่อยของอินเทอร์เฟซ IPv4

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่าระบบของคุณรองรับบริบทใดบ้าง netsh ? o netsh helpในรายการทั่วไป คุณจะพบสิ่งต่างๆ เช่น:

  • แอดวีไฟร์วอลล์: การจัดการไฟร์วอลล์ของ Windows พร้อมระบบรักษาความปลอดภัยขั้นสูง
  • WLANทุกสิ่งทุกอย่างที่เกี่ยวข้องกับเครือข่าย Wi-Fi
  • อินเตอร์เฟซ: การจัดการอินเทอร์เฟซเครือข่ายและบริบทย่อยต่างๆ (IPv4, IPv6, TCP, UDP…)
  • branchcache, http, ipsec, ras, winsock, winhttp และอื่น ๆ อีกมากมาย.

นอกจากนี้ แต่ละบริบทก็มีลักษณะเฉพาะของตนเอง บริบทย่อยที่ซ้อนกันตัวอย่างเช่น ภายใน interface คุณมี ipv4, ipv6, tcp, udp, portproxy, teredoเป็นต้น โดยแต่ละอย่างจะมีคำสั่งเฉพาะของตนเอง

หากคุณไม่ต้องการเปลี่ยนตำแหน่งที่ตั้ง คุณสามารถใช้เส้นทางแบบเต็มไปยังคำสั่งได้ตัวอย่างเช่น จากที่ใดก็ได้ (แม้กระทั่งนอก netsh) คุณสามารถเรียกใช้คำสั่ง:

netsh interface ipv4 set address "NetLAN1" static <IP> <MASCARA> <PUERTA_DE_ENLACE>

วิธีนี้จะกำหนดที่อยู่ IP แบบคงที่ให้กับอินเทอร์เฟซ "NetLAN1" โดยไม่ต้องสลับบริบทด้วยตนเอง

  การประชุมทางวิดีโอช้าหรือหลุดบน Windows 11: คำแนะนำฉบับสมบูรณ์เกี่ยวกับสาเหตุและวิธีแก้ไข

คำอธิบายและไวยากรณ์ของคำสั่ง netsh

เอกสารประกอบการใช้งาน netsh ใช้หลักเกณฑ์ที่ชัดเจนมากในการอธิบายว่าส่วนใดของคำสั่งเป็นส่วนที่ต้องปฏิบัติตามจริง และส่วนใดที่คุณควรแทนที่ด้วยข้อมูลของคุณเอง

  • ข้อความใน หนังสือแบบตัวเอียง โดยปกติจะชี้ให้เห็น ข้อมูลที่คุณต้องการเปลี่ยนแปลงเช่น ชื่อผู้ใช้ ไฟล์ หรืออินเทอร์เฟซ
  • ข้อความใน ตัวหนา นั่นหมายถึงสิ่งที่คุณต้องเขียนลงไปตรงตามต้นฉบับทุกประการ โดยไม่มีการแก้ไขใดๆ
  • เมื่อคุณเห็นพารามิเตอร์ตามด้วยจุดไข่ปลา (...) หมายความว่าพารามิเตอร์นั้น สามารถทำซ้ำได้หลายครั้ง ตามแนวเดียวกัน
  • ทุกอย่างที่อยู่ในวงเล็บ es ไม่จำเป็น.
  • องค์ประกอบในวงเล็บ {} แยกโดย | พวกเขาบอกเป็นนัยว่า คุณสามารถเลือกได้เพียงหนึ่งตัวเลือกเท่านั้นตัวอย่างเช่น {enable|disable}.
  • ข้อความที่ใช้แบบอักษรคงที่ (แบบอักษร Courier) แสดงถึง รหัสคำสั่งหรือผลลัพธ์.

โปรดทราบว่าพารามิเตอร์หลายตัวรับค่าสตริงหากมีช่องว่าง โปรดอย่าลืมใส่เครื่องหมายคำพูดคู่คร่อมช่องว่างเหล่านั้น ตัวอย่างเช่น เมื่อกำหนดค่าอินเทอร์เฟซที่ชื่อว่าWireless Network Connection :

netsh interface ipv4 set address name="Wireless Network Connection" dhcp

แทนที่จะใช้ชื่ออินเทอร์เฟซ คุณยังสามารถใช้หมายเลขดัชนี ได้ (ซึ่งมีประโยชน์เมื่อชื่ออยู่ในภาษาอื่นหรือมีความยาวมาก) ตัวอย่างเช่น:

netsh interface ipv4 set address name=15 dhcp

วิธีใช้งาน netsh: ผ่าน CMD, PowerShell และโหมดโต้ตอบ

Netsh สามารถเรียกใช้งานได้ทั้งจากWindows PowerShell และจากพรอมต์คำสั่งแบบคลาสสิก (CMD)แต่รูปแบบการใช้งานจะแตกต่างกันเล็กน้อยในแต่ละกรณี

หากต้องการเปิดใช้งานในโหมดผู้ดูแลระบบ คุณสามารถทำได้ดังนี้:

  • กด ของ Windows + X และเลือก “Windows PowerShell (Administrator)” หรือ “Command Prompt (Administrator)”
  • หรือค้นหา “cmd"หรือ"PowerShell"ในเมนู Start ให้คลิกขวาแล้วเลือก Run as administrator"

คุณสามารถเขียนได้จากทั้งสองคอนโซล netsh เพื่อเข้าสู่เชลล์ netsh จากนั้นคุณจะป้อนคำสั่งต่อไปนี้ คำสั่งทีละคำสั่งการเปลี่ยนบริบทและการใช้ ? เพื่อดูตัวเลือกที่มีให้ในแต่ละจุด

หากคุณไม่ต้องการเข้าสู่โหมดโต้ตอบ ใน CMD การพิมพ์คำสั่งต่อไปนี้เป็นเรื่องปกติมาก ดำเนินการคำสั่งให้เสร็จสมบูรณ์ในครั้งเดียว และกด Enter ตัวอย่างเช่น netsh /? เพื่อดูความช่วยเหลือทั่วไปหรืออะไรทำนองนั้น netsh interface tcp show global เพื่อดูพารามิเตอร์ TCP ทั่วโลก

การใช้งาน netsh กับ IPv4: IP, mask, gateway และ DNS

หนึ่งในแอปพลิเคชันที่พบบ่อยที่สุดของ netsh คือการสอบถามและแก้ไขการกำหนดค่า IPv4 ของอินเทอร์เฟซต่างๆเช่น IP, ซับเน็ตมาสก์, เกตเวย์ และเซิร์ฟเวอร์ DNS

หากต้องการแสดงสรุปการกำหนดค่า IPv4 ปัจจุบันบนอินเทอร์เฟซทั้งหมด คุณสามารถใช้คำสั่งต่อไปนี้:

netsh interface ip show config

ทางออกนั้นค่อนข้างไม่ละเอียดถี่ถ้วนเท่าที่ควร ipconfig /allแต่มันก็มีข้อเสนอ ข้อมูลสำคัญทั้งหมดสรุปไว้ในที่เดียว: ตั้งค่า IP ปัจจุบัน, มาสก์, เกตเวย์ และ DNS แล้ว

หากคุณต้องการเปลี่ยนที่อยู่ IP ของอินเทอร์เฟซเครือข่ายเป็นที่อยู่แบบคงที่ เช่น เพื่อเพิ่มประสิทธิภาพการเล่นเกมออนไลน์ คุณสามารถใช้ไวยากรณ์ IPv4 แบบคลาสสิกได้:

netsh interface ip set address name="Ethernet" source=static addr=192.168.1.10 mask=255.255.255.0 gateway=192.168.1.1

คำสั่งนี้จะตั้งค่าที่อยู่ IP 192.168.1.10, ซับเน็ตมาสก์ /24 และเกตเวย์ 192.168.1.1 สำหรับอินเทอร์เฟซ "Ethernet" หากคุณต้องการกำหนดที่อยู่ IP ใหม่ผ่าน DHCP ในภายหลัง คุณเพียงแค่เรียกใช้คำสั่งต่อไปนี้:

netsh interface ip set address name="Ethernet" source=dhcp

หลักการเดียวกันนี้ใช้ได้กับเซิร์ฟเวอร์ DNS ด้วยเช่นกัน ในการตั้งค่า DNS แบบคงที่:

netsh interface ip set dnsserver "Ethernet" static 8.8.8.8 primary

และเพื่อคืนค่าการแปลงชื่อโดเมนกลับไปใช้ DHCP:

netsh interface ip set dnsserver "Ethernet" dhcp

ใน IPv4 คุณจะมีคำสั่งต่างๆ ไว้ใช้แสดงสถิติ IP , ตาราง ARP หรือการเชื่อมต่อ TCP ที่กำหนดค่าไว้ด้วยเช่นกัน:

  • netsh interface ip show ipstats – สถิติโปรโตคอล IP
  • netsh interface ip show ipnet – ที่อยู่ IP และ MAC ที่เกี่ยวข้อง (ซึ่งจะกระตุ้นการร้องขอ ARP บนเครือข่าย)
  • netsh interface ip show tcpconn – สรุปการเชื่อมต่อ TCP ที่มีอยู่

การจัดการอินเทอร์เฟซ: ชื่อ ดัชนี และสถานะ

ก่อนที่จะเปลี่ยนแปลงอะไรก็ตาม สิ่งสำคัญคือต้องทราบว่าคุณมีอินเทอร์เฟซอะไรบ้าง ชื่อของอินเทอร์เฟซเหล่านั้น และสถานะปัจจุบันของอินเทอร์เฟซเหล่านั้นการใช้ netsh จะทำให้เรื่องนี้ง่ายขึ้นมาก: เพื่อให้เข้าใจการไหลของการเชื่อมต่อเครือข่าย ได้ดีขึ้น การแสดงรายการอินเทอร์เฟซก่อนทำการเปลี่ยนแปลงการกำหนดค่าใดๆ จะเป็นประโยชน์อย่างยิ่ง

หากต้องการดูรายการทั่วไปของอินเทอร์เฟซเครือข่ายและสถานะ (เชื่อมต่อ, ตัดการเชื่อมต่อ, ปิดใช้งาน):

netsh interface show interface

หากคุณต้องการดัชนีตัวเลขของอินเทอร์เฟซ IPv4 ทั้งหมด (ซึ่งมีประโยชน์เมื่อชื่อมีช่องว่างหรือเครื่องหมายเน้นเสียง):

netsh interface ip show interfaces

นอกจากนี้ คุณยังมีคำสั่งสำหรับแสดงที่อยู่และ DNS ที่กำหนดค่าไว้ตามอินเทอร์เฟซตัวอย่างเช่น:

  • netsh interface ipv4 show address Wi-Fi
  • netsh interface ipv4 show dns Wi-Fi
  • netsh interface ipv4 show address Ethernet
  • netsh interface ipv4 show dns Ethernet

เมื่อคุณอยู่นอกบริบทย่อยใดๆ คุณสามารถใช้เส้นทางแบบเต็มได้ ตัวอย่างเช่น:

netsh interface ipv4 show interfaces

ด้วยวิธีนี้ คุณก็จะเห็นทุกอย่างพร้อมกัน อินเทอร์เฟซ IPv4 ทั้งหมดพร้อมดัชนี MTU และสถานะโดยไม่ต้องข้ามไปยังบริบท interface.

เครือข่าย Wi-Fi: โปรไฟล์, ปุ่มลัด, ไดรเวอร์ และความสามารถต่างๆ

บริบทwlanครอบคลุมเกือบทุกสิ่งที่คุณสามารถทำได้กับเครือข่ายไร้สายจาก netsh: การแสดงรายการโปรไฟล์ การดูรหัสผ่านที่บันทึกไว้ การตรวจสอบไดรเวอร์และคุณสมบัติ และการสร้างรายงานนอกจากนี้ยังช่วยให้คุณสามารถสร้างเครือข่าย Wi-Fi เสมือนโดยใช้ netsh ได้อีกด้วย

  นี่คือตัวจำลอง Xbox 4 ที่ดีที่สุด 360 ตัวที่คุณควรติดตั้งบนคอมพิวเตอร์ของคุณในปี 2019

เพื่อแสดงรายการโปรไฟล์ Wi-Fi ทั้งหมดที่ระบบบันทึกไว้:

netsh wlan show profiles

หากคุณต้องการกรองตามอินเทอร์เฟซไร้สายเฉพาะ คุณสามารถใช้คำสั่งต่อไปนี้:

netsh wlan show profiles interface="nombre_interfaz"

หากต้องการดูรายละเอียดของตัวควบคุม Wi-Fi (ผู้ผลิต รุ่น วันที่ ประเภทคลื่นความถี่ ฯลฯ):

netsh wlan show drivers

ในระบบรุ่นใหม่ๆ คุณยังสามารถดูคุณสมบัติการเชื่อมต่อไร้สายที่อะแดปเตอร์รองรับได้อีกด้วย:

netsh wlan show wireless capabilities

หากคุณต้องการดูข้อมูลแบบเรียลไทม์เกี่ยวกับอินเทอร์เฟซ Wi-Fi ที่ใช้งานอยู่ (SSID ที่เชื่อมต่อ ช่องสัญญาณ ความแรงของสัญญาณ ความเร็วในการเชื่อมต่อ):

netsh wlan show interfaces

และหากคุณมีหลายรายการ คุณสามารถระบุชื่อได้:

netsh wlan show interface name="Nombre_interfaz"

หากต้องการดูรายชื่อเครือข่ายไร้สายที่อะแดปเตอร์ของคุณกำลังตรวจพบอยู่:

netsh wlan show networks

หากคุณต้องการข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับ BSSID แต่ละรายการ (ช่องสัญญาณ ระดับพลังงาน ความเร็วที่รองรับ) คุณสามารถเพิ่มโหมด BSSID ได้:

netsh wlan show networks mode=bssid

การใช้งานที่พบบ่อยมากอย่างหนึ่งคือการเรียกดูรหัสผ่าน Wi-Fi ที่บันทึกไว้สำหรับโปรไฟล์เฉพาะ โดยสามารถเรียกใช้คำสั่งต่อไปนี้ได้:

netsh wlan show profile name="NombrePerfil" key=clear

รหัสผ่านจะปรากฏเป็นข้อความธรรมดาในส่วนการตั้งค่าความปลอดภัยของผลลัพธ์ ดังนั้นควรใช้เฉพาะกับคอมพิวเตอร์ที่คุณควบคุมเท่านั้น เพราะใครก็ตามที่มีสิทธิ์ผู้ดูแลระบบสามารถเห็นรหัสผ่านเหล่านั้นได้

หากคุณต้องการให้เครือข่าย Wi-Fi หยุดเชื่อมต่อโดยอัตโนมัติเมื่อตรวจพบ คุณสามารถเปลี่ยนโหมดการเชื่อมต่อได้:

netsh wlan set profileparameter name="Nombre de perfil" connectionmode=manual

และหากคุณสนใจในสิ่งที่ตรงกันข้ามโดยสิ้นเชิง นั่นคือการเชื่อมต่ออัตโนมัติเมื่ออยู่ในระยะ:

netsh wlan set profileparameter name="Nombre de perfil" connectionmode=auto

หากต้องการตัดการเชื่อมต่อจากเครือข่าย Wi-Fi ปัจจุบันผ่านทางคอนโซล คุณสามารถทำได้ดังนี้:

netsh wlan disconnect

และเพื่อเชื่อมต่อกับเครือข่ายอื่นที่มีโปรไฟล์อยู่แล้วในคอมพิวเตอร์ จะใช้คำสั่งประมาณนี้:

netsh wlan connect name="NombreDeTuSSID"

ส่งออก นำเข้า และล้างข้อมูลโปรไฟล์ Wi-Fi

เมื่อต้องจัดการอุปกรณ์หลายเครื่อง การส่งออกโปรไฟล์ Wi-Fiจากอุปกรณ์ที่ตั้งค่าไว้เรียบร้อยแล้ว แล้วนำเข้าโปรไฟล์เหล่านั้นไปยังอุปกรณ์อื่นโดยไม่ต้องป้อนรหัสด้วยตนเองจะเป็นเรื่องสะดวกมาก

หากต้องการส่งออกโปรไฟล์ทั้งหมดไปยังโฟลเดอร์ที่กำหนด โดยใช้คีย์ที่ชัดเจน เพื่อให้สามารถย้ายข้อมูลได้อย่างราบรื่น:

netsh wlan export profile key=clear folder="C:\perfileswifi"

ขั้นตอนนี้จะสร้างไฟล์ XML หนึ่งไฟล์หรือมากกว่านั้นในเส้นทางที่ระบุไว้ ต่อมา หากต้องการนำเข้าไฟล์เหล่านั้นไปยังคอมพิวเตอร์เครื่องอื่น เพียงทำตามขั้นตอนต่อไปนี้

netsh wlan add profile filename="C:\perfileswifi\perfil1.xml"

หากคุณมีโปรไฟล์เก่าสำหรับเครือข่ายที่คุณไม่ได้เชื่อมต่ออีกต่อไปแล้ว ควรลบโปรไฟล์เหล่านั้นออกเพื่อหลีกเลี่ยงความสับสนและปัญหาการเชื่อมต่อวิธีการลบโปรไฟล์เฉพาะ:

netsh wlan delete profile name="Nombre de perfil"

หากคุณต้องการรายงาน HTML ที่สมบูรณ์เกี่ยวกับประวัติการเชื่อมต่อ Wi-Fi ข้อผิดพลาด และการกำหนดค่าอะแดปเตอร์ คุณสามารถสร้างรายงานได้โดยใช้:

netsh wlan show wlanreport

คำสั่งนี้จะบอกเส้นทางไปยัง ไฟล์ .htmlที่มีข้อมูลทั้งหมด เมื่อคุณเปิดไฟล์นั้นในเบราว์เซอร์ คุณจะเห็นสรุปรายละเอียดเกี่ยวกับการเชื่อมต่อ เหตุการณ์ และสถิติ Wi-Fi ของอุปกรณ์อย่างละเอียด

ไฟร์วอลล์ Windows และ netsh advfirewall

ส่วนประกอบสำคัญอีกอย่างคือadvfirewallซึ่งช่วยให้คุณจัดการ Windows Firewall ได้อย่างละเอียดมากขึ้น เช่น ดูข้อกำหนด สร้างข้อกำหนดใหม่ อนุญาตพอร์ต บล็อก ICMP รีเซ็ตการตั้งค่า ฯลฯ หากคุณต้องการคู่มือการใช้งาน Windows Defender Firewallที่เป็นประโยชน์ ก็จะเป็นประโยชน์อย่างยิ่ง

เพื่อแสดงรายการกฎไฟร์วอลล์ที่กำหนดค่าไว้ทั้งหมด:

netsh advfirewall firewall show rule name=all

หากคุณสนใจเฉพาะโปรไฟล์ปัจจุบันของผู้ใช้ (ส่วนตัว สาธารณะ โดเมน) พร้อมพารามิเตอร์ที่ใช้งานอยู่:

netsh advfirewall show currentprofile

หากคุณต้องการดูหรือเปิดพอร์ตเฉพาะ คำสั่งที่ใช้กันทั่วไปคือ:

netsh advfirewall firewall add rule name="Open Port 80" dir=in action=allow protocol=TCP localport=80

นี่เป็นการสร้างกฎขาเข้าเพื่ออนุญาตการรับส่งข้อมูล TCP บนพอร์ต 80 อีกตัวอย่างคลาสสิกสำหรับการเปิดพอร์ตเดสก์ท็อประยะไกล (3389) คือ:

netsh advfirewall firewall add rule name="Open Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

หากคุณต้องการลบกฎเฉพาะในภายหลัง คุณสามารถใช้คำสั่งต่อไปนี้:

netsh advfirewall firewall delete rule name="NombreDeLaRegla" protocol=udp localport=500

การตรวจสอบเครือข่ายหลายอย่างกำหนดให้คุณไม่ต้องตอบสนองต่อคำขอ ping ICMP ที่เข้ามา หากต้องการอนุญาตคำขอ ping ICMPv4 ที่เข้ามาคุณสามารถใช้คำสั่งต่อไปนี้:

netsh advfirewall firewall add rule name="All ICMP V4" dir=in action=allow protocol=icmpv4

และเพื่อสกัดกั้นพวกมัน โดยการเปลี่ยนการกระทำ:

netsh advfirewall firewall add rule name="All ICMP V4" dir=in action=block protocol=icmpv4

นอกจากนี้ ยังสามารถปิดใช้งานไฟร์วอลล์สำหรับทุกโปรไฟล์ได้อย่างสมบูรณ์ (โดยต้องระมัดระวังเป็นอย่างยิ่ง):

netsh advfirewall set allprofiles state off

หากคุณต้องการคืนค่าเป็นการตั้งค่าจากโรงงานเนื่องจากมีการเปลี่ยนแปลงมากเกินไป คุณสามารถรีเซ็ตกฎทั้งหมดได้:

netsh advfirewall reset

การซ่อมแซม DNS, พร็อกซี, TCP/IP และเครือข่าย

นอกจากนี้ Netsh ยังมีประโยชน์มากสำหรับการปรับแต่งด้านขั้นสูงของ TCP/IP, Winsock และการกำหนดค่าพร็อกซี โดยเฉพาะอย่างยิ่งเมื่อคุณมีปัญหาที่ไม่สามารถแก้ไขได้ด้วยการรีสตาร์ทอะแดปเตอร์เพียงอย่างเดียว

เพื่อตรวจสอบการตั้งค่าพร็อกซี WinHTTPที่ระบบใช้งาน:

netsh winhttp show proxy

หากคุณต้องการกำหนดค่าพร็อกซีเฉพาะสำหรับการเชื่อมต่อ WinHTTP คุณสามารถทำได้ดังนี้:

netsh winhttp set proxy "servidorproxy.dominio.com:8484" "<local>"

แทนที่ชื่อโฮสต์และพอร์ตด้วยชื่อและพอร์ตของเซิร์ฟเวอร์จริงของคุณ และปรับรายการยกเว้นสำหรับที่อยู่ภายในหรือโดเมนที่ไม่ควรผ่านพร็อกซี

เมื่อเกิดปัญหาที่ระดับสแต็กเครือข่าย คู่มือหลายฉบับแนะนำให้รีเซ็ต Winsock และ TCP/IPคำสั่งทั่วไปสองคำสั่งมีดังนี้:

  • netsh winsock reset catalog – รีเซ็ตแคตตาล็อก Winsock
  • netsh int ip reset reset.log – รีเซ็ตสแต็ก TCP/IP เป็นค่าเริ่มต้นและบันทึกการเข้าสู่ระบบ reset.log.

หลังจากรันคำสั่งเหล่านี้แล้ว ขอแนะนำให้รีสตาร์ทคอมพิวเตอร์เพื่อให้การเปลี่ยนแปลงทั้งหมดในส่วนของระบบเครือข่ายมีผลใช้งานได้

  ไม่ได้รับข้อความเนื้อหาบน Android จากลูกค้า iPhone

หากคุณต้องการตรวจสอบพารามิเตอร์ TCP และ UDP ทั่วโลกที่กำหนดค่าไว้ในเครื่องของคุณ คุณสามารถใช้คำสั่งต่อไปนี้:

  • netsh interface tcp show global
  • netsh interface udp show global

การปรับแต่งประสิทธิภาพหรือการวินิจฉัยขั้นสูงบางอย่างเกี่ยวข้องกับการเปลี่ยนแปลงค่าเหล่านี้ ตัวอย่างทั่วไปคือReceive Side Scaling (RSS)ซึ่งกระจายภาระงานเครือข่ายไปยังคอร์ประมวลผลหลายตัว

วิธีปิดใช้งาน RSS:

netsh interface tcp set global rss=disabled

และเพื่อเปิดใช้งานอีกครั้ง:

netsh interface tcp set global rss=enabled

เมื่อใช้งานมัลติแคสต์ (การประชุมทางวิดีโอ การสตรีมมิ่ง ฯลฯ) คุณสามารถตรวจสอบการสมัครรับมัลติแคสต์ที่ใช้งานอยู่บนอินเทอร์เฟซได้โดยใช้คำสั่งต่อไปนี้:

netsh interface ip show joins

ตั้งค่า IP, DNS และ DHCP โดยใช้คำสั่ง netsh int ip

นอกเหนือจากสิ่งที่เคยเห็นใน IPv4 แล้ว บริบท int ip (interface IP) ยังช่วยให้คุณสามารถเปลี่ยนแปลงที่อยู่ DNS และพฤติกรรม DHCP ได้อย่างรวดเร็ว

ตัวอย่างคลาสสิกของการกำหนดค่าIP แบบคงที่และเกตเวย์บนอินเทอร์เฟซ LANคือ:

netsh int ip set address "local area connection" static 192.168.29.101 255.255.255.0 192.168.29.254 1

netsh interface ip add dns name="Local Area Connection" addr=192.168.0.131

โปรดจำไว้ว่าคุณต้องแทนที่ที่อยู่ IP ด้วยที่อยู่ IP ที่ตรงกับเครือข่ายของคุณ (เซ็กเมนต์ เกตเวย์ DNS ของตนเองหรือภายนอก)

หากคุณใช้งาน DHCP คุณสามารถเปลี่ยนอินเทอร์เฟซที่กำหนดค่าแบบคงที่ให้รับทั้ง IP และ DNS ผ่าน DHCP ได้เช่นกัน ตัวอย่างเช่น ในกรณีของ Wi-Fi:

netsh interface ipv4 set address "Wi-Fi" dhcp

netsh interface ipv4 set dnsservers "Wi-Fi" dhcp

การแสดงค่าการตั้งค่า ชื่อเรียกแทน และวิธีการใช้งานในสคริปต์แบบแบตช์

จุดเด่นอย่างหนึ่งของ netsh คือความสามารถในการบันทึกการตั้งค่าเครือข่ายลงในไฟล์ข้อความซึ่งคุณสามารถใช้เป็นข้อมูลสำรอง หรือใช้เป็นสคริปต์เพื่อคัดลอกการตั้งค่าดังกล่าวไปยังคอมพิวเตอร์เครื่องอื่นได้

ตัวอย่างเช่น คุณสามารถสร้างโฟลเดอร์C:\networksและบันทึกการตั้งค่าปัจจุบันลงในโฟลเดอร์นั้นได้โดยใช้คำสั่ง:

netsh dump >> C:\redes\configuracion.txt

หากคุณต้องการกู้คืนการตั้งค่าดังกล่าวเมื่อใด เพียงเรียกใช้คำสั่งต่อไปนี้:

netsh -f C:\redes\configuracion.txt

นอกจากไฟล์ดัมพ์แบบเต็มแล้ว คุณยังสามารถเตรียมไฟล์แบตช์ (.bat หรือ .cmd)ที่มีคำสั่ง netsh หลายคำสั่งที่ทำงานพร้อมกันได้ ตัวอย่างเช่น สคริปต์ที่ตั้งค่าที่อยู่ IP เซิร์ฟเวอร์ DNS หลักและรอง และเปิดใช้งานไฟร์วอลล์:

@echo off
echo Configurando red...
REM IP, máscara y puerta de enlace
netsh interface ip set address name="Ethernet" static 192.168.1.100 255.255.255.0 192.168.1.1
REM DNS principal
netsh interface ip set dns name="Ethernet" static 8.8.8.8
REM DNS secundario
netsh interface ip add dns name="Ethernet" 8.8.4.4 index=2
REM Activar firewall para todos los perfiles
netsh advfirewall set allprofiles state on
echo Configuración de red aplicada.
pause

บรรทัดที่ขึ้นต้นด้วยREMคือข้อความแสดงความคิดเห็นและจะไม่ถูกประมวลผล หากต้องการเรียกใช้สคริปต์ เพียงดับเบิ้ลคลิกหรือเรียกใช้จาก CMD/PowerShell ด้วยสิทธิ์ผู้ดูแลระบบ

อีกหนึ่งคุณสมบัติที่น่าสนใจคือ ชื่อย่อ (aliases )ซึ่งช่วยให้คุณย่อคำสั่งที่ยาวได้ คุณสามารถดูชื่อย่อทั้งหมดที่กำหนดไว้ได้โดยใช้คำสั่ง:

netsh show alias

การดักจับข้อมูล การวิเคราะห์ และข้อจำกัดของ Netsh

เมื่อปัญหาเครือข่ายเกิดขึ้นอย่างต่อเนื่อง บางครั้งก็ไม่มีทางเลือกอื่นนอกจากต้องดักจับแพ็กเก็ตเพื่อวิเคราะห์อย่างละเอียด Netsh ผสานรวมระบบติดตามที่สร้างไฟล์ ETL สำหรับการวิเคราะห์ในภายหลังด้วยเครื่องมือต่างๆ เช่น Microsoft Message Analyzer หรือ Wireshark (หลังจากแปลงรูปแบบแล้ว)

เพื่อเริ่มการบันทึกข้อมูลการจราจรทั่วไป:

netsh trace start capture=yes tracefile=C:\trace.etl persistent=yes maxsize=4096

และวิธีหยุดยั้งเมื่อคุณมีข้อมูลเพียงพอ:

netsh trace stop

แม้ว่า netsh จะมีประสิทธิภาพอย่างมาก แต่ก็มีข้อเสียและข้อจำกัดในสภาพแวดล้อมสมัยใหม่เช่นกัน:

  • ไวยากรณ์ของมันไม่ค่อยเป็นมิตรกับผู้ใช้เท่าไหร่ หากคุณไม่คุ้นเคยกับการใช้งานคอนโซล มันง่ายที่จะทำผิดพลาด การพิมพ์
  • มันไม่มีอินเทอร์เฟซแบบกราฟิก ทุกอย่างทำด้วยการพิมพ์ ดังนั้น มันไม่ค่อยใช้งานง่ายนักสำหรับผู้ใช้มือใหม่.
  • ส่วนหนึ่งของฟังก์ชันการทำงาน มันไม่ได้ถูกออกแบบมาสำหรับเครือข่ายที่ทันสมัยมากนัก (SDN, การกำหนดค่า IPv6 ขั้นสูงมาก) และ Microsoft กำลังผลักดันให้ใช้ PowerShell และคำสั่ง cmdlet เฉพาะมากขึ้นเรื่อยๆ
  • การดำเนินการส่วนใหญ่จำเป็นต้องใช้สิทธิ์ผู้ดูแลระบบ ดังนั้น นี่ไม่ใช่เครื่องมือสำหรับผู้ใช้ทั่วไป.

ถึงกระนั้น netsh ก็ยังคงเป็นเครื่องมือสารพัดประโยชน์ที่จำเป็นสำหรับทุกคนที่จัดการเครือข่ายบน Windowsด้วยคำสั่งต่างๆ ที่คุณได้เห็น คุณสามารถกำหนดค่า IP และ DNS จัดการ Wi-Fi เปิดหรือปิดพอร์ตในไฟร์วอลล์ กำหนดค่าพร็อกซี ซ่อมแซมสแต็ก TCP/IP และแม้กระทั่งดักจับการรับส่งข้อมูลหรือเขียนสคริปต์การกำหนดค่าได้อย่างรวดเร็วและซ้ำๆ เมื่ออินเทอร์เฟซแบบกราฟิกใช้งานไม่ได้ผลหรือเสียเวลาของคุณ

ตรวจสอบการเชื่อมต่อเครือข่ายด้วย TCPView
บทความที่เกี่ยวข้อง:
ตรวจสอบการเชื่อมต่อเครือข่ายใน Windows ด้วย TCPView, TCPvcon และ Netstat