Netstat 用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。 通过netstat可以查看网络连接、端口号等占用情况
查看进程和端口号相关:
1. 查看TCP/UDP端口:
netstat -tuoln
2. 查看进程名运行的端口号:
netstat -anp|grep 进程名
当需要监控某个服务的端口号时可以首先获取该服务的监听端口号,如tomact进程
netstat -anp|grep tomcat
3. 根据端口查看运行的进程:
netstat -anp|grep 端口号
或
lsof -i:端口号
通常用于查看某个端口号下建立的连接数,如8083端口号下的连接数统计:
netstat -anp|grep:8083|wc -l
4. netstat -tln 查看服务监听端口
其它:
1. 结束进程
kill -15 pid 立即释放资源
kill -9 pid 不会立即释放资源
2. 查看进程
ps aux
查看指定服务的进程号,如tomcat服务
ps aux|grep tomcat
3. 查看网卡信息:
cat /sbin/ifconfig
4. 查看cpu配置
cat /proc/cpuinfo
5. 查看mem配置
cat /proc/meminfo
6. 修改hosts配置
vim /etc/hosts
Netstat 详细参数列表
NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]
-a 显示所有连接和监听端口。
-b 显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件 拥有多个独立组件,并且在这些情况下包含于创建连接或监听端口的组件序列被显示。 这种情况下,可执行组件名在底部的 [] 中,顶部是其调用的组件,等等,直到 TCP/IP 部分。注意此选项可能需要很长时间,如果没有足够权限可能失败。
-e 显示以太网统计信息。此选项可以与 -s 选项组合使用。
-n 以数字形式显示地址和端口号。
-o 显示与每个连接相关的所属进程 ID。
-p proto 显示 proto 指定的协议的连接;proto 可以是 下列协议之一: TCP、UDP、TCPv6 或 UDPv6。
如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。
-r 显示路由表。
-s 显示按协议统计信息。默认地,显示 IP、 IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息;
-p 选项用于指定默认情况的子集。
-v 与 -b 选项一起使用时将显示包含于 为所有可执行组件创建连接或监听端口的 组件。
interval 重新显示选定统计信息,每次显示之间 暂停时间间隔(以秒计)。按 CTRL+C 停止重新 显示统计信息。如果省略,netstat 显示当前 配置信息(只显示一次)
Netstat的一些常用选项
netstat -s——本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。
netstat -e——本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量。
netstat -r——本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。
netstat -a——本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接,断开连接(CLOSE_WAIT)或者处于联机等待状态的(TIME_WAIT)等
netstat -n——显示所有已建立的有效连接。