网络配置、nmcli

CentOS 7 网络属性配置

   rhel6 之前,网络接口使用连续号码命名:eth0 、eth1 等, 当增加或删除网卡时,名称可能会 发生变化

   rhel7 使用基于硬件,设备拓扑和设置类型 命名:

   (1) 网卡命名机制

        systemd 对网络设备的命名方式

            (a) 如果Firmware 或BIOS 为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,例如eno1

            (b) 如果Firmware 或BIOS 为PCI-E 扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,例如ens1

            (c) 如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0

            (d) 如果用户显式启动,也可根据MAC 地址进行命名 ,enx2387a1dc56

            (e) 上述均不可用时,则使用传统命名机制

网卡名称

    基于BIOS 支持启用biosdevname 软件

    内置网卡:em1,em2

    pci 卡:pYpX  Y:slot(卡槽),X:port(卡槽上的第x个口)

    (2) 名称组成格式

        en: Ethernet 有线局域网

        wl: wlan 无线局域网

        ww: wwan 无线广域网

    名称类型:

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

        s<slot>: 扩展槽的索引号

        x<MAC>: 基于MAC地址的命名

        p<bus>s<slot>: enp2s1第二个总线,第一个卡槽

网卡设备的命名过程:

    第一步:

        udev, 辅助工具程序/lib/udev/rename_device,/usr/lib/udev/rules.d/60-net.rules

    第二步:

        biosdevname 会根据/usr/lib/udev/rules.d/71-biosdevname.rules

    第三步:

        通过检测网络接口设备,根据

            /usr/lib/udev/rules.d/75-net-description

            ID_NET_NAME_ONBOARD

            ID_NET_NAME_SLOT

            ID_NET_NAME_PATH

采用传统命名方式

    使用传统命名方式:

    (1) 编辑/etc/default/grub 配置文件

        GRUB_CMDLINE_LINUX ="rhgb quiet net.ifnames=0"

        或:修改/boot/grub2/grub.cfg

blob.png

           系统原来就有的文件

    (2) 为grub2 生成其配置文件

        grub2-mkconfig -o /etc/grub2.cfg

    (3) 重启系统

    我们也可以直接在文件里修改:vim /boot/grub2/grub.cfg  然后找到如下图红框的位置,在行尾加上:net.ifnames=0

blob.png

     然后存盘退出  重启虚拟机

nmcli命令

    地址配置工具:nmcli

    nmcli [ OPTIONS ] OBJECT { COMMAND | help }

        device – show and manage network interfaces

        nmcli device help

        connection – start, stop, and manage network connections 

nmcli connection help

    修改IP 地址等属性:

        #nmcli connection modify IFACE [+|-]setting.property value

            setting.property:

                ipv4.addresses ipv4.gateway

                ipv4.dns1 ipv4.method manual | auto

    修改配置文件执行生效:systemctl restart network

                          nmcli con reload

    nmcli 命令生效: nmcli con down eth0 ;nmcli con up eth0

相关工具

    网络接口配置tui 工具:nmtui

    主机名称配置工具:hostnamectl

        status

blob.png

        set-hostname

             这个命令改hostname  直接更改  而且存入文件

blob.png

使用nmcli配置网络

    NeworkManager 是管理和监控网络设置的守护进程

    设备即网络接口,连接是对网络接口的配置。一个网络接口可有多个连接配置,但同时只有一个连接配置生效。

    显示所有包括不活动连接

        nmcli con show

blob.png

    显示所有活动连接

        nmcli con show –active

blob.png

    显示网络连接配置

        nmcli con show "System eth0“

    显示设备状态

        nmcli dev status

blob.png

    显示网络接口属性

        nmcli dev show eth0

blob.png

    创建新连接default ,IP 自动通过dhcp获取

        nmcli con add con-name default type Ethernet ifname eth0

    删除连接

        nmcli con del default

    创建新连接static ,指定静态IP ,不自动连接

        nmcti con add con-name static ifname eth0 autoconnect no type Ethernet ip4 172.25.X.10/24 gw4

172.25.X.254

    启用static 连接配置

        nmcli con up static

    启用default 连接配置

        nmcli con up default

    查看帮助

        nmcli con add help

    修改连接设置

        nmcli con mod“static” connection.autoconnect no

        nmcli con mod “static” ipv4.dns 172.25.X.254

        nmcli con mod “static” +ipv4.dns 8.8.8.8

        nmcli con mod “static” -ipv4.dns 8.8.8.8

        nmcli con mod “static” ipv4.addresses “172.25.X.10/24172.25.X.254”

        nmcli con mod “static” +ipv4.addresses 10.10.10.10/16

            nmcli con mod 与ifcfg-*文件对应图:

blob.png

    设备配置被保存在文本文件中

        • /etc/sysconfig/network-scripts/ifcfg-<name>

        • 帮助文档列出完整选项列表:/usr/share/doc/initcripts- */sysconfig.txt

                      静态和动态配置不一样:

blob.png

    修改连接配置后,需要重新加载配置

        nmcli con reload

        nmcli con down “system eth0” 可被自动激活

        nmcli con up “system eth0”

        nmcli dev dis eth0 禁用网卡,访止被自动激活

    图形工具

        nm-connection-editor   如图:

blob.png

网络组 Network Teaming

    网络组:是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量

    网络组不同于旧版中bonding 技术,提供更好的性能和扩展性

    网络组由内核驱动和teamd 守护进程实现.

    多种方式runner

            broadcast

            roundrobin

            activebackup

            loadbalance

            lacp (implements the 802.3ad Link Aggregation Control Protocol)

    启动网络组接口不会自动启动网络组中的port 接口

    启动网络组接口中的port 接口不会自动启动网络组接口

    禁用网络组接口会自动禁用网络组中的port 接口

    没有port 接口的网络组接口可以启动静态IP 连接

    启用DHCP 连接时,没有port 接口的网络组会等待port接口的加入

创建网络组接口

    nmcli con add type team con-name CNAME ifnameINAME [config JSON]

        CNAME 连接名, ,INAME 接口名

        JSON 指定runner 方式

            格式:'{"runner": {"name": "METHOD"}}'

                METHOD 可以是broadcast, roundrobin,activebackup, loadbalance, lacp

创建port接口

    nmcli con add type team-slave con-name CNAME ifname INAME master TEAM

        CNAME 连接名

        INAME 网络 接口名

        TEAM 网络组 接口名

    连接名若不指定,默认为team-slave-IFACE

    nmcli dev dis INAME

    nmcli con up CNAME

          INAME 名 设备名 CNAME 网络组接口名或port接口

创建网络组:步骤

# ip link
# nmcli con add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'
# nmcli con mod team0 ipv4.addresses '192.168.0.100/24'
# nmcli con mod team0 ipv4.method manual
# nmcli con add con-name team0-port1 type team-slave ifname eth1 master team0
# nmcli con add con-name team0-port2 type team-slave ifname eth2 master team0
# teamdctl team0 state
# ping -I team0 192.168.0.254
# nmcli dev dis eno1
# teamdctl team0 state
# nmcli con up team0-port1
# nmcli dev dis eno2
# teamdctl team0 state
# nmcli con up team0-port2
# teamdctl team0 state

网络组的配置文件

/etc/sysconfig/network-scripts/ifcfg-team0
DEVICE=team0
DEVICETYPE=Team
TEAM_CONFIG="{\"runner\": {\"name\": \"broadcast\"}}"
BOOTPROTO=none
IPADDR0=172.25.5.100
PREFIX0=24
NAME=team0
ONBOOT=yes
/etc/sysconfig/network-scripts/ifcfg-team0-eth1
DEVICE=eth1
DEVICETYPE=TeamPort
TEAM_MASTER=team0
NAME=team0-eth1
ONBOOT=yes

使用nmcli配置主机名

    rhel6 之前 主机名配置文件:/etc/sysconfig/network

    rhel7.0 主机名配置文件:/etc/hostname,默认没有这个文件,通过DNS反向解析获取主机名,主机名默认为 :

localhost.localdomain

    显示主机名信息

        hostname

        hostnamectl status

blob.png

    创建并修改文件并生效

        hostnamectl set-hostname desktopX.example.com

blob.png

      改完立即生效 并且保存配置文件

    删除文件,恢复主机名localhost.localdomain

    DNS 设置,存放在/etc/resolv.conf 文件中PEERDNS=no表示当IP通过dhcp自动获取时,dns仍是手动设置,不自动获取。等价于下面命令:

    nmcli con mod “system eth0” ipv4.ignore-auto-dns yes

   下面试一些网络工具

测试网络的工具 网络客户端工具

在命令行下测试网络的连通性

  显示主机名

    hostname

  测试网络连通性

    ping

    mtr

  显示正确的路由表

    ip route

  确定名称服务器使用:

    nslookup

    host

    dig

 跟踪路由

    • traceroute

    • tracepath

 ftp ,lftp

   • 子命令:get、 、 mget 、ls 、help

   • lftp [-p port] [-u user[,password]] SERVER

 lftpget URL

 wget [option]… [URL]…

   -q: 静默模式

   -c: 断点续传

   -O: 保存位置

   –limit-rates=: 指定 传输速率

 links URL

   –dump –source

原创文章,作者:旧城以西,如若转载,请注明出处:http://www.178linux.com/47988

(0)
旧城以西旧城以西
上一篇 2016-09-23 09:06
下一篇 2016-09-23 09:06

相关推荐

  • http协议及httpd特性详解

    前言 随着互联网的迅猛发展和网络的普及,各类网站层出不穷,网站也成为企业宣传和实力展现的主要途径之一,说到网站就不得不说一下web服务了,现在比较流行的web服务还是当属Apache即httpd。本文将详解http协议及httpd的特性。 http协议详解 http协议 http: Hyper Text Transfer Protocol 超文本传输协议 传…

    Linux干货 2015-04-13
  • N25第六周总结:vim编辑器详解

    vim编辑器 一、      大纲 1、   什么是vim编辑器 2、   为什么要使用vim编辑器 3、   vim编辑器能实现哪些功能 4、   vim编辑器详解   二、   &nbs…

    Linux干货 2017-01-12
  • CentOS6主机启动流程

    CentOS6主机启动流程 流程 一台Linux主机从开机到登录界面提示输入账号密码的时间中进行了好多动作,了解这些动作有助于了解Linux系统的过程,并能够对开机过程出现的故障进行troubleshooting。 主机启动后最先运行的是主板阶段,一旦电源开启,主板进行POST加点自检动作,自检完成后无故障,主板会读取BIOS信息,根据BIOS信息中的Boo…

    Linux干货 2017-05-13
  • 高级文件系统管理

    磁盘配额:         当我们在一个指定分区内有多个用户使用时,为了保证磁盘空间的大小,我们可以限制某些用户在该磁盘空间中的使用量,此种功能我们称之为磁盘配额。          &nb…

    Linux干货 2016-08-30
  • 基于LNMP网站平台,测试增加memcached缓存系统后网站访问效果

    LNMP安装教程链接:22-love cat 17周博客作业第2部分-构建一个LVS-DR模型的高性能集群 memcached 安装及测试效果 一、概念     memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态…

    Linux干货 2016-08-22
  • SELinux——有趣的标签

    SELinux ·SELinux: Secure Enhanced linux,工作与Linux内核中 ·DAC:Discretionary Access Control 自由访问控制 ·MAC:Mandatory Access Control  强制访问控制        &n…

    Linux干货 2016-09-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-26 14:18

    总结的很详细,很具有可读性的文章,不过整个文章看起来很散乱,不知道是不是间隔的太大了。