Linux:查看网络信息和网络监控命令。

ifconfig

该命令用于查看机器挂载的网卡情况。

使用方式

  • ifconfig -a

命令输出

可见机器有两个网卡,一个时eth0,另一个是本地回环虚拟网卡。

另外,iproute2软件包含一个强大的网络配置工具ip,它是升级版的ifconfig命令,提供了更多的高级功能。

ping

ping命令是用于检测网络故障的常用命令,可以用来测试一台主机到另外一台主机的网络是否连通。

使用方式

  • ping www.baidu.com

命令输出

telnet

telnet是TCP/IP协议族的一员,是网络远程登录服务的标准协议,帮助用户在本地计算机上连接远程主机。

使用方式

  • telnet IP PORT

命令输出

从输出中可以看到,使用telnet协议可以直接连接Redis端口,并发送Redis命令。

nc

nc是NetCat的简称,在网络调试工具中享有“瑞士军刀”的美誉,此命令功能丰富、短小精悍、简单实用,被设计成一款易用的网络工具,可通过TCP/UDP传输数据。同时,它是一款网络应用调试分析器,因为它可以根据需要创建各种类型的网络服务和连接,在调试RESTful服务时,经常会出现不可预期的结果,在这种情况下可以使用nc模拟启动服务器,把HTTP客户端连接到nc上,在nc上会打印出RESTful服务提供的所有参数,然后一一检查参数,找到问题。

当然,它也可用于传输二进制或者文本文件。

传输文件端

接收文件端

mtr

mtr命令式Linux系统中的网络连通性测试工具,也可以用来检测丢包率。

使用方式

  • mtr -r sina.com

命令输出

其中的第2列为丢包率,可以用来判断网络中两台机器的连通质量。

nslookup

这是一款检测网络中DNS服务器能否正确解析域名的工具命令,并且可以输出。

使用方式

  • nslookup sina.com

命令输出

从输出中可以看到,sina.com域名被正确解析到IP地址66.102.251.33。

traceroute

traceroute可以提供从用户的主机到互联网另一端的主机的路径,虽然每次数据包由同一出发点到达同一目的地的路径可能会不一样,但通常来说大多数情况下路径是相同的。

使用方式

  • traceroute sina.com

命令输出

在输出中记录按序列号从1开始,每个记录代表网络一跳,每跳一次表示经过一个网关或者路由;我们看到每行有是哪个时间,单位是毫秒,指的是这一跳需要的时间。

sar

sar是一个多功能的监控工具,使用简单,不需要管理员权限,可以输出每秒的网卡存取速度,适合线上排查问题时使用。

使用方式

  • sar -n DEV 1 1

命令输出

从输出中可以看到网卡的读写速度和流量,在应急过程中可以用来判断服务器是否上量。

此命令除了可以用于查看网卡的信息,还可以用来收集如下服务的状态信息。

  • -A:所有报告的总和。
  • -u:CPU利用率。
  • -v:进程、I节点、文件和锁表状态。
  • -d:硬盘的使用报告。
  • -r:没有使用的内存页面和硬盘快。
  • -g:串口I/O的情况。
  • -b:缓冲区的使用情况。
  • -a:文件的读写情况。
  • -c:系统的调用情况。
  • -R:进程的活动情况。
  • -y:终端设备的活动情况。
  • -w:系统的交换活动。

netstat

此命令显示网络连接、端口信息等,另外一个命令ss与netstat命令类似,不再单独介绍。

根据进程查找端口

根据进程名查找进程ID

  • ps -elf | grep 进程

输出

获得进程ID为2862。

根据进程ID查找进程开启的端口

  • netstat -nap | grep 2862

输出

获取监听端口为8080。

根据端口查找进程

根据使用端口的进程号

  • netstat -nap | grep 8080

输出

获得进程ID为2862。

根据进程ID查找进程的详细信息

  • ps -elf | grep 2862

输出

iptraf

iptraf是一个实时监控网络流量的交互式的彩色文本屏幕界面。它监控的数据比较全面,可以输出TCP连接、网络接口、协议、端口、网络包大小等信息,但是耗费的系统资源比较多,且需要管理员权限。

使用方式

  • sudo iptraf

在进入主界面之前可以选择不同的选项,在不同的选项下可以查看不同维度的网络信息。

tcpdump

tcpdump是网络状况分析和跟踪工具,是可以用来抓包的实用命令,使用前需要对TCP/IP有所熟悉,因为过滤使用的信息都是TCP/IP格式。

显示来源IP或者目的IP为192.168.1.102的网络通信

  • sudo tcpdump -i eth0 host 192.168.1.102

显示去往192.168.1.102的所有FTP会话信息

  • sudu tcpdump -i eth1 'dst 192.168.1.102 and (port 21 or 20)'

显示去往192.168.1.102的所有HTTP会话信息

  • sudu tcpdump -ni eth0 'dst 192.168.1.102 and tcp and port 8080'

nmap

扫描某一主机打开的端口及端口提供的服务信息,通常用于查看本机有哪些端口对外提供服务,或者服务器有哪些端口对外开放。

使用方式

  • nmap -v -A localhost

从上面的输出中可以看到,有如下端口对外提供服务。

  • Discovered open port 22/tcp on 127.0.0.1
  • Discovered open port 8080/tcp on 127.0.0.1
  • Discovered open port 25/tcp on 127.0.0.1
  • Discovered open port 3306/tcp on 127.0.0.1
  • Discovered open port 631/tcp on 127.0.0.1

其中,8080是Vesta发号器对外提供的服务,3306是MySQL对外提供的服务。

ethtool

ethtool用于查看网卡的配置情况。

使用方式

  • ethtool 网卡名称

命令输出

输出模型中包含1000baseT/Full,所以eth0网卡为千兆网卡。

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页