網絡相關命令

網絡相關命令


常用命令

ifcfg家族:

  ifconfig:配置IP,NETMASK
  route :路由
  netstat : 狀態及統計數據查看

iproute2家族

    ip  系列
        addr:地址和掩碼
        link :接口
        route:路由
    ss:狀態及統計數據查看

centos 7 nm(Network  Manager)家族

    特點:既能夠立即生效,又能修改配置文件
    nmcli:命令行工具
    bmtul:text windows

注意:

(1)DNS服務器指定
    一般要編輯配置文件: /etc/resolv.conf     
(2)主機名:只是用來表示本地主機 
     centos6 : 臨時:hostname
     配置文件 :/etc/sysconfig/network
     CentOS 7 :hostnamectl 
           這個命令修改的是  /etc/hostname

配置文件:

RedHat及相關發行版
    /etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME

ifcfg命令家族: ifconfig, route, netstat

ifconfig命令:接口及地址查看和管理

語法:ifconfig  [INTERFACE] 顯示網絡信息

# ifconfig -a:顯示所有接口,包括inactive狀態的接口;

語法:ifconfig interface [aftype] options | address … 啟動或關閉某塊網卡

# ifconfig  IFACE(接口名)   IP/MASK  [up|down]

# ifconfig  IFACE(接口名)  IP  netmask  NETMASK

    options:
        [-]promisc

    注意:立即送往內核中的TCP/IP協議棧,并生效;

管理IPv6地址:

    add addr/prefixlen
    del  addr/prefixlen

route命令:路由查看及管理

路由條目類型:
    主機路由:目標地址為單個IP;
    網絡路由:目標地址為IP網絡;
    默認路由:目標為任意網絡,0.0.0.0/0.0.0.0

查看:

# route  -n    查看路由表(不會反解地址和端口號)

網絡相關命令

添加:

語法:route  add  [-net|-host]  target  [netmask  Nm]  ( [gw GW]  [[dev] If])   刪除的話括號內可以不寫

示例:
    route add -net  10.0.0.0/8  gw  192.168.10.1  dev  eth1
    到達10.0.0.0這個地址的下一跳是192.168.10.1 (注意下一跳的地址必須與主機在同一網段中,后邊的 dev 。。??梢圆粚懀?

兩種寫法
    route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0    #增加一條到達244.0.0.0的路由。
    route add  -net  0.0.0.0/0.0.0.0  gw 192.168.10.1  

添加默認網關    
    route add  default  gw 192.168.10.1

刪除:

route  del  [-net|-host] target  [gw Gw]  [netmask Nm]  [[dev] If]

示例: 
    route  del  -net  10.0.0.0/8  gw 192.168.10.1     
    刪除 10.0.0.0/8 這一條路由條目

    刪除目標:192.168.1.3  網關:172.16.0.1
    # route del -host 192.168.1.3    


刪除默認網關    
    route  del  default  

一個網絡的兩個網段的主機如果想要ping通,就需要自自己吧自己設置成為路由!即 GETWAY=自己
    這時route -n查看后就能知道了!

配置動態路由
        通過守護進程獲取動態路由
? 安裝quagga包,支持多種格式的RIP、OSPF和BGP
? 命令vtysh配置(同思科路由器配置)

netstat命令:

gn顯示網絡連接路由表,路由數據,偽裝連接,偽裝數據,顯示多播成員關系!

顯示路由表:

netstat  -rn

-r:顯示內核路由表
-n:數字格式,不反解IP地址至主機名;

顯示網絡連接:

netstat
 [—tcp|-t]  [—udp|-u]  [—udplite|-U]  [—sctp|-S]  [—raw|-w]  
[—listening|-l]  [—all|-a]  [—numeric|-n]   [—extend|-e[—extend|-e]]  
[—program|-p]

  • -t:TCP協議的相關連接,連接均有其狀態;FSM(Finate State Machine);

  • -u:UDP相關的連接

  • -w:raw socket相關的連接

  • -l:處于監聽狀態的連接

  • -a:所有狀態

  • -n:以數字格式顯示IP和Port;

  • -e:擴展格式

  • -p:顯示相關的進程及PID;

常用組合:

netstat   -tan(所有狀態的連接),  -uan,  -tnl,  -unl,  -tunlp

網絡相關命令                        

  • 傳輸層協議:
     tcp:面向連接的協議;通信開始之前,要建立一個虛鏈路;通信完成后還要拆除連接;
     udp:無連接的協議;直接發送數據報文;

顯示接口的統計數據:

netstat    {—interfaces|-I|-i}    [iface]   [—all|-a]   [—extend|-e]   [—verbose|-v]   [—program|-p]  [—numeric|-n]

  • 所有接口:

      netstat  -i
  • 指定接口:

       netstat  -I<IFace>
        [root@localhost ~/bin ]# netstat -i
        Kernel Interface table
        Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
        eno16777  1500   647978      0      0 0         62975      0      0      0 BMRU
        eno16777  1500      - no statistics available -                        BMRU
        lo       65536      459      0      0 0           459      0      0      0 LRU
        virbr0    1500        0      0      0 0             0      0      0      0 BMU
        [root@localhost ~/bin ]# netstat -Ieno16777736
        Kernel Interface table
        Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
        eno16777  1500   648191      0      0 0         62994      0      0      0 BMRU

ifup/ifdown命令:

注意:通過配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE來識別接口并完成配置;

配置主機名:

hostname命令:

    查看:hostname
    配置:hostname  HOSTNAME
        當前系統有效,重啟后無效;

hostnamectl命令(CentOS 7):

hostnamectl  status:顯示當前主機名信息;
hostnamectl  set-hostname:設定主機名,永久有效;

    [root@localhost ~/bin ]# hostnamectl set-hostname  QZX
     [root@localhost ~/bin ]# cat /etc/hostname 
     qzx         ------------此命令改動的是/etc/hostname 下次登錄就能生效了

配置文件:/etc/sysconfig/network
    HOSTNAME=<HOSTNAME>

    注意:此方法的設置不會立即生效; 但以后會一直有效;

配置DNS服務器指向:

配置文件:/etc/resolv.conf

nameserver 語法:

nameserver   DNS_SERVER_IP

配置DNS服務器 為….

如何測試(host/nslookup/dig):

        # dig  -t  A  FQDN
            FQDN --> IP
        dig -t A www.baidu.com --- ip地址


        # dig  -x  IP
            IP --> FQDN

iproute家族:

ip命令:

功能:查看、管理路由、策略路由、隧道

語法:ip [ OPTIONS ] OBJECT { COMMAND | help }
           OBJECT := { link | addr | route | netns  }

    注意: OBJECT可簡寫,各OBJECT的子命令也可簡寫;
dev NAME (default):指明要管理的設備,dev關鍵字可省略;    
ip link set dev eth1 up
    up和down:
    multicast on或multicast off:啟用或禁用多播功能;
    name NAME:重命名接口
    mtu NUMBER:設置MTU的大小,默認為1500;
    netns PID:ns為namespace,用于將接口移動到指定的網絡名稱空間;
        ip  link  help -  顯示簡要使用幫助;

ip netns:  – 改網絡manage network namespaces.

        ip  netns  list:列出所有的netns
        ip  netns  add  NAME:創建指定的netns
        ip  netns  del  NAME:刪除指定的netns
        ip  netns   exec  NAME  COMMAND:在指定的netns中運行命令

ip address – protocol address management.

ip address add – add new protocol address

   ip  addr  add  IFADDR  dev  IFACE
    [label NAME]:為額外添加的地址指明接口別名(為了讓ifconfig能顯示);
    [broadcast ADDRESS]:廣播地址;會根據IP和NETMASK自動計算得到;
    [scope SCOPE_VALUE]:
        global:全局可用;
        link:接口可用;
        host:僅本機可用;

網絡相關命令
也可以多次執行,給網卡添加多個地址

ip address delete – delete protocol address

    ip addr  delete  IFADDR  dev  IFACE
    ip address show - look at protocol addresses
            ip  addr   list  [IFACE]:顯示接口的地址;

    ip address flush - flush protocol addresses
            ip  addr  flush  dev  IFACE

    ip addr flush dev eth0 label eth0:0
    清空指定的 eth0

ip route – routing table management

ip route add – add new route

ip route change – change route

ip route replace – change or add new one

ip    route     add    TYPE PREFIX    via(下一跳)   GW    [dev  IFACE]  [src SOURCE_IP]

示例:
    # ip route add 192.168.0.0/24  via 10.0.0.1  dev eth1 src  10.0.20.100
    # ip  route  add default  via  GW
  • ip route delete – delete route

  • ip  route  del  TYPE PRIFIX

    示例:
      # ip  route delete  192.168.1.0/24

  • ip route show – list routes

          TYPE PRIFIX
  • ip route flush – 清空路由表 flush routing tables

              TYPE  PRIFIX
          可以指定刪除某類地址

    網絡相關命令

  • ip route get – 獲取單條路由 get a single route

                  ip  route  get  TYPE PRIFIX
    
          示例:ip route  get  192.168.0.0/24

ss命令:

語法:    ss  [options]  [ FILTER ]

選項:

  • -t:TCP協議的相關連接

  • -u:UDP相關的連接

  • -w:raw socket相關的連接

  • -l:監聽狀態的連接

  • -a:所有狀態的連接

  • -n:數字格式

  • -p:相關的程序及其PID

  • -e:擴展格式信息

  • -m:內存用量

  • -o:計時器信息

    FILTER := [ state TCP-STATE ]  [ EXPRESSION ]

       TCP的常見狀態:
           TCP FSM:
               LISTEN:監聽
               ESTABLISEHD:建立的連接
               FIN_WAIT_1:
               FIN_WAIT_2:
               SYN_SENT:
               SYN_RECV:
               CLOSED:

    EXPRESSION:過濾!
    dport =
    sport =
      自定義過濾示例:’( dport = :22 or sport = :22)’

       ~]# ss   -tan    '(  dport = :22 or sport = :22  )'
           過濾:tcp連接中只要目的端口 或 源端口為22的

    網絡相關命令    

    ss  -tan  state  ESTABLISHED

    只看建立連接的條目
    網絡相關命令

ss -l 顯示本地打開的所有端口

ss -pl 顯示每個進程具體打開的socket

ss -t -a 顯示所有tcp socket

ss -u -a 顯示所有的UDP Socekt

ss -o state established ‘( dport = :ssh or sport = :ssh )’ 顯示所有已建立的ssh連接

ss -o state established ‘( dport = :http or sport = :http )’ 顯示所有已建立的HTTP連接

ss -s 列出當前socket詳細信息

配置文件:

IP/NETMASK/GW/DNS等屬性的配置文件:

/etc/sysconfig/network-scripts/ifcfg-IFACE

IFACE:接口名稱;

路由的相關配置文件:

/etc/sysconfig/networkj-scripts/route-IFACE

/etc/sysconfig/network-scripts/ifcfg-IFACE

說明參考/usr/share/doc/initscripts-9.49.30sysconfig.txt 、

配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通過大量參數來定義接口的屬性;其可通過vim等文本編輯器直接修改,也可以使用專用的命令的進行修改(CentOS 6:system-config-network (setup),CentOS 7: nmtui

ifcfg-IFACE配置文件參數:

  • DEVICE:此配置文件對應的設備的名稱;

  • ONBOOT:在系統引導過程中,是否激活此接口;

  • UUID:此設備的惟一標識;

  • IPV6INIT:是否初始化IPv6;

  • BOOTPROTO:激活此接口時使用什么協議來配置接口屬性,常用的有dhcp、bootp、static、none;

  • TYPE:接口類型,常見的有Ethernet, Bridge;

  • DNS1:第一DNS服務器指向;

  • DNS2:備用DNS服務器指向;

  • DOMAIN:DNS搜索域;

  • IPADDR: IP地址;

  • NETMASK:子網掩碼;CentOS 7支持使用PREFIX以長度方式指明子網掩碼;

  • GATEWAY:默認網關;

  • USERCTL:是否允許普通用戶控制此設備;

  • PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許dhcp server分配的dns服務器指向 覆蓋本地手動指定的DNS服務器指向;默認為允許;(覆蓋到/etc/resolv.conf文件)

  • HWADDR:設備的MAC地址;

  • NM_CONTROLLED:是否使用NetworkManager服務來控制接口;建議CentOS6為“no” 禁止掉

網絡相關命令網絡相關命令
網絡相關命令

網絡服務:

  • network

  • NetworkManager
    CentOS 6 NetworkManager還處于試驗中,進行高級功能時盡量不要使用!CentOS 7已經很完善了

    • 可以用 chkconfig —list 查看是否啟動

管理網絡服務:

CentOS 6:  service  SERVICE  {start|stop|restart|status}

CentOS 7:systemctl  {start|stop|restart|status}  SERVICE[.service]

配置文件修改之后,如果要生效,需要重啟網絡服務;
    CentOS 6:# service  network  restart
    CentOS 7:# systemctl  restart  network.service

網關路由用到非默認時:/etc/sysconfig/network-scripts/route-IFACE

支持**兩種配置方式**,但不可混用;
    (1) 每行一個路由條目:
        TARGET  via  GW

網絡相關命令

    (2) 每三行一個路由條目:
        ADDRESS#=TARGET
        NETMASK#=MASK
        GATEWAY#=NEXTHOP

網絡相關命令

給接口配置多個地址:

ip addr之外,ifconfig 或配置文件都可以;這只是當前狀態有效;重啟就無效了!

(1) ifconfig  IFACE_LABEL  IPADDR/NETMASK

    IFACE_LABEL: eth0:0, eth0:1, ...

網絡相關命令    

(2) 為別名添加配置文件(這樣就能永久有效了);

    DEVICE=IFACE_LABEL
    BOOTPROTO:網卡別名不支持動態獲取地址;
        static, none

網絡相關命令


nmcli命令:

Centos 7專用

nmcli  [ OPTIONS ] OBJECT { COMMAND | help }

    device - 顯示及管理網絡接口(ip link)show and manage network interfaces

        COMMAND := { status | show | connect | disconnect | delete | wifi | wimax }

    connection - start, stop, and manage network connections
        COMMAND := { show | up | down | add | edit | modify | delete | reload | load }

        modify [ id | uuid | path ] <ID> [+|-]<setting>.<property> <value>

        如何修改IP地址等屬性:
            # nmcli  conn  modify  IFACE  [+|-]setting.property  value
                ipv4.address
                ipv4.gateway
                ipv4.dns1
                  ipv4.method
                        manual

不如用 nmtui 命令!

配置好以后用 systemctl restart network.service 重啟下網絡服務

Centos 6 可以用setup

這兩個命令都是直接編輯的配置文件

原創文章,作者:qzx,如若轉載,請注明出處:http://www.www58058.com/44422

(0)
qzxqzx
上一篇 2016-09-07
下一篇 2016-09-07

相關推薦

  • Linux文件壓縮、解壓、歸檔總結

    一、簡介   壓縮對我們來說通常意味著減小文件體積,節省硬盤空間。在Windows平臺上處理大文件或目錄中的文件很多時我們都需要對這些文件進行壓縮處理,壓縮格式多種多樣,如:zip、rar、7z等格式,壓縮方式也比較多樣話,支持按最大壓縮比例或者最快時間進行壓縮等多種方式,而生成的壓縮包就可以讓我們更方便的進行拷貝及歸檔整理。解壓縮顧名思義就是回歸…

    Linux干貨 2015-09-26
  • ###N25-Bazinga-第一周作業

    ###N25-Bazinga-第一周作業— 1,描述計算機的組成及其功能         計算機基本組成有五部分:     計算機的主要組成部分可以歸納為以下五個部分:控制器、運算器、存儲器、輸入設備、和輸出…

    Linux干貨 2016-12-06
  • MairaDB之基于openssl的主從復制

    一、配置openssl   1、   在master server(node0)上根CA的搭建(及生成自簽名證書) [root@node0 ~]# cd /etc/pki/CA/ [root@node0 CA]# (umask 077;openssl genrsa -out private/cakey.pem 2048) Gen…

    2016-11-19
  • 馬哥教育21期網絡班—第12周課程+練習—-LAMP練習中

    為第4題中的第2個虛擬主機提供https服務,使得用戶可以通過https安全的訪問此web站點; (1)要求使用證書認證,證書中要求使用的國家(CN)、州(HA)、城市(ZZ)和組織(MageEdu); (2)設置部門為Ops,主機名為www2.stuX.com,郵件為admin@stuX.com; [ root@centos CA]# …

    Linux干貨 2016-09-26
  • Linux下history命令的介紹

    Linux下history命令的介紹 一、用處 對于Linux而言,命令是人機交互的重要方式,而查看命令歷史可以幫助我們了解系統的使用狀態、增強安全性也可以調用歷史達到快捷操作的目的。 二、命令行歷史   執行過的命令會被存入緩存,當正常退出shell時,緩存中的命令會被寫入文件中并保存在用戶下的隱藏文件文件.bash_history中。當用戶登陸…

    Linux干貨 2016-07-29
  • 筆記–8.4 文本處理工具,正則表達式

    cat 查看文本文件 命令功能: cat主要有三大功能: 1.一次顯示整個文件:cat filename 2.從鍵盤創建一個文件:cat > filename 只能創建新文件,不能編輯已有文件. 3.將幾個文件合并為一個文件:cat file1 file2 > fil…

    Linux干貨 2016-08-07

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-10 10:58

    對網絡管理類命令總結的很詳細,也有自己的操作,如果能對個命令顯示結果進行分析,會讓文章更加具有實際意義。

欧美性久久久久