有一批ARM板出来全都是同一个MAC地址: 08:00:27:00:01:92
这就导致获取的IP都是一样的,需要让他们启动后获取各自不一样的IP,因此每个板子都需要获得其自己的MAC地址(后三个BYTE区分身份): "08:00:27:XX:XX:XX"
用shell脚本来实现随机的MAC。
Printf random mac by 4 commands :
Target:
demo: /etc/init.d/network.sh, 添加配置的实现:
Github地址: https://github.com/kumataahh
我们为什么要更改MAC地址,也许你不希望你的实际MAC地址(物理地址)暴露在公共网络上。另一种情况是,网络管理员可能在网络设备中阻止了一个特定的MAC地址。
环境
Centos 7.7 Minimal
GNU MAC changer 1.7.0
查询网卡和MAC地址
[root@localhost ~]# ip link show1: lo: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:002: ens33: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:48:4c:9a brd ff:ff:ff:ff:ff:ff
网卡名称是ens33,MAC地址是00:0c:29:48:4c:9a。请记下自己的MAC地址,稍后做完实验恢复到原来的MAC地址。
使用macchanger工具更改MAC地址
Macchanger可以查看、修改MAC地址。
安装macchanger
[root@localhost ~]# git clone https://github.com/alobbs/macchanger
[root@localhost ~]# yum -y install autoconf automake gcc gcc-c++ texinfo
如何使用macchanger
使用下面的 命令 生成一个随机的mac地址为ens33网卡:
[root@localhost ~]# macchanger -r ens33
Current MAC: 00:0c:29:48:4c:9a (VMware, Inc.)
Permanent MAC: 00:0c:29:48:4c:9a (VMware, Inc.)
New MAC: a2:97:a2:55:53:be (unknown)
查看一下ens33的MAC地址是否改变了
[root@localhost ~]# ip link show ens332: ens33: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether a2:97:a2:55:53:be brd ff:ff:ff:ff:ff:ff
可以更改成一个自己指定的mac地址,使用下面的 命令 更改:
[root@localhost ~]# macchanger --mac=XX:XX:XX:XX:XX:XX
如果想要恢复到真实的MAC地址,请使用下面的命令:
[root@localhost ~]# macchanger -p ens33
Current MAC: a2:97:a2:55:53:be (unknown)
Permanent MAC: 00:0c:29:48:4c:9a (VMware, Inc.)
New MAC: 00:0c:29:48:4c:9a (VMware, Inc.)
总结
我们为什么要更改MAC地址,也许你不希望你的实际MAC地址(物理地址)暴露在公共网络上。另一种情况是,网络管理员可能在网络设备中阻止了一个特定的MAC地址。
①命令ifconfig -a 其中 HWaddr字段就是MAC地址
②或者使用grep过滤只显示MAC地址:
ifconfig -a |grep -i hw#只输出当前电脑上所有网卡的mac地址(不显示IP等信息)
#eth0 Link encap:Ethernet HWaddr ****** ----这是有线网卡的MAC地址
#wlan0 Link encap:Ethernet HWaddr ****** ----这是无线网卡的MAC地址
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)