微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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}++;'

原文地址:https://www.jb51.cc/bash/388301.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐