首页 > 所有文章 > 行业 >文章详情

linux命令获取本机ip(centos查看ip地址和网关地址)

时间:2024-02-12 08:11:57 浏览量:314

在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。

netstat命令各个参数说明如下:

以查看当前所有tcp/udp端口为例:

对上述返回内容进一步解释如下:

Proto :协议名(tcp协议还是udp协议)

recv-Q : 网络接收队列

表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,recv() 如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击。

send-Q : 网路发送队列 对方没有收到的数据或者说没有Ack的,还是本地缓冲区. 如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快。

这两个值通常应该为0,如果不为0可能是有问题的。packets在两个队列里都不应该有堆积状态。可接受短暂的非0情况。

从步骤一的结果中可以看到22端口对应的链路的 send-Q中堆积了大量的数据包 ,可以判定是发送数据给目的地址的时候出现了阻塞的问题,导致了包堆积在本地缓存中,不能成功发出去。

与本机端口通信的外部socket。显示规则与Local Address相同

共有11种链路状态 Unknown,共计12种state值,前面11种是按照TCP连接建立的三次握手和TCP连接断开的四次挥手过程来描述的。


备注

PID即进程id,Program即使用该socket的应用程序

netstat -t/-u/-l/-r/-n【显示网络相关信息,-t:TCP协议,-u:UDP协议,-l:监听,-r:路由,-n:显示IP地址和端口号】

注:以下返回内容中,我用xxx注释掉了一部分敏感ip地址。

注:删减了部分结果

1.查找请求数前20个IP(常用于查找攻来源):

2.查找较多time_wait连接:

3.找查较多的SYN连接

4.根据端口列进程