目录

网络工具

# dig 命令

# TTL

在缓存服务器上的缓存时间

# 常见 DNS 记录的类型
类型 目的
A 地址记录,用来指定域名的 IPv4 地址,如果需要将域名指向一个 IP 地址,就需要添加 A 记录。
AAAA 用来指定主机名(或域名)对应的 IPv6 地址记录。
CNAME 如果需要将域名指向另一个域名,再由另一个域名提供 ip 地址,就需要添加 CNAME 记录。
MX 如果需要设置邮箱,让邮箱能够收到邮件,需要添加 MX 记录。
NS 域名服务器记录,如果需要把子域名交给其他 DNS 服务器解析,就需要添加 NS 记录。
SOA SOA 这种记录是所有区域性文件中的强制性记录。它必须是一个文件中的第一个记录。
TXT 可以写任何东西,长度限制为 255。绝大多数的 TXT记录是用来做 SPF 记录(反垃圾邮件)。
# 使用示例
## 跟踪解析过程
dig www.google.com +trace

## 精简输出,只保留解析结果
dig i.camsea.top +short

# lsof 命令

显示所有打开的网络连接

-i

扩展参数: [46][protocol][@hostname|hostaddr][:service|port]

显示所有打开的网络连接以及正在使用该连接的进程的名称

-n

禁止将网络号转换为主机名

-P

禁止将端口号转换为端口名

-s

通常强制lsof显示文件大小。但是,当与-i标志配对时,-s的工作方式有所不同。相反,它允许用户指定要返回的命令的协议和状态。

-r

扩展参数:[t[m<fmt>]]

重复显示。示例:-r10 每 10 秒打印一次,-r10"m==== %T ====" 每 10 秒打印一次,并以自定义分隔符显示

# 使用示例:
## 只看 IPV6 的连接
lsof -i6

## 查询 TCP 协议并且 端口是 25 的连接
lsof -iTCP:25

## 查看 指定地址的连接
lsof -i @82.156.91.132

## 查询 TCP 协议且端口是 433 或 80 的连接
lsof -nP -iTCP:443,80

## 查询 TCP 协议且端口是 433 或 80 LISTEN 状态的连接
lsof -nP -iTCP:443,80 -sTCP:LISTEN

## 可以直接按 域名 查询
lsof -nP -i @www.1970unix.com:443,80

## 每 5 秒打印一次
lsof -nP -i @www.1970unix.com:443,80 -r5"m==== %T ===="

## 查看哪些进程打开了某个目录下的文件,不递归
lsof +d /var/log

## 查看哪些进程打开了某个目录下的文件,递归
lsof +D /var/log

## 查看某个进程打开的所有文件
lsof -p 1152

# netstat 命令

展示当前网络状态

# 参数:

-a

展示所有 sockets (默认展示所有已连接的)

-l

展示 listening 状态的 sockets

-p

展示 sockets 对应的 PID 或者应用程序的名字

-n

以 IP:PORT 的形式展示,不转换为服务名 (以端口号展示,例如:iZj6c8612hylinkc0:https 展示为 172.17.29.239:443)

-t

tcp 服务

-u

udp 服务

# 使用示例
## 展示 tcp udp 的状态
netstat -aultnp

## 连接最多的前 10 个 IP
netstat -aultnp | grep -niv -E 'and|address|0.0.0.0' | awk '{print $5}' | awk -F: '{print $1}'| sort | uniq -c | sort -nr | head -10

# tcpdump 命令

监控网络流量

# 参数:

-i

指定网络接口,any 表示所有接口,示例 tcpdump -i pktap,lo0,en0

-nn

不解析 IP 地址和端口号的名称

-c

限制要抓取的网络包的个数,示例:tcpdump -c 5

-w

保存到指定文件,示例:tcpdump -i en5 -w /tmp/tcpdump.pcap

# 使用示例:
## 监视 www.1970unix.com 这个地址的通信数据包,包括进入 和 离开的数据
tcpdump -i en5 -nn host www.1970unix.com

## 监视 node1 发出去的数据包
tcpdump -i en5 -nn src host node1

## 监视 node1 接收到的数据包
tcpdump -i en5 -nn dst host node1

## 抓取到本机 22 端口的数据包
tcpdump -i en5 -nn tcp dst port 22

# Wireshark

上次更新: 2024/11/05, 03:15:29