ngrep作为一个linux上的网络抓包工具,还是比较强大的。
工作中的主要内容分是分布式通信系统,几乎操作都涉及到网络,因此网络抓包工具是必不可少的工具。但是,工作了六年,ngrep也用了六年,但是六年中,始终在使用一个命令格式:
ngrep -p -q -i -W byline port 5060
没有错,这就是用来抓SIP包的命令工具,因为我的工作主要是与SIP相关。
今天,到客户现场解决问题,与HTTP包有关,所以把port改为了80进行抓包,但是发现到本地80端口的实现太多,必须过滤才行,需要过滤出特定源IP地址的包。在网上搜了一番,这是没有找到想要的答案。好吧,算我工作六年白做了,竟然连这个工具都用不好。
哇哦,终于找到了:
ngrep -t '^(GET|POST)' 'src host 192.168.1.100 and dst port 80'
没有错,这个命令是网上搜到了,附上URL:http://www.stearns.org/doc/ngrep-intro.current.html。