**1、 netstat:
(1)命令功能:
Netstat 是一款命令行工具,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以及 unix 套接字,另外还能列出处于监听状态(即等待接入请求)的套接字。(它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息)
(2)命令格式:
netstat - 打印网络连接、路由表、连接的数据统计、伪装连接以及广播域成员。
(3)命令实例:
a、列出所有当前的连接。使用 -a 选项即可。
b、使用 -t选项列出 TCP 协议的连接;
使用 -u 选项列出 UDP 协议的连接;
c、默认情况下 netstat 会通过反向域名解析技术查找每个 IP 地址对应的主机名。这会降低查找速度。如果你觉得 IP 地址已经足够,而没有必要知道主机名,就使用 -n 选项禁用域名解析功能。
d、任何网络服务的后台进程都会打开一个端口,用于监听接入的请求。这些正在监听的套接字也和连接的套接字一 样,也能被 netstat 列出来。使用 -l 选项列出正在监听的套接字
e、查看端口和连接的信息时,能查看到它们对应的进程名和进程号对系统管理员来说是非常有帮助的。举个例子,Apache 的 httpd 服务开启80端口,如果你要查看 http 服务是否已经启动,或者 http 服务是由 apache 还是 nginx 启动的,这时候你可以看看进程名。使用 -p 选项查看进程信息。
f、netstat 可以打印出网络统计数据,包括某个协议下的收发包数量
g、netstat 也能打印网络接口信息,-i 选项就是为这个功能而生。
h、我们可以使用 netstat 的 -c 选项持续输出信息。这个命令可持续输出 TCP 协议信息。
i、选项 -g 会输出 IPv4 和 IPv6 的多播组信息
**2、 ping :
(1)命令功能:
因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP;回声请求消息给目的地并报告是否收到 所希望的ICMP echo 。它是用来检查网络是否通畅或者网络连接速度的命令
原理:ping命令通常用来作为网络可用性的检查。向指定的网络地址发送一定长度的数据包,按照约定,若指定网络地址存在的话,会返回同样大小的数据包,当然,若在特定时间内没有返回,就是“超时”,会被认为指定的网络地址不存在。。
ping和ICMP的关系:ping命令发送数据使用的是ICMP协议。
(2)使用Ping检查连通性有六个步骤:
a、使用ipconfig /all观察本地网络设置是否正确;
b、Ping127.0.0.1,127.0.0.1回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;
c、Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;
d、 Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)
e、 Ping本地DNS地址,这样做是为了检查本地DNS服务器是否工作正常。
f、Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。 转载:https://blog.csdn.net/ting_chuzhuang/article/details/65446841
**3、lsof :
(1)命令功能: 功能是列出当前系统打开文件的工具。
在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文 件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。 因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。
(2)命令格式:
lsof [参数][文件];
可打开的文件: 普通文件、目录、网络文件系统的文件、字符或设备文件、(函数)共享库、管道,命名管道、符号链接、网络文件(例如:NFS file、网络socket,unix域名socket)还有其它类型的文件,等等
(3)命令参数:
-a 列出打开文件存在的进程
-c<进程名> 列出指定进程所打开的文件
-g 列出GID号进程详情
-d<文件号> 列出占用该文件号的进程
+d<目录> 列出目录下被打开的文件
+D<目录> 递归列出目录下被打开的文件
-n<目录> 列出使用NFS的文件
-i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip )
-p<进程号> 列出指定进程号所打开的文件
-u 列出UID号进程详情 转载:https://blog.csdn.net/zdp072/article/details/41706541
**4、tcpdump :
(1)命令功能:
tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或 端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
5、 ip :
(1)命令功能:
用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具
(2)命令格式:
ip(选项)(参数)
(3)命令选项和参数:
选项:
-V:显示指令版本信息;
-s:输出更详细的信息;
-f:强制使用指定的协议族;
-4:指定使用的网络层协议是IPv4协议;
-6:指定使用的网络层协议是IPv6协议;
-0:输出信息每条记录输出一行,即使内容较多也不换行显示;
-r:显示主机时,不使用IP地址,而使用主机的域名。
参数:
网络对象:指定要管理的网络对象;
具体操作:对指定的网络对象完成具体操作;
help:显示网络对象支持的操作命令的帮助信息。
(4)命令实例:
a、用ip命令显示网络设备的运行状态
b、显示更加详细的设备信息
c、显示核心路由表
d、显示邻居表
6、 ss :
(1)命令功能:
ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets,RAW sockets, Unix domain sockets等等统计. 它比其他工具展示等多tcp和state信息. 它是一个非常实用、快速、有效的跟踪IP连接和sockets的新工具.SS命令可以提供如下信息:
a、所有的TCP sockets
b、 所有的UDP sockets
c、所有ssh/ftp/ttp/https持久连接
d、所有连接到Xserver的本地进程
e、使用state(例如:connected, synchronized, SYN-RECV, SYN-SENT,TIME-WAIT)、地址、端口过滤
f、所有的state FIN-WAIT-1 tcpsocket连接以及更多
* 7、nc :
(1)命令功能:
a、实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
b、端口的扫描,nc可以作为client发起TCP或UDP连接
c、机器之间传输文件
d、机器之间网络测速
(2)命令参数:
a、 -l:用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。
b、 -p <port>:暂未用到
c、-s :指定发送数据的源IP地址,适用于多网卡机
d、-u:指定nc使用UDP协议,默认为TCP
e、 -v:输出交互或出错信息,新手调试时尤为有用
f、-w:超时秒数,后面跟数字
g、-z:表示zero,表示扫描时不发送任何数据
8 、ifstat :
(1)命令功能:
用于查看网络流量;
ifstat系统没有默认安装,需要使用apt-get命令安装,或者下载源码安装
9、 ifconfig:
(1)命令功能:
用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。
(2)命令格式:
ifconfig [网络设备] [参数]
(3)命令实例:
a、显示网络设备信息(激活状态的)
b、启动关闭指定网卡
c、为网卡配置和删除IPv6地址
d、用ifconfig修改MAC地址
10、 iptraf :
(1)命令功能:
可以实时地监视网卡流量,可以生成网络协议数据包信息、以太网信息、网络节点状态和ip校验和错误等信息。