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

至此,网络配置的相关命令或图形配置工具介绍完毕!!



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