Linux網絡管理工具總結

常見的網卡類型

lo(loopback):本地迴環

ethNUM:以太網網卡

pppNUM:點對點

 CentOS7中爲ensNUMs

========================================================================================================

網絡配置相關命令

一、ifconfig (ifup,ifdown)

二、route

三、netstat

四、ip

五、ss

六、圖形界面配置網絡的工具:system-config-network-tui

CentOS 7:

七、命令行模式:nmcli 

八、圖形模式:nmtui

=========================================================================

網絡配置相關的配置文件

/etc/sysconfig/network-scripts/ifcfg-eth#

===========================================================================================


一、ifconfig

     ifconfig的英文全稱是network interfaces configuring,它的作用是顯示或配置網絡設備(網絡接口)的命令

ifconfig的用法:

啓用混雜模式:[-]promisc;在這個網絡上的所有包都會被這個網絡設備接口收到

1、ifconfig -a  

[root@centos6 ~]# ifconfig -a      //顯示所有網卡設備信息

wKiom1XkTKnjMisoAAKImj5z7B8245.jpg

說明:

eth0 表示第一塊網卡,其中HWaddr表示網卡的物理地址,可以看到目前這個網卡的物理地址(MAC地址)是00:0C:29:C1:97:20  

inet addr 用來表示網卡的IP地址,此網卡的IP地址是10.0.0.80,廣播地址-Bcast:10.0.0.255,掩碼地址Mask:255.255.255.0 

lo 是表示主機的回壞地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。

第一行:連接類型:Ethernet(以太網)HWaddr(硬件mac地址)

第二行:網卡的IP地址、廣播地址、子網掩碼

第三行:UP(代表網卡開啓狀態)、RUNNING(代表網卡的網線被接上)、MULTICAST(支持組播)、MTU:1500(最大傳輸單元):1500字節

第四、五行:接收、發送數據包情況統計

第七行:接收、發送數據字節數統計信息

2、ifconfig interface [up|down]   //啓動接口或禁用接口 

3、ifconfig interface IP/mask   //爲接口設置ip地址

4、ifconfig interface-alias IP/mask  //爲接口別名設置ip地址;立即生效

[root@centos6 ~]# ifconfig eth0:0 172.16.100.5/16

wKioL1XkVF7y2qVwAAC26h_9pjc171.jpg

wKiom1XkUn_jTolNAACUL6T63rk266.jpg

5、ifup、ifdown ===啓動,禁用 

用法:ifup|ifdown interface 相當於 ifconfig interface up|down



二、route---路由管理命令

-n 以數字方式顯示路由的相關信息

[root@centos6 ~]# route -n

wKioL1XkWXLTkQ9zAADvSUStYec596.jpg

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

選項:

add 添加

-host 主機路由

-net 網絡路由

1、示例:添加主機路由;目標:192.168.1.10  網關:10.0.0.1

[root@centos6 ~]# route add -host 192.168.1.10 gw 10.0.0.1 dev eth0

執行結果見下圖:

    U (route is up) 路由啓用 
   H (target is a host) 目標是主機
  G (use gateway) 使用網關

wKioL1XkWm7wFvT6AACYOLHN7no606.jpg

2、示例:添加網絡路由;目標:192.168.0.0  網關:10.0.0.1

[root@centos6 ~]# route add -net 192.168.0.0/24 gw 10.0.0.1 dev eth0

3、示例:添加默認路由

[root@centos6 ~]# route add default gw 10.0.0.1

del 刪除

-host 主機路由

-net 網絡路由

1、示例:刪除主機路由;目標:192.168.1.10  網關:10.0.0.1

[root@centos6 ~]# route del -host 192.168.1.10

2、示例:刪除網絡路由;目標:192.168.0.0  網關:10.0.0.1

[root@centos6 ~]# route del -net 192.168.0.0/24


三、netstat----網絡狀態信息

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

 -t: tcp協議相關

 -u: udp協議相關

 -w: raw socket相關

 -l: 處於監聽狀態

 -a: 所有狀態

 -n: 以數字顯示IP和端口;

 -e:擴展格式

 -p: 顯示相關進程及PID


顯示路由表:

netstat {--route|-r} [--numeric|-n]

    -r: 顯示內核路由表

    -n: 數字格式

wKioL1XkXgThRAImAAFFUpyfTlM837.jpg

顯示接口統計數據:

netstat {--interfaces|-I|-i} [iface] [--all|-a][--numeric|-n] 

# netstat -i

# netstat -I[interface]

wKiom1XkXXeDRNoAAAGHRzH7gbk624.jpg



四、ip

     Linux的ip命令和ifconfig類似,但前者功能更強大,並旨在取代後者。使用ip命令,只需一個命令,你就能很輕鬆地執行一些網絡管理任務。

用法:   ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJECT := { link | addr | route }


ip link show--顯示設備屬性

[root@centos7 ~]# ip link show

wKioL1XlpnvyJfigAAE0F0eFxuI740.jpg


ip link set--改變設備的屬性

[root@centos7 ~]# ip link set dev ens33 down      //禁用網卡ens33

[root@centos7 ~]# ip link set dev ens33 up          //啓用網卡ens33


ip address show--顯示ip地址

[root@centos7 ~]# ip addr show              //顯示網卡的ip地址


ip address add--添加一個新的ip地址

[root@centos7 ~]# ip addr add 172.16.100.10/16 dev ens33

wKioL1XlrH_zG5iCAAF5KTfGww0000.jpg


ip address del--刪除一個ip地址

[root@centos7 ~]# ip addr del 172.16.100.10/16 dev ens33

wKiom1XlqqrSXUqyAAF5KTfGww0945.jpg

ip address flush--清除ip地址

[root@centos7 ~]# ip addr flush dev ens33        //清空網卡的ip地址


ip route show-- 顯示路由

[root@centos7 ~]# ip route show               //顯示路由表信息

wKioL1XlseKDBxZBAADpTcDcTd8187.jpg


ip route add -- 添加新路由

[root@centos7 ~]# ip route add 172.16.100.2 via 192.168.1.1   //添加主機路由

[root@centos7 ~]# ip route add 172.16.0.0/16 via 192.168.1.1   //添加網絡路由

wKioL1XltDqyySRNAADpfy1XevE309.jpg

ip route delete-- 刪除路由

[root@centos7 ~]# ip route del 172.16.100.2        //刪除主機路由
[root@centos7 ~]# ip route del 172.16.0.0/16        //刪除網絡路由



五、ss

     ss命令用於顯示socket狀態. 他可以顯示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等統計. 它比其他工具展示等多tcp和state信息. 它是一個非常實用、快速、有效的跟蹤IP連接和sockets的新工具

使用方法: ss [options] [ FILTER ]

選項:

-t: tcp協議相關

-u: udp協議相關

-w: 裸套接字相關

-x:unix sock相關

-l: listen狀態的連接

-a: 所有

-n: 數字格式

-p: 相關的程序及PID

-e: 擴展的信息

-m:內存用量

-o:計時器信息

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

ss常用的state狀態

established

syn-sent

syn-recv

fin-wait-1

fin-wait-2

time-wait

closed

close-wait

last-ack

listen

closing

all : All of the above states

connected : All the states except for listen and closed

synchronized : All the connected states except for syn-sent

bucket : Show states, which are maintained as minisockets, i.e. time-wait and syn-recv.

big : Opposite to bucket state.



ss列出處在FIN-WAIT-1狀態的http、https連接

 ss -o state fin-wait-1 '( sport = :http or sport = :https )'


爲什麼ss比netstat快?  

    netstat是遍歷/proc下面每個PID目錄,ss直接讀/proc/net下面的統計信息。 所以ss執行的時候消耗資源以及消耗的時間都比netstat少很多!!



六、圖形界面配置網絡的工具:system-config-network-tui

[root@centos6 ~]# yum install -y system-config-network-tui    //安裝所需工具
[root@centos6 ~]# system-config-network-tui   //運行,如圖所示

wKiom1XkXyKjA_RfAACjPkk_Sek890.jpg

wKioL1XkYUGSRl0UAAE3JcCdafM942.jpg

需要說明的是:使用這個工具配置起來比較方便,而且配置的內容直接保存 至/etc/sysconfig/network-scripts/ifcfg-eth0文件中 



七、Centos7上的網絡配置命令行工具cmcli

命令格式:

 nmcli  [ OPTIONS ] OBJECT { COMMAND | help }

其實nmcli和centos6上的ip命令極其相似,命令格式幾乎完全相同,只不過用了不同的選項和子命令。

子命令及常用選項:子命令可簡寫

connection   簡寫爲:c  或者 con

    show    顯示網卡信息

    modify 設置網卡屬性

            modify的格式:

      modify IFACE [+|-]setting.property value

  setting.property:ipv4.address|ipv4.gateway|ipv4.dns|ipv4.method (manual)

[root@centos7 ~]# nmcli c show           //顯示網卡信息
NAME   UUID                                  TYPE            DEVICE 
ens33  4a126337-4537-4462-a516-cd01d417e775  802-3-ethernet  ens33
[root@centos7 ~]# nmcli c modify ens33 +ipv4.addresses 172.16.100.2 //給網卡設置新的ipv4地址


device   簡寫爲 d 或者 dev

    status    查看網卡的狀態信息

    show    查看網卡的屬性信息

[root@centos7 ~]# nmcli d show ens33

wKiom1Xluxrx6XgaAAHKm3feBZ4817.jpg



八、圖形工具:nmtui

使用方法:

[root@centos7 ~]# nmtui

wKiom1XkYIXAPSvSAAC2P5QSj2E707.jpg

wKioL1XkYqTBzgILAACoss8vyr8700.jpg

wKiom1XkYIWTtN6CAAH-3LhSzCc132.jpg

至此,網絡配置的相關命令或圖形配置工具介紹完畢!!



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章