加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 创业 > 经验 > 正文

运维工程师秘籍:请收好 Linux 网络命令集锦

发布时间:2021-06-05 00:18:26 所属栏目:经验 来源:互联网
导读:看着 kali linux 上百个网络命令,我陷入了沉思。专业的网络命令实在是太多了,如果要罗列,上千个也是有的。个人不是渗透测试工作者,大部分功能只知皮毛。所以

看着 kali linux 上百个网络命令,我陷入了沉思。专业的网络命令实在是太多了,如果要罗列,上千个也是有的。个人不是渗透测试工作者,大部分功能只知皮毛。所以本文是非常浅显的技术总结,仅聚焦工作中常用到的一些 Linux 命令。

由于nio的普及,ck10k的问题已经成为过去式。现在随便一台服务器,就可以支持数十万级别的连接了。那么我们来算一下,100万的连接需要多少资源。

首先,每一个连接都是文件句柄,所以需要文件描述符数量支持才行,每一个socket内存占用15k-20k之间,这样,仅维护相应 socket,就需要20G内存;而广播一个1KB的消息需要占用的带宽为1000M!

查看当前系统的连接

如何看当前系统有多少连接呢?可以使用netstat结合awk进行统计。如下脚本,统计了每一种状态的tcp连接数量

# netstat -antp | awk '{a[$6]++}END{ for(x in a)print x,a[x]}' 

 

LISTEN 41 

 

CLOSE_WAIT 24 

 

ESTABLISHED 150 

 

Foreign 1 

 

TIME_WAIT 92 

但如果你在一台有上万连接的服务器上执行这个命令,你可能会等上很长时间。所以,我们有了第二代网络状态统计工具:netstat => ss。

# ss -s 

 

Total: 191 (kernel 220) 

 

TCP: 5056 (estab 42, closed 5000, orphaned 3, synrecv 0, timewait 5000/0), ports 3469 

 

... 

netstat属于net-tools工具集,而ss属于iproute。其命令对应如下,是时候和 net-tools 说 Bye 了。

ss命令

基本使用

我们按照使用场景来看下ss的用法。

查看系统正在监听的tcp连接

ss -atr 

 

ss -atn #仅ip 

查看系统中所有连接

ss -alt 

查看监听444端口的进程 pid

ss -ltp | grep 444 

查看进程555占用了哪些端口

ss -ltp | grep 555 

显示所有 UDP 连接

ss -u -a 

查看TCP sockets,使用-ta选项

查看UDP sockets,使用-ua选项

查看RAW sockets,使用-wa选项

查看UNIX sockets,使用-xa选项

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读