我有几台计算机,每台计算机都有相同的以太网 MAC 地址。我想在检测到网卡后立即更改每台计算机上的以太网 MAC 地址,这样网络中就不会出现任何冲突。我的系统使用带有 systemd 的非标准 linux。是否可以使用 systemd 和标准 Linux 命令配置 MAC 地址?
答案1
HWADDR=AA:BB:CC:DD:EE:FF
使用机器配置文件中的配置行/etc/sysconfig/network-scripts/ifcfg-eth0
,如下所示:
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
HWADDR=AA:BB:CC:DD:EE:FF
IPADDR=10.2.3.4
NETMASK=255.255.255.0
GATEWAY=10.2.3.254
DNS1=8.8.8.8
DNS2=4.4.4.4
USERCTL=no
答案2
我正在使用 Parrot Home(基于 Debian 的发行版),在检查了一些建议后,我编写了一个脚本,在 eth0 和 wlan0 的每次启动中执行此操作。
登录 root 并安装 macchanger
apt-get install macchanger -y
在/etc/cron.daily/中创建一个文件:
vim /etc/cron.daily/macchanger.sh
检查网络适配器的名称
ip a
(在大多数情况下,它是 eth0 和 wlan0,分别代表以太网和 Wi-Fi),并将以下代码放入文件中:#!/bin/bash sudo ifconfig eth0 down; sudo ifconfig wlan0 down; sudo macchanger -r eth0; sudo macchanger -r wlan0; sudo ifconfig eth0 up; sudo ifconfig wlan0 up
按 ESC 键退出 vim,输入 wq 并按 ENTER 键。
使文件可执行
chmod +x /etc/cron.daily/macchanger.sh
创建一个 crontab 来执行脚本
crontab -e
并使用以下命令创建新的最后一行:@reboot sh /etc/cron.daily/macchanger.sh
这五个步骤在 Linux 系统启动时创建了一个自动 mac 更换器!