介紹如何暫時性與永久性更改樹莓派的網路卡卡號(mac address)。
暫時性更改網路卡卡號
若只是需要暫時性更改網路卡卡號,可以使用 ip
或 ifconfig
指令,使用這種方式設定的網路卡卡號在重新開機之後,就會自動恢復成原本的網路卡卡號。
使用 ip
指令
Linux 的 ip
指令可以用來暫時更改網路卡的卡號,操作的步驟如下:
# 停用 eth0 網路卡 sudo ip link set eth0 down # 更改網路卡卡號(Mac Address) sudo ip link set eth0 address 00:11:22:33:44:55 # 啟用 eth0 網路卡 sudo ip link set eth0 up
更改網路卡卡號之後,可再用 ip
指令查詢目前的網路卡資訊,確認新的網路卡卡號:
# 查詢網路卡資訊
ip link
使用 ifconfig
指令
Linux 的 ifconfig
指令也可以用來暫時更改網路卡的卡號,操作的步驟如下:
# 停用 eth0 網路卡 sudo ifconfig eth0 down # 更改網路卡卡號(Mac Address) sudo ifconfig eth0 hw ether 00:11:22:33:44:55 # 啟用 eth0 網路卡 sudo ifconfig eth0 up
更改網路卡卡號之後,可再用 ifconfig
指令查詢目前的網路卡資訊,確認新的網路卡卡號:
# 查詢網路卡資訊
ifconfig
永久性更改網路卡卡號
如果需要永久更改網路卡卡號,讓系統重新開機之後依然保留設定,可以使用 macchanger
工具或是透過修改 /boot/cmdline.txt
設定檔的方式來處理。
使用 macchanger
工具
macchanger
工具可以讓網路卡啟用時自動產生隨機的網路卡卡號,也就是說每當系統重新開機之後,就會有不同的網路卡卡號。
macchanger
工具可以透過 apt 安裝:
# 安裝 macchanger 工具
sudo apt-get install macchanger
在安裝 macchanger
工具時,可以設定是否在網路卡啟用時讓 macchanger
自動產生網路卡卡號,若啟用自動產生網路卡卡號的功能,每次重新開機後,都會自動產生不同的網路卡卡號,這個設定值可以透過 /etc/default/macchanger
中的 ENABLE_ON_POST_UP_DOWN
參數設定來調整,而值計執行的指令稿則是位於 /etc/network/if-pre-up.d/macchanger
。
安裝好 macchanger
工具之後,我們可以透過以下指令產生並設定隨機的網路卡卡號(透過手動設定是暫時性的,重新開機後就會復原):
# 停用 eth0 網路卡 sudo ip link set eth0 down # 設定隨機的網路卡卡號(Mac Address) sudo macchanger -r eth0 # 啟用 eth0 網路卡 sudo ip link set eth0 up
更改網路卡卡號之後,可再用 ip
指令查詢目前的網路卡資訊,確認新的網路卡卡號:
# 查詢網路卡資訊
ip link
而除了自動產生隨機的卡號之外,macchanger
也可以直接指定網路卡卡號:
# 停用 eth0 網路卡 sudo ip link set eth0 down # 設定網路卡卡號(Mac Address) sudo macchanger -m 00:11:22:33:44:55 eth0 # 啟用 eth0 網路卡 sudo ip link set eth0 up
修改 /boot/cmdline.txt
設定檔
在樹莓派中我們也可以在 /boot/cmdline.txt
這個開機設定檔中加入以下參數,在開機的時候就指定網路卡卡號,不過這種方式只適用於樹莓派內建的乙太網路卡:
smsc95xx.macaddr=00:11:22:33:44:55
設定好之後,重新啟動系統,讓新的設定生效:
# 重新啟動系統
reboot
這樣即可永久更改網路卡卡號了。