tcpdump各种抓包方式
1. 在源 Pod 抓包
目标:捕获从 Pod-A 发出的包和进入 Pod-A 的包。
命令:
-
捕获从
cni0接口发出的包:kubectl exec -it <pod-a-name> -- tcpdump -i cni0 -nn tcp dst port 80 -
捕获进入
cni0接口的包:kubectl exec -it <pod-a-name> -- tcpdump -i cni0 -nn tcp src port 80
2. 在源节点抓包
目标:捕获在源节点的网络接口上传输的包。
命令:
-
捕获从
flannel.1隧道接口发出的包:sudo tcpdump -i flannel.1 -nn tcp dst port 80 -
捕获进入
eth0物理接口的包:sudo tcpdump -i eth0 -nn tcp dst port 80
3. 在目标节点抓包
目标:捕获在目标节点的网络接口上传输的包。
命令:
-
捕获从
eth0物理接口发出的包:sudo tcpdump -i eth0 -nn tcp src port 80 -
捕获进入
flannel.1隧道接口的包:sudo tcpdump -i flannel.1 -nn tcp src port 80
4. 在目标 Pod 抓包
目标:捕获到达 Pod-B 的包和从 Pod-B 发出的包。
命令:
-
捕获进入
cni0接口的包:kubectl exec -it <pod-b-name> -- tcpdump -i cni0 -nn tcp src port 80 -
捕获从
cni0接口发出的包:kubectl exec -it <pod-b-name> -- tcpdump -i cni0 -nn tcp dst port 80
5、各种抓包方式
-
捕获所有从 IP 地址
192.168.1.100发出的数据包:tcpdump -nn src 192.168.1.100 -
捕获所有发往 IP 地址
192.168.1.101的数据包:tcpdump -nn dst 192.168.1.101 -
捕获在两个特定 IP 地址之间传输的数据包:
tcpdump -nn src 192.168.1.100 and dst 192.168.1.101 -
捕获所有目标端口为 80 的 TCP 数据包:
tcpdump -nn tcp dst port 80
- 捕获所有发送到特定 IP 地址和端口的 TCP 数据包:
tcpdump -nn tcp dst host 192.168.1.100 and dst port 8080
- 捕获所有目标端口为 443 的 TCP 数据包:
tcpdump -nn tcp dst port 443

浙公网安备 33010602011771号