網絡配置、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.www58058.com/47988

(0)
舊城以西舊城以西
上一篇 2016-09-23
下一篇 2016-09-23

相關推薦

  • Linux Bash Shell有關變量

    bash 創建一個子bash-n 查看是否有錯誤-x 逐行顯示信息$:顯示當前PIDPPID :顯示父進程PIDSHLVL :顯示當前shell是幾級shellpstree 顯示進程樹-p 同時顯示進程號ps -ef 顯示進程信息 本地變量 :僅對當前SHELL有效,對子SHELL也無效環境變量:對當前SHELL及子SHELL均有效。 set 顯示本地變量和…

    2017-09-16
  • centos 7 之nmcli命令

    1、nmcli命令的作用 nmcli : command‐line tool for controlling NetworkManager     NetworkManager:動態管理和監控網絡設置的守護進程。用戶和腳本都可使用命令行工具 nmcl…

    Linux干貨 2016-09-10
  • Linux基礎知識——網絡管理基礎

    OSI七層模型與TCP/IP模型的區別 寫一個腳本,使用ping命令探測172.168.250.1-172.168.250.254之間的所有主機的在線狀態,在線的用綠色表示,不在線的使用紅色表示 #!/bin/bash for ((IP=1;IP<=254;IP++))     do  &nb…

    Linux干貨 2016-12-11
  • ACL

    acl 權限的理解

    Linux干貨 2018-03-19
  • vsftpd虛擬用戶搭建

    vsftpd虛擬用戶搭建 1.安裝vsftpd等一系列的安裝包 yum install vsftpd mariadb-server mariadb-devel pam-devel -y 2.安裝pam_mysql 下載:pam_mysql-0.7RC1.tar.gz wget -c ftp://172.16.0.1/pub/Sources/sources/p…

    Linux干貨 2017-06-06
  • 馬哥教育網絡19期+第十七周課程練習

    1、結合圖形描述LVS的工作原理;     LVS (Linux Virtual Server)是一種集群(Cluster)技術,采用IP負載均衡技術和基于內容請求分發技術。調度器具有很好的吞吐率,將請求均衡地轉移到不同的服務器上執行,且調度器自動屏蔽掉服務器的故障,從而將一組服務器構成一個高性能的、高可用的虛擬服務器。整個服務器集群的結…

    Linux干貨 2016-09-05

評論列表(1條)

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

    總結的很詳細,很具有可讀性的文章,不過整個文章看起來很散亂,不知道是不是間隔的太大了。

欧美性久久久久