如何使 tcpdump 显示 ip 和端口号,但不显示主机名和协议

mis*_*yes 51 networking linux tcpdump

我正在使用 tcpdump 进行一些测试,我想查看 IP 和端口号,但 tcpdump 的输出就像

IP pl1snu.koren.kr.http > kitch.pl.sophia.inria.fr.dnp: Flags [P.], seq 54:72, ack 1, win 5792, length 18
Run Code Online (Sandbox Code Playgroud)

它只显示主机名和 http 协议,很容易知道它是 80 但对于 dnp 我必须搜索

那么是否有可能如何使 tcpdump 显示 ip 和端口号,但不显示主机名和协议,如果是这样,如何?谢谢

hea*_*vyd 61

添加-n到您的tcpdump命令行。

tcpdump 联机帮助页

-n Don't convert addresses (i.e., host addresses, port numbers, etc.) to names.
Run Code Online (Sandbox Code Playgroud)

还应该注意的是,在 Fedora(可能还有其他衍生产品:RHEL、CentOS 等)上,他们已经修补了原始 tcpdump 版本,以包含一个单独的选项-nn来删除端口号。从联机帮助页

-n     Don't convert host addresses to names.   This  can  be  used  to
              avoid DNS lookups.

-nn    Don't convert protocol and port numbers etc. to names either.
Run Code Online (Sandbox Code Playgroud)

  • 端口号仍然使用“-n”转换为协议名称 (2认同)

小智 8

我使用-nn参数。

-nn: 不要解析主机名或端口名。

运行它:

tcpdump -nn 
Run Code Online (Sandbox Code Playgroud)