centos7以后网卡命名采用一致性网络设备命名(Consistent Network Device Naming),不再是eth0,eth1这种简单的命名。在某些场景下简单的网卡名称能让事情更简单,下面是几种网卡改名的方案。
cat >> /etc/udev/rules.d/70-persistent-net.rules <<EOF
ACTION=="add", SUBSYSTEM="net", DRIVERS=="?*", ATTR{address}=="11:22:33:44:55:66", NAME="veth0"
EOF
systemd启动过程中会根据udev规则为设备命名。
cat > /etc/sysconfig/network-scripts/ifcfg-veth0 <<EOF
TYPE=Ethernet
BOOTPROTO=none
NAME=veth0
DEVICE=veth0
HWADDR=11:22:33:44:55:66
ONBOOT=yes
EOF
systemd启动过程中会执行/usr/lib/udev/rules.d/60-net.rules
,其中/lib/udev/rename_device
会根据MAC地址为网卡命名。
ip link set ens12 down
ip link set ens12 name veth0
ip link set veth0 up