背景

没啥背景,就是VMWare装的CentOS虚拟机的自带网卡名有点乱,想重新定义一下。

环境

1、VMWare虚拟机

6张网卡

2、系统

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.2. (Core)

并且是最小化安装。

网卡信息

网卡配置文件

配置内容

[root@localhost network-scripts]# cat ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=1160a71e-e5b5--b742-c1bf0cba6f00
DEVICE=eno16777736
ONBOOT=no

这里启动下网卡,获得IP,好连接shell

[root@localhost network-scripts]# sed -i '/ONBOOT/s/no/yes/' ifcfg-eno*
[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# ip addr
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:5c brd ff:ff:ff:ff:ff:ff
inet 192.168.140.128/ brd 192.168.140.255 scope global dynamic eno16777736
valid_lft 1799sec preferred_lft 1799sec
inet6 fe80::20c:29ff:fea3:b15c/ scope link
valid_lft forever preferred_lft forever
: eno33554960: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.129/ brd 192.168.140.255 scope global dynamic eno33554960
valid_lft 1800sec preferred_lft 1800sec
inet6 fe80::20c:29ff:fea3:b166/ scope link
valid_lft forever preferred_lft forever
: eno50332184: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.130/ brd 192.168.140.255 scope global dynamic eno50332184
valid_lft 1800sec preferred_lft 1800sec
inet6 fe80::20c:29ff:fea3:b170/ scope link
valid_lft forever preferred_lft forever
: eno67109408: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.140.131/ brd 192.168.140.255 scope global dynamic eno67109408
valid_lft 1800sec preferred_lft 1800sec
inet6 fe80::20c:29ff:fea3:b17a/ scope link
valid_lft forever preferred_lft forever
: eno83886632: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.132/ brd 192.168.140.255 scope global dynamic eno83886632
valid_lft 1800sec preferred_lft 1800sec
inet6 fe80::20c:29ff:fea3:b184/ scope link
valid_lft forever preferred_lft forever
: eno100663856: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:8e brd ff:ff:ff:ff:ff:ff
inet 192.168.140.133/ brd 192.168.140.255 scope global dynamic eno100663856
valid_lft 1801sec preferred_lft 1801sec
inet6 fe80::20c:29ff:fea3:b18e/ scope link
valid_lft forever preferred_lft forever
[root@localhost network-scripts]#

默认使用DHCP,都是自动获取的IP

配置

CentOS7使用了“一致性网络命名方法”,这里举例,将网卡名截断为前5个字符,如eno16777736改为eno16。

1、更改网卡配置文件名

[root@localhost network-scripts]# ll
total
-rw-r--r--. root root Jan : ifcfg-eno10
-rw-r--r--. root root Jan : ifcfg-eno16
-rw-r--r--. root root Jan : ifcfg-eno33
-rw-r--r--. root root Jan : ifcfg-eno50
-rw-r--r--. root root Jan : ifcfg-eno67
-rw-r--r--. root root Jan : ifcfg-eno83
-rw-r--r--. root root Sep ifcfg-lo
lrwxrwxrwx. root root Jan : ifdown -> ../../../usr/sbin/ifdown
-rwxr-xr-x. root root Sep ifdown-bnep
[root@localhost network-scripts]#

并更改配置文件内容,举例

[root@localhost network-scripts]# cat ifcfg-eno16
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16
UUID=803d2d05-493b-489b--1d3fc67878aa
DEVICE=eno16
ONBOOT=yes
[root@localhost network-scripts]#

2、关闭“一致性网络设备命名法”

更改前

[root@localhost ~]# cat /etc/sysconfig/grub
GRUB_TIMEOUT=
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
[root@localhost ~]#

添加net.ifnames=0 biosdevname=0

更改后

[root@localhost ~]# cat /etc/sysconfig/grub
GRUB_TIMEOUT=
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap net.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
[root@localhost ~]#

更新GRUB、内核配置

[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.-.el7.x86_64
Found initrd image: /boot/initramfs-3.10.-.el7.x86_64.img
Found linux image: /boot/vmlinuz--rescue-f034e6e19df748b7a27fad77b06e3179
Found initrd image: /boot/initramfs--rescue-f034e6e19df748b7a27fad77b06e3179.img
done
[root@localhost ~]#

3、添加设备规则配置文件

修改/etc/udev/rules.d/70-persistent-net.rules,没有该文件则新建文件

内容如下

[root@localhost ~]# cat /etc/udev/rules.d/-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:5c", ATTR{type}=="", KERNEL=="eth*", NAME="eno16"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:8e", ATTR{type}=="", KERNEL=="eth*", NAME="eno10"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:66", ATTR{type}=="", KERNEL=="eth*", NAME="eno33"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:70", ATTR{type}=="", KERNEL=="eth*", NAME="eno50"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:7a", ATTR{type}=="", KERNEL=="eth*", NAME="eno67"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a3:b1:84", ATTR{type}=="", KERNEL=="eth*", NAME="eno83"
[root@localhost ~]#

注意MAC地址与NAME相匹配(可以用ip addr查看)

4、重启

[root@localhost ~]# reboot

使用

[root@localhost ~]# ip addr
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eno16: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:5c brd ff:ff:ff:ff:ff:ff
inet 192.168.140.128/ brd 192.168.140.255 scope global dynamic eno16
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b15c/ scope link
valid_lft forever preferred_lft forever
: eno33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.129/ brd 192.168.140.255 scope global dynamic eno33
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b166/ scope link
valid_lft forever preferred_lft forever
: eno50: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.130/ brd 192.168.140.255 scope global dynamic eno50
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b170/ scope link
valid_lft forever preferred_lft forever
: eno67: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.140.131/ brd 192.168.140.255 scope global dynamic eno67
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b17a/ scope link
valid_lft forever preferred_lft forever
: eno83: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.132/ brd 192.168.140.255 scope global dynamic eno83
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b184/ scope link
valid_lft forever preferred_lft forever
: eno10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:8e brd ff:ff:ff:ff:ff:ff
inet 192.168.140.133/ brd 192.168.140.255 scope global dynamic eno10
valid_lft 1768sec preferred_lft 1768sec
inet6 fe80::20c:29ff:fea3:b18e/ scope link
valid_lft forever preferred_lft forever
[root@localhost ~]#

看见网卡名称都已经更改了

再来设置个静态ip,以eno83为例

[root@localhost network-scripts]# cat ifcfg-eno83
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno83
UUID=919f599a-c262--be7e-0646b1e98dee
DEVICE=eno83
IPADDR=192.168.140.140
PREFIX=24
ONBOOT=yes
[root@localhost network-scripts]#

重启网络

[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]#
[root@localhost network-scripts]#
[root@localhost network-scripts]# ip addr
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eno16: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:5c brd ff:ff:ff:ff:ff:ff
inet 192.168.140.128/ brd 192.168.140.255 scope global dynamic eno16
valid_lft 1802sec preferred_lft 1802sec
inet6 fe80::20c:29ff:fea3:b15c/ scope link
valid_lft forever preferred_lft forever
: eno33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.129/ brd 192.168.140.255 scope global dynamic eno33
valid_lft 1802sec preferred_lft 1802sec
inet6 fe80::20c:29ff:fea3:b166/ scope link
valid_lft forever preferred_lft forever
: eno50: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.130/ brd 192.168.140.255 scope global dynamic eno50
valid_lft 1803sec preferred_lft 1803sec
inet6 fe80::20c:29ff:fea3:b170/ scope link
valid_lft forever preferred_lft forever
: eno67: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.140.131/ brd 192.168.140.255 scope global dynamic eno67
valid_lft 1803sec preferred_lft 1803sec
inet6 fe80::20c:29ff:fea3:b17a/ scope link
valid_lft forever preferred_lft forever
: eno83: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1: brd ff:ff:ff:ff:ff:ff
inet 192.168.140.140/24 brd 192.168.140.255 scope global eno83
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fea3:b184/ scope link
valid_lft forever preferred_lft forever
: eno10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::a3:b1:8e brd ff:ff:ff:ff:ff:ff
inet 192.168.140.133/ brd 192.168.140.255 scope global dynamic eno10
valid_lft 1802sec preferred_lft 1802sec
inet6 fe80::20c:29ff:fea3:b18e/ scope link
valid_lft forever preferred_lft forever
[root@localhost network-scripts]#

改好了~

ps:

1、如果没有“配置-3添加设备规则配置文件“这步,其他不变,系统重启后将使用eth0、eth1、eth2、...这样的网卡名,此时系统会尝试启动配置文件(eno16等)描述的网卡,但网卡不存在,这些网卡将启动失败,并且开机后无法重启网络,提示failed to start lsb:bring up/down巴拉巴拉~

2、/etc/sysconfig/network-scripts这里目录里的网卡配置文件不要有多余的,每个ifcfg-xxxx对应且仅对应一个网卡,否则容易造成重启网络失败,提示failed to start lsb:bring up/down巴拉巴拉~

3、按这个顺序更改,可以避免更改网卡名称并重启之后,无法重启network的情况。

最新文章

  1. Angular2学习笔记(1)
  2. BZOJ 1030: [JSOI2007]文本生成器 [AC自动机 DP]
  3. socket泄露的问题
  4. 《FaceBook效应》——读后总结
  5. BZOJ4519: [Cqoi2016]不同的最小割
  6. 【循序渐进学Python】12.Python 正则表达式简介
  7. iOS 学习 - 8 TableViewCell 自适应高度
  8. js除法四舍五入保留小数点后两位写法
  9. 【Origin】 碑铭
  10. SQLITE3 使用总结
  11. BZOJ 1707: [Usaco2007 Nov]tanning分配防晒霜
  12. Oracle提示“资源正忙,需指定nowait”的解决方案
  13. postfix中recipient/client/sender/helo四者的区别&lt;转载&gt;
  14. Python3基础 list() 将一个元组转换成列表
  15. codeforces#983 B. XOR-pyramid (dp)
  16. vue报错信息
  17. Jquery 选择器 特殊字符 转义字符
  18. A1023. Have Fun with Numbers
  19. ubuntu关闭服务需要身份验证
  20. 【转】【WPF】WPF MVVM 简单实例

热门文章

  1. JSP行为
  2. POJ 1635 树的最小表示法
  3. HDU 3264 区间内的最大最小之差
  4. android去除标题栏和状态栏(全屏)
  5. 【BZOJ2560】串珠子(状压DP,容斥原理)
  6. 「CodePlus 2018 3 月赛」白金元首与克劳德斯
  7. 把excel导入到mysql中
  8. hdu 3549 Flow Problem(最大流模板题)
  9. vue :src 文件路径错误
  10. 自己定义控件 播放GIF动画