linux网络篇第二章CentOS7网络属性配置

网卡命名机制

  • 早期的系统网卡命名都是非常容易变化的
  • 在CentOS6之前,网络接口使用连续号码命令如:eth0,eth1.....等,当增加或删除网卡时,名称可能会发生变化

Centos7使用基于硬件, 设备拓扑和设备类型命令:

  • CentOS7 和Centos6的不同就是通过硬件来生成你的网卡名称
  • 他生成的时候有一系列的命名过程:
    • 首先他会基于你的固件如BOISS里面的信息或其他的硬件的信息来进行识别,比如他有可能会识别为eno1,eno就是内置网卡的意思
    • 如果你不是内置网卡时外置的,比方说是PCI-E的插槽外置网卡,他可能会设备ens1
    • 当然也有可能会识别别的名称如:ens0等等
    • 总之会根据你的物理位置,和主板的信息来识别和生成网卡名称
    • 所以这就可以保证我们的网卡不会那么容易变化,导致服务器断网等等一些危险的情况
    • 甚至有可能会用到我们物理网卡的MAC地址来命令
    • 当然有利也有弊,不容易管理,如果你实在是不喜欢,一样也可以采用传统的命名机制

网卡名称

  • 在老期版本的里面我们的网卡名不是叫eth0,eh1吗
  • 有的厂家为了避免网卡名的变化就开发了一些软件,让你的网卡名称不像那么老变,其中有个软件可以实现这功能

biosdevname

  • 这是老早期的软件,装上这个软件以后你的网卡可能会生成这种名字,:如内置网卡会生成em1,em2,外置网卡会生成:pypX :y(slot)插槽的意思 : X(port)意思是第几个端口
  • 那我们来看看这个软件
[root@localhost ~]# rpm -qi biosdevname     
Name        : biosdevname                  Relocations: (not relocatable)
Version     : 0.7.2                             Vendor: CentOS
Release     : 1.el6                         Build Date: Wed 22 Mar 2017 12:30:37 PM CST
Install Date: Wed 28 Jun 2017 11:52:56 AM CST      Build Host: c1bm.rdu2.centos.org
Group       : System Environment/Base       Source RPM: biosdevname-0.7.2-1.el6.src.rpm
Size        : 55296                            License: GPLv2
Signature   : RSA/SHA1, Thu 23 Mar 2017 11:02:59 PM CST, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://linux.dell.com/files/biosdevname
Summary     : Udev helper for naming devices per BIOS names
Description :
biosdevname in its simplest form takes a kernel device name as an
argument, and returns the BIOS-given name it "should" be.  This is necessary
on systems where the BIOS name for a given device (e.g. the label on
the chassis is "Gb1") doesn't map directly and obviously to the kernel
name (e.g. eth0).
  • 瞧上面网址就给咋们列出了来了DEll,我相信你们都知道这是上面厂家,那就是戴尔
  • 只要你买的是DELL的服务器,会自带给你配一个biosdevname的软件
  • 如果你公司买的是DELL的服务器,自己不修改的话可能看到的是这种网卡名字
  • 当然别的厂家也可以装这个软件,但是别的厂家一般默认不会配,或者是有这个软件没启用这个功能

名称组成格式

  • 在CentOS7 里面他的命名如下:

     -  **en**:**Ethernet**  有线局域网
     -  **wl**:**wlan** 无线局域网
     -  **ww**:**wwan**   无线广域网
    
  • 名称类型

    • o<index>:集成设备的设备索引号

    • s<slot> 扩展的索引号

    • x<MAC>基于MAC地址的命令

    • p<bus>s<slot>:enp2s1

网卡设备的命令过程

  • 对于CentOS7来讲有一系列的命名过程
  • 第一步:udev,辅助工具程序/linb/udev/rename_device/usr/lib/udev/rules.d/60-net.rules
  • 第二步:biosdevname,会根据/usr/lib/udev/rules.d/71-biosdrvname.rules
  • 第三步:通过检查网络接口设备,根据/usr/lib/udev/rulis.d/75-net-description如:
  • ID_NET_NAME_ONBOARD
  • ID_NET_NAME_SLOT
  • ID_NET_NAME_PATH

采用传统命名方式

使用传统命令方式

  • 其实很简单我们只需要修改内核选项就可以了,下面我们开始介绍
  • 方法1:进入grub.cfg 由于里面数据较多,找到BEGIN /etc/grub.d/10_linu开头的行,在找到LANG=en_US.UTF-8结尾的行在后面加上net.ifnames=0即可
[root@localhost ~]#  vim   /boot/grub2/grub.cfg
### BEGIN /etc/grub.d/10_linux ###


menuentry 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menue
ntry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-e9dc3158-e6dd-41d1-b51e-c24105d130cc' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd
0,msdos1'  3ffaae18-be19-44b1-b629-e850953533b2
        else
          search --no-floppy --fs-uuid --set=root 3ffaae18-be19-44b1-b629-e850953533b2
        fi
        linux16 /vmlinuz-3.10.0-327.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/
swap rhgb quiet LANG=en_US.UTF-8 net.ifnames=0  <<<<<在后面加上 net.ifnames=0即可
        initrd16 /initramfs-3.10.0-327.el7.x86_64.img
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:6f:cf:88 brd ff:ff:ff:ff:ff:ff
    inet 192.168.42.130/24 brd 192.168.42.255 scope global dynamic eth0
       valid_lft 1182sec preferred_lft 1182sec
    inet6 fe80::20c:29ff:fe6f:cf88/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:6f:cf:92 brd ff:ff:ff:ff:ff:ff
    inet 172.17.253.208/16 brd 172.17.255.255 scope global dynamic eth1
       valid_lft 85782sec preferred_lft 85782sec
    inet6 fe80::20c:29ff:fe6f:cf92/64 scope link 
       valid_lft forever preferred_lft forever
  • 方法2:
    • grub2-mkconfig来生成,他是根据/etc/default/grub这个文件来生成的,我们也可以把这个文件也改了,下次在用grub2-mkconfig来生成就会有我们改过的net.ifnames-0了,我们修改的是倒数第二行
[root@localhost ~]# vi /etc/default/grub 
[root@localhost ~]# vi /etc/default/grub 
GRUB_TIMEOUT=5
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 net.ifnames=0"
GRUB_DISABLE_RECOVERY="true"
~                    
  • 所谓的方法2,就是已经改好了的/etc/default/grub,来重定向/boot?grub2/grub.cfg,不过原来的设计者也带有这个选项-o 有重定向功能
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg 
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-5ec44303424e44a3a31f7b97358af5de
Found initrd image: /boot/initramfs-0-rescue-5ec44303424e44a3a31f7b97358af5de.img
done
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:6f:cf:88 brd ff:ff:ff:ff:ff:ff
    inet 192.168.42.130/24 brd 192.168.42.255 scope global dynamic eth0
       valid_lft 1784sec preferred_lft 1784sec
    inet6 fe80::20c:29ff:fe6f:cf88/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:6f:cf:92 brd ff:ff:ff:ff:ff:ff
    inet 172.17.253.208/16 brd 172.17.255.255 scope global dynamic eth1
       valid_lft 86384sec preferred_lft 86384sec
    inet6 fe80::20c:29ff:fe6f:cf92/64 scope link 
       valid_lft forever preferred_lft forever

CentOS7 网络配置工具

  • CentOS7里面,他有一个重大的变化就是,在CentOS7里面有一个重大的服务
  • 那就是systemctl status NetworkManager服务,这个服务在CentOS7里面很稳定,而且功能很强,CentOS6里面也有这个服务,推荐还是别用因为不稳定,在CentOS7里面已经是一个主流的服务了,那对应的这个服务有很多工具,我们来开始介绍
[root@localhost ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2017-06-29 20:38:09 CST; 16min ago
 Main PID: 999 (NetworkManager)
   CGroup: /system.slice/NetworkManager.service
           ├─ 999 /usr/sbin/NetworkManager --no-daemon
           ├─1337 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth1.pid -lf /var/lib/NetworkManager/dh...
           └─1338 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth0.pid -lf /var/lib/NetworkManager/dh...

Jun 29 20:49:43 localhost.localdomain dhclient[1338]: DHCPREQUEST on eth0 to 192.168.42.254 port 67 (xid=0x6091a5ea)
Jun 29 20:49:43 localhost.localdomain dhclient[1338]: DHCPACK from 192.168.42.254 (xid=0x6091a5ea)
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    address 192.168.42.130
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    plen 24 (255.255.255.0)
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    server identifier 192.168.42.254
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    lease time 1800
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    nameserver '192.168.42.1'
Jun 29 20:49:43 localhost.localdomain NetworkManager[999]: <info>    domain name 'localdomain'

CentOS7主机名

  • CentOS7里面有一个专门来控制主机名的名字叫hostnamectl ,原来的hostname 还在,只不过比他多了些功能和,显示更详细的信息
[root@localhost ~]# hostnamectl
   Static hostname: localhost.localdomain      
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 5ec44303424e44a3a31f7b97358af5de
           Boot ID: a6a9666d1d5644618b7127c02b53f786
    Virtualization: vmware
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-327.el7.x86_64
      Architecture: x86-64
  • 这个命令就是比以前的CentOS6多了点功能,以前我们在CentOS6里面运行了hostname主机名只是临时生效,我们还要去/etc/sysconfig/network里面去修改
  • 但是在CentOS7里面运行这个命令就可以直接改掉主机名了
  • 我们运行 hostnamectl set-hostname Centos8 这个命令
[root@localhost ~]# hostnamectl  set-hostname Centos8
[root@centos8 ~]# 
  • 有一个要注意的是 在CentOS7里面主机名已经不是在/etc/sysconfig/network里面了
  • 在CentOS7里面主机名存放在/etc/hostname里面
  • 如果 /etc/hostname文件删了他就会使用CentOS7,默认的主机名localhost.localdomain
  • 当然了还有一个很重要的地方,那就是主机改了还有一个地方最好还是改下,以免系统以后出现特殊故障
  • 那就是/etc/hosts下加上你的主机名,你可以不改但是以后用应用软件会出现一些特殊问题
[root@centos8 ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 centos8 <<这里加上主机名
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
  • 在CentOS7里面运行nm-connection-editor命令可以打开图形化工具来配置网卡,图形化这就不多说了
 [root@localhost ~]# nm-connection-editor
  • 还可以用字符界面的工具 nmtui这个命令也不过多解释
[root@localhost ~]# nmtui
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容