如何在Linux中更改MAC地址
在向你展示如何在 Linux 中更改 MAC 地址之前,讓我們首先討論為什么要更改它。
可能有幾個(gè)原因。也許你不希望在公共網(wǎng)絡(luò)上公開你的實(shí)際 MAC 地址(也稱為物理地址)?還有可能是網(wǎng)絡(luò)管理員可能已在路由器或防火墻中阻止了特定的 MAC 地址。
一個(gè)實(shí)用的“好處”是某些公共網(wǎng)絡(luò)(例如機(jī)場(chǎng) WiFi)允許在有限的時(shí)間內(nèi)免費(fèi)上網(wǎng)。如果你還想繼續(xù)使用,那么偽造 Mac 地址可能會(huì)欺騙網(wǎng)絡(luò),讓它認(rèn)為是一臺(tái)新設(shè)備。這也是一個(gè)有名的原因。
我將展示更改 MAC 地址(也稱為欺騙/偽造 MAC 地址)的步驟。
在 Linux 中更改 MAC 地址
讓我們一步步來(lái):
查找你的 MAC 地址和網(wǎng)絡(luò)接口
讓我們找出一些關(guān)于 Linux 中網(wǎng)卡的細(xì)節(jié)。使用此命令獲取網(wǎng)絡(luò)接口詳細(xì)信息:
ip link show
在輸出中,你將看到一些詳細(xì)信息以及 MAC 地址:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 94:c6:f8:a7:d7:30 brd ff:ff:ff:ff:ff:ff
3: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
link/ether 38:42:f8:8b:a7:68 brd ff:ff:ff:ff:ff:ff
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default
link/ether 42:02:07:8f:a7:38 brd ff:ff:ff:ff:ff:ff
如你所見,在這里,我的網(wǎng)絡(luò)接口稱為 enp0s31f6
,MAC 地址為 38:42:f8:8b:a7:68
。
你可能需要在安全的地方記錄下來(lái),以便稍后還原到該原始 MAC 地址。
現(xiàn)在你可以繼續(xù)更改 MAC 地址。
注意!
如果在當(dāng)前使用的網(wǎng)絡(luò)接口上執(zhí)行此操作,那么可能會(huì)中斷你的網(wǎng)絡(luò)連接。因此,請(qǐng)?jiān)谄渌W(wǎng)卡上嘗試使用此方法,或者準(zhǔn)備重啟網(wǎng)絡(luò)。
方法 1:使用 Macchanger 更改 MAC 地址
Macchanger 是查看、修改和操作網(wǎng)卡 MAC 地址的簡(jiǎn)單程序。它幾乎在所有 GNU/Linux 操作系統(tǒng)中都可用,你可以使用發(fā)行版的包安裝程序進(jìn)行安裝。
在 Arch Linux 或 Manjaro 上:
sudo pacman -S macchanger
在 Fedora、CentOS 和 RHEL 上:
sudo dnf install macchanger
在 Debian、Ubuntu、Linux Mint、Kali Linux 上:
sudo apt install macchanger
重要!系統(tǒng)會(huì)要求你選擇是否應(yīng)將 macchanger
設(shè)置為在每次啟動(dòng)或關(guān)閉網(wǎng)絡(luò)設(shè)備時(shí)自動(dòng)運(yùn)行。每當(dāng)你接到網(wǎng)線或重啟 WiFi 時(shí),它都會(huì)提供一個(gè)新的 MAC 地址。
Not a good idea to run it automatically
我建議不要自動(dòng)運(yùn)行它,除非你確實(shí)需要每次更改 MAC 地址。因此,選擇“No”(按 Tab
鍵),然后按回車鍵繼續(xù)。
如何使用 Macchanger 更改 MAC 地址
你還記得網(wǎng)絡(luò)接口名稱嗎?你在前面的步驟中獲得了它。
現(xiàn)在,要將隨機(jī) MAC 地址分配給該網(wǎng)卡,請(qǐng)使用:
sudo macchanger -r enp0s31f6
更改 MAC 后,使用以下命令進(jìn)行驗(yàn)證:
ip addr
現(xiàn)在你將看到已經(jīng)偽造 MAC。
要將 MAC 地址更改為特定值,請(qǐng)使用以下命令指定自定義 MAC 地址:
macchanger --mac=XX:XX:XX:XX:XX:XX
其中 XX:XX:XX:XX:XX:XX 是你要更改的新 MAC。
最后,要將 MAC 地址恢復(fù)為其原始硬件值,請(qǐng)運(yùn)行以下命令:
macchanger -p enp0s31f6
但是,你不必如此。重啟系統(tǒng)后,更改將自動(dòng)丟失,并且實(shí)際的 MAC 地址將再次恢復(fù)。
你可以隨時(shí)查看手冊(cè)頁(yè)以獲取更多詳細(xì)信息。
方法 2:使用 iproute2 更改 Mac 地址(中級(jí)知識(shí))
我建議你使用 macchanger,但如果你不想使用它,那么可以使用另一種方法在 Linux 中更改 MAC 地址。
首先,使用以下命令關(guān)閉網(wǎng)卡:
sudo ip link set dev enp0s31f6 down
接下來(lái),使用以下命令設(shè)置新的 MAC:
sudo ip link set dev enp0s31f6 address XX:XX:XX:XX:XX:XX
最后,使用以下命令重新打開網(wǎng)絡(luò):
sudo ip link set dev enp0s31f6 up
現(xiàn)在,驗(yàn)證新的 MAC 地址:
ip link show enp0s31f6
就是這些了。你已經(jīng)成功地在 Linux 中修改了 MAC 地址。