tcpdump提取源IP

需求: 使用tcpcopy複製現網到測試機器,但是測試機器並不知道導入流量的OC機器IP是多少
查詢tcpdump的參數,然而並沒有參數可以直接提取源IP。於是採用了比較土的辦法,按部就班的提取

tcpdump抓包過濾出源IP
tcpdump -i eth0 port 36524 -nn -c 5000 2>/dev/null | awk '{print $3}' | awk -F '.' '{print $1"."$2"."$3"."$4}' | sort | uniq -c | grep -v "`ifconfig | grep -A3 "eth0" | grep "inet" | awk '{print $2}'`"

這裏寫圖片描述

網站看到一個好的腳本,可以不會使用perl啊,修改了下滿足自己的需要,如下
高效過濾tcpdump輸出取源IP

tcpdump -i eth0 -Nnn port 36524  2>/dev/null | perl -alne 'BEGIN{$| = 1};$ip = $1 if $F[2] =~ /([\d.]+)\.\d+/; print $ip unless $conn{$ip}++;'

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章