4

我想知道这个表达式中的输入数据实际上是如何工作的。

char *filter = "dst host 172.17.14.90 and ip";

据我了解,dest host以下 IPv4 地址定义了接收到的数据包应发送到的地址。

手册页在这一点上有点令人困惑,说:

dst host host
如果数据包的 IPv4/v6 目标字段是主机,则为真,主机可以是地址或名称。

http://www.manpagez.com/man/7/pcap-filter/

这就是它的意思吗?至于那and ip一点我不知道。

4

1 回答 1

5

你是对的第一点:

dst host 172.17.14.90

表示数据包应发送至172.17.14.90

第二个:

ip

就像手册页所说的是:

ether proto ip

这意味着必须使用 IP 协议发送数据包。

因此,总结一下:必须使用 IP 协议将数据包发送到具有 IP 地址的主机172.17.14.90


作为说明,上述内容可以使用以下方式更简单地表达:

ip dst host 172.17.14.90

(较短的语法host在手册页中的解释附近进行了解释)

于 2012-07-26T13:53:20.720 回答