วิธีเปลี่ยนที่อยู่ MAC ของคุณอย่างถาวรบน Linux
เผยแพร่แล้ว: 2023-04-02ทุกอินเทอร์เฟซเครือข่ายมีที่อยู่ MAC เฉพาะซึ่งกำหนดโดยผู้ผลิต เป็นวิธีที่การเชื่อมต่อเครือข่ายระบุจุดสิ้นสุดของการเชื่อมต่อ บน Linux คุณสามารถเปลี่ยนที่อยู่ MAC อย่างถาวรได้หากต้องการ
ที่อยู่ MAC คืออะไร?
ค้นหาที่อยู่ MAC ของคุณ
ใช้ macchanger เพื่อเปลี่ยนที่อยู่ MAC ของ Linux
กำลังติดตั้งแมคเชนเจอร์
การใช้ macchanger เพื่อเปลี่ยนที่อยู่ MAC ชั่วคราว
วิธีเปลี่ยนที่อยู่ MAC อย่างถาวร
การเปลี่ยนที่อยู่ MAC อย่างถาวรด้วย GNOME
ระวัง!
ที่อยู่ MAC คืออะไร?
ที่อยู่ MAC เป็นรหัสเฉพาะที่ใช้ระบุโดยเครือข่ายเพื่อระบุอุปกรณ์เป็นจุดสิ้นสุดการเชื่อมต่อ มันตอบคำถามที่สำคัญของ "ใครเป็นใคร" ในอินเทอร์เฟซเครือข่าย
อุปกรณ์เครือข่ายทุกชิ้นมีอินเทอร์เฟซเครือข่ายอย่างน้อยหนึ่งอินเทอร์เฟซในตัว คอมพิวเตอร์เดสก์ท็อปหรือเซิร์ฟเวอร์อาจมีการ์ดเครือข่ายหลายตัวติดตั้งอยู่ในนั้น แล็ปท็อปหลายเครื่องมาพร้อมกับซ็อกเก็ตเครือข่าย CAT5 และการ์ด Wi-Fi ทำให้คุณมีอินเทอร์เฟซเครือข่ายสองอินเทอร์เฟซทันทีที่แกะกล่อง
อินเทอร์เฟซเครือข่ายทั้งหมดมีตัวระบุที่ไม่ซ้ำกันและไม่ซ้ำกัน โดยไม่คำนึงถึงโปรโตคอลเครือข่ายที่ใช้ในการสื่อสารกับอุปกรณ์นั้น ที่ระดับต่ำสุด การเชื่อมต่อจะถูกระบุโดยการควบคุมการเข้าถึงสื่อหรือที่อยู่ MAC นั่นเป็นเหตุผลที่พวกเขาต้องไม่ซ้ำกัน การทำให้อินเทอร์เฟซเครือข่ายของคุณใช้ที่อยู่ MAC อื่นเรียกว่า การปลอมแปลง
ที่อยู่ MAC ประกอบด้วยเลขฐานสิบหกหกตัว พวกเขาเขียนด้วยเครื่องหมายทวิภาค “:” หรือยัติภังค์ “-” ระหว่างแต่ละตัวเลขหกตัว นี่คือที่อยู่ MAC จากคอมพิวเตอร์ทดสอบเครื่องหนึ่งของเรา
b0:c0:90:58:b0:72
บ่อยครั้งที่ตัวเลขสามตัวแรกเป็นตัวระบุเฉพาะขององค์กร ซึ่งแสดงถึงผู้ผลิตฮาร์ดแวร์ คุณสามารถถอดรหัส OUI ได้โดยใช้หน้าการค้นหาผู้ผลิต Wireshark โปรดทราบว่านี่อาจเป็นผู้ผลิตเมนบอร์ด การ์ดเครือข่าย หรือการ์ด Wi-Fi ของคอมพิวเตอร์ของคุณ ผู้ผลิตจะซื้อส่วนประกอบต่างๆ ของคอมพิวเตอร์และนำมาประกอบเป็นสินค้าสำเร็จรูป ดังนั้นอย่าแปลกใจหากแตกต่างจากผู้ผลิตคอมพิวเตอร์ของคุณ
เนื่องจากที่อยู่ MAC มีอยู่ในตัว คุณจึงไม่สามารถเปลี่ยนแปลงได้ สิ่งที่คุณทำได้คือกำหนดค่าระบบ Linux ของคุณเพื่อให้ ระบบ มีที่อยู่ MAC ที่แตกต่างกัน เท่าที่เกี่ยวข้องกับอุปกรณ์อื่น ๆ ในเครือข่าย ที่อยู่ MAC ของคอมพิวเตอร์ของคุณคืออุปกรณ์ที่ออกอากาศ ดังนั้นผลลัพธ์ที่ได้จะเหมือนกัน
ค้นหาที่อยู่ MAC ของคุณ
หากต้องการทราบที่อยู่ MAC ปัจจุบันของคุณ คุณสามารถใช้คำสั่ง ip
กับวัตถุ link
ได้ นี่จะแสดงรายการอินเทอร์เฟซเครือข่ายของคุณ ไม่ว่าจะใช้งานอยู่หรือไม่ได้เชื่อมต่อเครือข่ายก็ตาม
ลิงค์ไอพี
คอมพิวเตอร์เครื่องนี้เป็นแล็ปท็อปที่มีการเชื่อมต่อ Wi-Fi, wlan0
และการเชื่อมต่ออีเทอร์เน็ตแบบมีสาย enp3s0
การเชื่อมต่อแบบใช้สายไม่ได้เสียบอยู่ ดังนั้นจึงไม่ได้ใช้งาน แล็ปท็อปยังมีการเชื่อมต่อย้อนกลับเริ่มต้น แท้จริง lo
ค่า
ที่เกี่ยวข้อง: วิธีใช้คำสั่ง ip บน Linux
ใช้ macchanger เพื่อเปลี่ยนที่อยู่ MAC ของ Linux
ยูทิลิตี้ macchanger
ช่วยให้คุณเปลี่ยนที่อยู่ MAC ของอินเทอร์เฟซเครือข่ายด้วยตัวเลือกที่ยืดหยุ่น คุณสามารถตั้งค่าที่อยู่ MAC เฉพาะหรือใช้ที่อยู่ MAC แบบสุ่ม คุณยังสามารถรับที่อยู่ MAC ใหม่ที่ใช้ OUI สามไบต์เดียวกันกับฮาร์ดแวร์ของคุณ เพื่อให้ผู้ผลิตอินเทอร์เฟซเครือข่ายยังคงเหมือนเดิม
กำลังติดตั้งแมคเชนเจอร์
ในการติดตั้ง macchanger
บน Ubuntu ให้ใช้คำสั่งนี้:
sudo apt ติดตั้ง macchanger
ในการติดตั้ง macchanger
บน Fedora คุณต้องพิมพ์:
sudo dnf ติดตั้ง macchanger
บน Manjaro คำสั่งคือ:
sudo pacman -S macchanger
คุณอาจเห็นหน้าจอถามว่าคุณต้องการสร้างที่อยู่ MAC ใหม่ทุกครั้งที่เชื่อมต่อเครือข่ายออนไลน์หรือไม่ ทั้งนี้ขึ้นอยู่กับเวอร์ชันของ macchanger
ที่อยู่ในคลังการกระจายของคุณ นั่นคือ เมื่อคุณเชื่อมต่อสาย Ethernet หรือเปิดใช้งาน Wi-Fi
ใช้แป้นลูกศรเพื่อเลื่อนไฮไลต์ไปยังตัวเลือกที่คุณต้องการใช้ แล้วกด “Enter”
วิธีนี้เป็นวิธีที่สะดวก แต่เราจะเลือกใช้ “ไม่” เราต้องการควบคุมที่อยู่ MAC ที่เราใช้งานอยู่ นอกจากนี้ คุณอาจไม่ต้องการเปลี่ยนที่อยู่ MAC ในทุกอินเทอร์เฟซเครือข่ายที่คอมพิวเตอร์ของคุณมี ตัวอย่างเช่น คุณอาจต้องการเปลี่ยนบนการ์ด Wi-Fi ของคุณเท่านั้น
การใช้ macchanger เพื่อเปลี่ยนที่อยู่ MAC ชั่วคราว
คุณไม่สามารถรีเซ็ตที่อยู่ MAC บนอินเทอร์เฟซเครือข่ายที่ใช้งานอยู่ เราสามารถเปลี่ยนที่อยู่ MAC ของการเชื่อมต่ออีเธอร์เน็ตได้เนื่องจากไม่ได้เชื่อมต่อ ดังนั้นจึงไม่ได้ใช้งาน
ตัวเลือก -r
(สุ่ม) สร้างที่อยู่ MAC แบบสุ่มอย่างสมบูรณ์ เราจำเป็นต้องส่งชื่อของอินเทอร์เฟซเครือข่ายที่เราต้องการตั้งค่าที่อยู่ MAC
sudo macchanger -r enp3s0
ที่อยู่ MAC ที่ใช้งานอยู่นั้นเหมือนกับที่อยู่ MAC ของฮาร์ดแวร์พื้นฐาน หรือที่อยู่ MAC ถาวร ที่อยู่ MAC ใหม่จะแสดงที่ด้านล่าง
เราสามารถเปลี่ยนที่อยู่ MAC ของการ์ด Wi-Fi ได้เช่นกัน หากเรานำอแด็ปเตอร์ Wi-Fi ลงมา เปลี่ยนที่อยู่ MAC แล้วเปิดใช้งานอแด็ปเตอร์ Wi-Fi
sudo networkctl ลง wlan0
sudo macchanger -r wlan0
sudo networkctl ขึ้น wlan0
หากคุณไม่ต้องการที่อยู่ MAC แบบสุ่ม คุณสามารถใช้ -m
(ตัวเลือกที่อยู่ MAC) และระบุที่อยู่ MAC ในรูปแบบโคลอน “:” เป็นเลขฐานสิบหกตัวพิมพ์เล็ก
sudo macchanger -m ae:f9:9b:31:40:c0 enp3s0
ที่เกี่ยวข้อง: วิธีตั้งค่าที่อยู่ IP แบบคงที่ใน Ubuntu
วิธีเปลี่ยนที่อยู่ MAC อย่างถาวร
ทั้งหมดนี้เป็นสิ่งที่ดีและเรียบง่าย แต่ไม่สามารถรีบูตได้
อย่างไรก็ตาม เราสามารถทำได้โดยใช้ไฟล์ systemd
unit เราจะให้ macchanger
มอบที่อยู่ MAC ใหม่สำหรับแล็ปท็อปของเราสำหรับอินเทอร์เฟซ Ethernet และ Wi-Fi ทุกครั้งที่บูท
เราจะใช้ตัวเลือก -e
(สิ้นสุด) เพื่อให้ที่อยู่ MAC เปลี่ยนไป แต่ OUI สามไบต์ยังคงเหมือนเดิม
ซึ่งหมายความว่าที่อยู่ MAC ปลอมของเราจะดูเหมือนเป็นของฮาร์ดแวร์ที่ผลิตโดยบริษัทเดียวกับที่ผลิตฮาร์ดแวร์อีเธอร์เน็ตและ Wi-Fi จริงของเรา วิธีนี้จะหลีกเลี่ยงปัญหากับเราเตอร์ ไฟร์วอลล์ หรือสวิตช์ที่ปฏิเสธแพ็กเก็ตที่ไม่ได้มาจากฮาร์ดแวร์กับผู้ผลิตที่รู้จัก
เรากำลังจะสร้างสองบริการ จะมีอันหนึ่งสำหรับการเชื่อมต่ออีเธอร์เน็ตและอีกอันสำหรับการเชื่อมต่อ Wi-Fi ไฟล์หน่วยเดียวจะทำหน้าที่เป็นเทมเพลตสำหรับแต่ละบริการ
ในการสร้างไฟล์หน่วย เราจำเป็นต้องใช้ sudo
และแก้ไขไฟล์ด้วยชื่อฐานที่เราต้องการให้บริการของเรามี เครื่องหมายที่เครื่องหมาย “@” ในชื่อไฟล์จะถูกแทนที่ด้วยชื่อของการเชื่อมต่อเครือข่ายเมื่อเปิดใช้บริการดังที่เราจะเห็น
เราเรียกไฟล์หน่วยของเราว่า “[email protected]” เพราะมันปลอมที่อยู่ MAC
sudo gedit /etc/systemd/system/[email protected]
คัดลอกข้อความนี้ลงในไฟล์หน่วย บันทึกไฟล์ และปิดตัวแก้ไข
[หน่วย] คำอธิบาย=การปลอมแปลงที่อยู่ MAC บน %I ต้องการ = เครือข่าย pre.target ก่อน=เครือข่าย-pre.target BindsTo=sys-subsystem-net-devices-%i.device After=sys-subsystem-net-devices-%i.device [บริการ] ExecStart=/usr/bin/macchanger -e %I Type=วันช็อต [ติดตั้ง] WantedBy=multi-user.target
เราจำเป็นต้องสร้างบริการสำหรับแต่ละการเชื่อมต่อของเรา เราทำได้โดยเพิ่มชื่ออินเทอร์เฟซเครือข่ายด้านหลังเครื่องหมาย at “@” ในชื่อหน่วย เราจะทำการเชื่อมต่ออีเธอร์เน็ตก่อน:
sudo systemctl เปิดใช้งาน [email protected]
และเราจะทำเช่นเดียวกันกับการเชื่อมต่อ Wi-Fi ของเรา
sudo systemctl เปิดใช้งาน [email protected]
หลังจากรีบูทแล็ปท็อป เราสามารถใช้ macchanger
เพื่อดูว่าที่อยู่ MAC ปัจจุบันของเราคืออะไร โปรดทราบว่าเราไม่จำเป็นต้องใช้ sudo
เพราะเราใช้ macchanger
เพื่อรายงานการตั้งค่าที่อยู่ MAC เท่านั้น และไม่ต้องเปลี่ยนแปลง
แมคเชนเจอร์ enp3s0
แมคเชนเจอร์ wlan0
ข้อมูลนี้แสดงให้เราเห็นที่อยู่ MAC ที่ใช้งานอยู่ ปลอมแปลงบนอินเทอร์เฟซเครือข่ายทั้งสองของเรา และที่อยู่ MAC ดั้งเดิม
เนื่องจากเราใช้ตัวเลือก -e
(ลงท้ายด้วย) ในไฟล์หน่วยของเรา สามไบต์แรกของที่อยู่ปลอมจึงเหมือนกับสามไบต์แรกของที่อยู่ MAC ดั้งเดิม
การเปลี่ยนที่อยู่ MAC อย่างถาวรด้วย GNOME
สภาพแวดล้อมเดสก์ท็อปส่วนใหญ่อนุญาตให้คุณตั้งค่าที่อยู่ MAC ใหม่ ใน GNOME คุณสามารถทำได้โดยเปิด "การตั้งค่า" และเลือก "Wi-Fi" หรือ "เครือข่าย" จากแถบด้านข้าง
คลิกไอคอนรูปล้อฟันเฟืองถัดจากการเชื่อมต่อที่คุณต้องการตั้งค่าที่อยู่ MAC และเลือกแท็บ "ข้อมูลประจำตัว"
คุณสามารถป้อนที่อยู่ MAC ใหม่ในช่อง "ที่อยู่ MAC" หรือเลือกที่อยู่ MAC ของแท้จากเมนูแบบเลื่อนลง
เมนูแบบเลื่อนลง "ที่อยู่โคลน" ให้คุณเลือกจาก:
- รักษา : เก็บที่อยู่ MAC ในเวลาบูต อย่าเปลี่ยนจากที่อยู่ MAC ที่ตั้งไว้
- ถาวร : ใช้ที่อยู่ MAC ของฮาร์ดแวร์ของแท้
- สุ่ม : สร้างที่อยู่ MAC แบบสุ่ม
- Stable : สร้างที่อยู่ MAC ที่แฮชและเสถียร ทุกครั้งที่เปิดใช้งานการเชื่อมต่อ จะมีการใช้ที่อยู่ MAC ปลอมเดียวกัน สิ่งนี้มีประโยชน์ในกรณีที่คุณต้องการซ่อนที่อยู่ MAC ของฮาร์ดแวร์ แต่คุณต้องได้รับที่อยู่ IP เดียวกันจากเราเตอร์ DHCP
การเปลี่ยนแปลงของคุณจะเกิดขึ้นเมื่อคุณรีบูต หรือปิดและเปิดการเชื่อมต่ออีกครั้ง
ระวัง!
การเปลี่ยนที่อยู่ MAC ของคุณไม่ผิดกฎหมาย ตราบใดที่คุณไม่ได้ทำเพื่อแอบอ้างเป็นอุปกรณ์เครือข่ายของผู้อื่น เขตอำนาจศาลของคุณอาจมีกฎหมายที่ใช้จัดการกับการรับส่งข้อมูลเครือข่ายอย่างผิดกฎหมาย ตัวอย่างเช่น สหราชอาณาจักรมีพระราชบัญญัติการใช้คอมพิวเตอร์ในทางที่ผิด และสหรัฐอเมริกามีพระราชบัญญัติการฉ้อฉลและการใช้คอมพิวเตอร์ในทางที่ผิด
ไม่ว่าอย่างไรก็ตามอย่าเปิดเผยตัวตน แต่อย่าแสร้งทำเป็นคนอื่น
ที่เกี่ยวข้อง: วิธีใช้ bmon เพื่อตรวจสอบแบนด์วิดท์เครือข่ายบน Linux