臨時更改MAC地址:
ifconfig eth0 down
ifconfig eth0 hw ether 12:34:56:78:90
ifconfig eht0 up 
長期更改MAC地址:
如果你是改的HWADDR=xxxxxxxxxx,那就肯能報錯。
詳細(xì)原因可看ifup腳本! 
里面有一段讀取HWADDR并與get_hwaddr得到的真實MAC比較,如果不一致,會采用get_hwaddr得到的網(wǎng)卡真實MAC,并且報告一個信息。 
原腳本摘錄(自RHEL4的ifup): 
if [ -n "${HWADDR}" ]; then 
     FOUNDMACADDR=`get_hwaddr ${REALDEVICE}`
     if [ "${FOUNDMACADDR}" != "${HWADDR}" ]; then 
         curdev=`ip -o link | awk -F ':' -vIGNORECASE=1 "/$HWADDR/ { print \\$2 }"`
         [ -n "$curdev" ] && rename_device "${REALDEVICE}" "${HWADDR}" "${curdev}" || {
             echo $"Device ${DEVICE} has different MAC address than expected, ignoring."
             exit 1 
         }        
     fi
fi 
而在這段之后還有一段 
if [ -n "${MACADDR}" ]; then
    ip link set dev ${DEVICE} address ${MACADDR}
fi 
在RHEL4中測試通過 
編輯/etc/sysconfig/network-scripts/ifcfg-eth0 (或其他接口) 
RHEL4本來就有一句注釋HWADDR=xxxxxxxxxx 那個沒用注釋掉。
顯然由于這段在后面,就會晚執(zhí)行! 
為了不讓前面那段執(zhí)行報錯,就可以刪掉或注釋掉ifcfg-eth0里的HWADDR=xxxxxxxxxxxx那句話。然后再加上一句MACADDR=12:34:56:78:90
OK!