后台开发核心技术与应用实践读书笔记(八)
第8章 网络分析工具
8.1 ping
使用ping检查端对端网络的联通性
8.2 tcpdump
-
可以将网络中传送的数据包的“头”完全截取下来提供分析,支持对协议、主机、网络和端口的过滤
-
tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ] [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]
[ -T 类型 ] [ -w 文件名 ] [表达式 ](1)tcpdump -i eth0 host 192.168.0.250 —–在网口eth0上抓取主机地址为192.168.0.250的所有数据包。
(2)tcpdump -i eth0 net 192.168.0.0/24 —— 在网口eth0上抓取网络地址为192.168.0.0/24的所有数据包
(3)tcpdump -i eth0 port 80 —— 在网口eth0上抓取端口为80的所有数据包(注意,这里不区分是源端口还是目的端口)
当然,我们也可以指定源端口或目的端口
(4)tcpdump -i eth0 src port 80 and dst port6100 — 在网口eth0上抓取源端口为80且目的端口为6100的数据包,这里用到了and逻辑运算符,后面再介绍
(5)tcpdump -i eth0 icmp — 在网口eth0上抓取所有icmp协议的数据包
8.3 netstat
-
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机个端口的网络连接情况
-
(1)netstat -a:列出所有端口(包括未监听端口)
(2)netstat -at:列出所有tcp端口
(3)netstat -au:列出所有udp端口
(4)netstat -l:只显示监听端口
(5)netstat -lt:只列出所有监听 tcp 端口
(6)netstat -lu:只列出所有监听 udp 端口
(7)netstat -lx:只列出所有监听 UNIX 端口
(8)netstat -p:在 netstat 输出中显示 PID 和进程名称
(9)netstat -an:在 netstat 输出中不显示主机,端口和用户名。将会使用数字代替那些名称。
(10)netstat -c:持续输出 netstat 信息
8.4 lsof
-
lsof是一个列出当前系统打开文件的工具
-
(1)lsof -i :6666:查看6666端口现在运行情况
(2)lsof -a -u root -d txt:查看所属root用户进程所打开的文件,文件类型为.txt
(3)lsof/dev/tty1:监控打开的文件和设备。查看设备/dev/tty1被哪些进程占用
(4)lsof -c server:监控程序。查看指定程序server打开的文件
(5)lsof -u user_name:监控用户。查看指定用户user_name打开的文件