tcpdump教程与示例 转载

tcpdump 是全球领先的网络分析工具——将强大功能与简洁性结合于一个命令行界面中。本指南将向您展示如何使用它。 tcpdump 是一款功能强大的命令行数据包分析工具。它允许您实时捕获并检查网络流量。对于网络管理员、安全专业人员以及任何需要理解网络行为的人来说,这个工具都是无价的。 在本教程中,我们将探讨 50 个使用 tcpdump 的实用示例。这些示例将涵盖广泛的使用场景,从基础流量捕获到高级过滤与分析。 基本语法 tcpdump 的基本语法如下: tcpdump [options] [expression] options:修改 tcpdump 的行为,例如指定要捕获的接口或输出格式。 expression:定义要捕获的流量类型。在这里您可以指定主机名、IP 地址、端口、协议以及其他条件。 在接口上捕获流量 要捕获某个特定接口上的所有流量,请使用 -i 标志并在其后指定接口名称。例如,要捕获 eth0 接口上的流量: tcpdump -i eth0 要查看所有可用接口的列表,请使用以下命令: tcpdump -D 捕获发往/来自特定主机的流量 要捕获发往或来自某个特定主机的流量,请使用 host 关键字并在其后指定主机名或 IP 地址: tcpdump host 192.168.1.100 这将捕获与 IP 地址为 192.168.1.100 的主机之间的所有流量。 在特定端口上捕获流量 要捕获某个特定端口上的流量,请使用 port 关键字并在其后指定端口号: tcpdump port 80 这将捕获端口 80(HTTP)上的所有流量。 组合过滤条件 您可以使用 and、or 和 not 运算符来组合过滤条件。例如,要捕获与主机 192.168.1.100 在端口 80 上的所有往返流量,请使用: tcpdump host 192.168.1.100 and port 80 要捕获来自 192.168.1.100 且端口为 80 或 443 的流量,请使用: ...

二月 20, 2026 · by NOSAE

iptables入门

基础概念 iptables 是 Linux 系统中一个防火墙管理工具,真正实现防火墙功能的是位于内核的 netfilter,我们配置了 iptables 规则后 Netfilter 通过这些规则来进行防火墙过滤等操作。防火墙工作在 OSI 中的第 4 层。它控制网络数据包的进出、转发和修改。 从图中可以看到,内核在 IP 协议栈的关键位置注册了若干 hook 点,每个 hook 都可以挂载规则链。数据包流经路径时,会依次经过这些 hook。 要理解 iptables,最重要的是掌握其 “四表五链” 的架构。 五链 链是在某个 hook 点执行的一组规则,链决定了在数据包传输的哪个阶段触发规则。 Linux 内核在 IP 协议栈关键位置定义了五个 hook,对应五个“内置链”: PREROUTING:数据包刚到达网卡,还未进行路由决策。 INPUT:数据包目的地是本机。 FORWARD:数据包只是路过本机,转发到其他地方。 OUTPUT:本机产生的数据包向外发送。 POSTROUTING:数据包即将离开网卡。 四表 表决定了对数据包进行什么类型的操作。主要的表有四个: Filter:负责放行或拦截,这是最常用的表。 NAT:负责地址转换。 Mangle:负责修改数据包,如修改 TTL、打标记。 Raw:负责配置豁免,用于跳过连接跟踪。 链与表的关系 并不是每一个“表”都存在于每一个“链”中。它们的关系就像是一张矩阵图,每个交叉点代表一个具体的处理时机。 链 (Chains) \ 表 (Tables) Raw Mangle Filter NAT PREROUTING ✅ ✅ ✅ INPUT ✅ ✅ FORWARD ✅ ✅ OUTPUT ✅ ✅ ✅ ✅ POSTROUTING ✅ ✅ 当一个数据包经过你的机器时,它会按以下顺序穿越这些表和链: ...

二月 18, 2026 · by NOSAE