วิธีเชื่อมต่อ Wi-Fi จาก Linux Terminal โดยใช้คำสั่ง Nmcli
มีเครื่องมือบรรทัดคำสั่งหลายอย่างสำหรับจัดการอินเทอร์เฟซเครือข่ายไร้สายในระบบ Linux สิ่งเหล่านี้สามารถใช้เพื่อดูสถานะอินเทอร์เฟซเครือข่ายไร้สาย (ไม่ว่าจะเป็น ขึ้น หรือ ลง หรือหากเชื่อมต่อกับเครือข่ายใดๆ) เช่น iw, iwlist, ip, ifconfig และอื่น ๆ
และบางส่วนใช้เพื่อเชื่อมต่อกับเครือข่ายไร้สาย ซึ่งรวมถึง: nmcli เป็นเครื่องมือบรรทัดคำสั่งที่ใช้ในการสร้าง แสดง แก้ไข ลบ เปิดใช้งาน และปิดใช้งานการเชื่อมต่อเครือข่าย ตลอดจนควบคุมและแสดงสถานะอุปกรณ์เครือข่าย
ขั้นแรกให้เริ่มต้นด้วยการตรวจสอบชื่ออุปกรณ์เครือข่ายของคุณโดยใช้คำสั่งต่อไปนี้ จากเอาต์พุตของคำสั่งนี้ ชื่ออุปกรณ์/อินเทอร์เฟซคือ wlp1s0 ดังที่แสดง
$ iw dev
phy#0
Interface wlp1s0
ifindex 3
wdev 0x1
addr 38:b1:db:7c:78:c7
type managed
จากนั้นตรวจสอบสถานะการเชื่อมต่ออุปกรณ์ Wi-Fi โดยใช้คำสั่งต่อไปนี้
iw wlp2s0 link
Not connected.
จากเอาต์พุตด้านบน อุปกรณ์ไม่ได้เชื่อมต่อกับเครือข่ายใดๆ ให้รันคำสั่งต่อไปนี้เพื่อสแกนเครือข่าย Wi-Fi ที่พร้อมใช้งาน
sudo iw wlp2s0 scan
command failed: Network is down (-100)
เมื่อพิจารณาถึงผลลัพธ์ของคำสั่งข้างต้น อุปกรณ์เครือข่าย/อินเทอร์เฟซ ลง คุณสามารถเปิด เปิด (ขึ้น) ด้วยคำสั่ง ip เป็น แสดง
sudo ip link set wlp1s0 up
หากคุณได้รับข้อผิดพลาดต่อไปนี้ แสดงว่า Wifi ของคุณถูกบล็อกอย่างหนักบนแล็ปท็อปหรือคอมพิวเตอร์
RTNETLINK answers: Operation not possible due to RF-kill
หากต้องการลบหรือเลิกบล็อกคุณต้องเรียกใช้คำสั่งต่อไปนี้เพื่อแก้ไขข้อผิดพลาด
echo "blacklist hp_wmi" | sudo tee /etc/modprobe.d/hp.conf
sudo rfkill unblock all
จากนั้นลอง เปิด อุปกรณ์เครือข่ายอีกครั้ง และครั้งนี้ควรจะได้ผล
sudo ip link set wlp1s0 up
หากคุณทราบ ESSID ของเครือข่าย Wi-Fi ที่คุณต้องการเชื่อมต่อ ให้ย้ายไปยังขั้นตอนถัดไป หรือออกคำสั่งด้านล่างเพื่อสแกนเครือข่าย Wi-Fi ที่ใช้งานได้อีกครั้ง
sudo iw wlp1s0 scan
และสุดท้าย เชื่อมต่อกับเครือข่าย Wi-Fi โดยใช้คำสั่งต่อไปนี้ โดยที่ Hackernet (SSID เครือข่าย Wi-Fi) และ localhost22 (รหัสผ่าน/คีย์ที่แชร์ล่วงหน้า)
nmcli dev wifi connect Hackernet password localhost22
เมื่อเชื่อมต่อแล้ว ให้ตรวจสอบการเชื่อมต่อของคุณโดยส่ง Ping ไปที่เครื่องภายนอก และวิเคราะห์ผลลัพธ์ของ Ping ดังที่แสดง
$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=61.7 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=48 time=61.5 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=48 time=61.6 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=48 time=61.3 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=48 time=63.9 ms
^C
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 61.338/62.047/63.928/0.950 ms
แค่นั้นแหละ! ฉันหวังว่าบทความนี้จะช่วยคุณในการตั้งค่าเครือข่าย Wi-Fi จากบรรทัดคำสั่ง Linux เช่นเคย หากคุณพบว่าบทความนี้มีประโยชน์ แบ่งปันความคิดของคุณในส่วนความคิดเห็นด้านล่าง