Linux

告訴 tcpdump 不要在輸出中包含埠號

  • February 1, 2013

如何告訴 tcpdump 在輸出中不包含埠號?現在它包括已解析的 IP + 已解析的埠。我只需要解析的 IP 地址(主機名)

你只想要一個IP地址列表嗎?

如果是這樣,這將提取到 IP 地址

sudo tcpdump -n | cut -d ' ' -f 5 | awk -F. '{ if (NF == 2) { print $1 } else { print $1 FS $2 FS $3 FS $4 }}'

這將從IP地址中提取

sudo tcpdump -n  | cut -d ' ' -f 3 | awk -F. '{ if (NF == 2) { print $1 } else { print $1 FS $2 FS $3 FS $4 }}'

ipv6 安全。

如果您真的只想要埠以外的所有內容,這將解決問題(需要 gawk)

sudo tcpdump | gawk '{
split($3, from, ".");
$3 = from[1]
for (i=2; i<length(from); i++) {
   $3 = $3 "." from[i] 
}

split($5, to, ".");
$5 = to[1]
for (i=2; i<length(to); i++) {
   $5 = $5 "." to[i] 
}

print
}'

引用自:https://serverfault.com/questions/474414