วิธีคืนค่าที่อยู่ MAC ใน Linux


11

ฉันมีการเปลี่ยนแปลงที่อยู่ MAC ของฉันในเครื่อง Linux ifconfigของฉันโดยใช้ ตอนนี้ปัญหาคือฉันไม่ได้บันทึกที่อยู่ MAC ดั้งเดิมของฉัน ฉันต้องการกู้คืนโดยไม่ต้องรีบูตเครื่อง

มีวิธีทำหรือไม่?


เหตุผลใดที่จะไม่รีบูต?
new123456

ใช้งานแอพพลิเคชั่นครึ่งโหล ไม่ต้องการที่จะปิดพวกเขา
narayanpatra

1
เรียกใช้งานได้sudo ifdown interface && sudo ifup interfaceหรือไม่: หรืออาจ:sudo /etc/init.d/networking restart
evan.bovie

@emb: ไม่ทำงาน
narayanpatra

คำตอบ:


8

คุณสามารถรับที่อยู่ MAC ของฮาร์ดแวร์ที่ระบุผู้จำหน่ายโดยใช้ethtool:

ethtool -P eth0

หากต้องการรีเซ็ตที่อยู่ MAC ให้เป็นค่านี้คุณสามารถทำสิ่งต่อไปนี้:

sudo ifconfig eth0 hw ether $(ethtool -P eth0 | awk '{print $3}')


1

[หยั่งราก] สมมติว่า wlan0

... (เพื่อค้นหาไดรเวอร์)
airmon-ng | awk '/wlan0/ {print $4}'... หรือ

airmon-ng | awk '/wlan0/ {print $3}' ... หรือเพียงแค่

airmon-ng .. และดูภายใต้ 'ไดรเวอร์'

... (เพื่อรีสตาร์ทไดรเวอร์)
ifconfig wlan0 down

modprobe -r rt2800usb <= แทนที่ (rt2800usb) ด้วยไดรเวอร์ของคุณ

modprobe rt2800usb <= แทนที่ (rt2800usb) ด้วยไดรเวอร์ของคุณ

ifconfig wlan0 up

นี่คือวิธีที่ฉันทำ ฉันสร้างสคริปต์สำหรับสิ่งนี้และใช้กับโปรแกรมของฉันสองสามตัว หากเป็นเส้นทางที่คุณใช้ให้ใส่ 'time.sleep (3)' {หรือคำสั่ง sleep ใด ๆ } ก่อนที่จะนำอินเทอร์เฟซสำรอง


0

อาจลองลบแล้วติดตั้งโมดูลอีกครั้ง?

sudo rmmod <NICmodule>
sudo insmod <NICmodule> 

หรืออาจจะทิ้งอินเตอร์เฟสและนำมาสำรอง

sudo ifdown <interface> && sudo ifup <interface>

คุณอธิบายรายละเอียดของวิธีแรกได้ไหม คนที่สองไม่ทำงาน
narayanpatra

<NICmodule>จะเป็นสิ่งที่เคยเคอร์เนลโมดูล NIC ใช้ เช่น e1000 คุณสามารถดูสิ่งที่คุณมีในคู่มือนี้
evan.bovie

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

@narayanpatra คุณเปลี่ยนอินเทอร์เฟซด้วยสิ่งที่คุณใช้ในการเข้าถึงอินเทอร์เน็ตหรือไม่? ในกรณีส่วนใหญ่eth0
paradd0x

@thiago: ใช่ฉันทำอย่างนั้น
narayanpatra
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.