前言:

将Mac地址随机化并固化到本地可以有效避免同一个网络内,mac地址冲突导致的网络阻塞问题。

以下是有关的方法:

1.使用$RANDOM和md5sum(嵌入式无需移植其他软件的优秀可选方案)

MACFILE=/etc/config/mac
ETHNAME=eth0

if [ ! -f "$MACFILE" ]; then
 # Create HEX code to FILE (使其以88开头)
 `` > $MACFILE
fi

# Set mac
/sbin/ifconfig $ETHNAME down
/sbin/ifconfig $ETHNAME hw ether `cat $MACFILE`
/sbin/ifconfig $ETHNAME up

2.使用openssl工具

MACFILE=/etc/config/mac
ETHNAME=eth0

if [ ! -f "$MACFILE" ]; then
 # Create HEX code to FILE
 `openssl rand -hex  |` > $MACFILE
fi

# Set mac
/sbin/ifconfig $ETHNAME down
/sbin/ifconfig $ETHNAME hw ether `cat $MACFILE`
/sbin/ifconfig $ETHNAME up

3.使用perl命令

MACFILE=/etc/config/mac
ETHNAME=eth0

if [ ! -f "$MACFILE" ]; then
 # Create HEX code to FILE
 `` > $MACFILE
fi

# Set mac
/sbin/ifconfig $ETHNAME down
/sbin/ifconfig $ETHNAME hw ether `cat $MACFILE`
/sbin/ifconfig $ETHNAME up
05-26 01:01