Linux中ngrep命令怎么用

发布时间:2022-02-11 11:42:38 作者:小新
来源:亿速云 阅读:156

这篇文章给大家分享的是有关Linux中ngrep命令怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Linux常用命令ngrep命令 是grep命令的网络版,他力求更多的grep特征,用于搜寻指定的数据包。

Linux中ngrep命令怎么用

ngrep

方便的数据包匹配和显示工具

补充说明

正由于安装ngrep需用到libpcap库, 所以支持大量的操作系统和网络协议。能识别TCP、UDP和ICMP包,理解bpf的过滤机制。

安装

ngrep命令的下载地址:http://ngrep.sourceforge.net/,libpcap下载地址:http://www.tcpdump.org/。先用yum install libpcap完全安装libpcap,注意有时候用libpcap安装包安装的不完整会影响ngrep的使用。

如果yum无法安装就用以下步骤安装libpcap:

 wget http://www.tcpdump.org/release/libpcap-1.3.0.tar.gz tar -zxf libpcap-1.3.0.tar.gz cd libpcap-1.3.0 ./configure make && make install

ngrep的安装就是 configure/make/make install 三部曲。

注:configure时是遇到 please wipe out all unused pcap installations,添加以下选项:

 ./configure --with-pcap-includes=/usr/local/include/pcap

在安装后输入ngrep来验证下安装是否成功。

语法

 ngrep

选项

 -e # 显示空数据包 -i # 忽略大小写 -v # 反转匹配 -R # don't do privilege revocation logic -x # 以16进制格式显示 -X # 以16进制格式匹配 -w # 整字匹配 -p # 不使用混杂模式 -l # make stdout line buffered -D # replay pcap_dumps with their recorded time intervals -t # 在每个匹配的包之前显示时间戳 -T # 显示上一个匹配的数据包之间的时间间隔 -M # 仅进行单行匹配 -I # 从文件中读取数据进行匹配 -O # 将匹配的数据保存到文件 -n # 仅捕获指定数目的数据包进行查看 -A # 匹配到数据包后dump随后的指定数目的数据包 -s # set the bpf caplen -S # set the limitlen on matched packets -W # 设置显示格式byline将解析包中的换行符 -c # 强制显示列的宽度 -P # set the non-printable display char to what is specified -F # 使用文件中定义的bpf(Berkeley Packet Filter) -N # 显示由IANA定义的子协议号 -d # 使用哪个网卡,可以用-L选项查询 -L # 查询网卡接口

实例

捕捉cloudian:18080端口的request和response,-W byline用来解析包中的换行符,否则包里的所有数据都是连续的,可读性差。-d lo是监听本地网卡:

 ngrep -W byline -d lo port 18080

捕捉amazon:80端口的request和response。-d eth0是用来监听对外的网卡:

 ngrep -W byline -d eth0 port 80

可以用-d any来捕捉所有的包:

 ngrep '[a-zA-Z]' -t -W byline -d any tcp port 18080

捕获字符串.flv,比如要查看在Web Flash 视频中的.flv文件的下载地址:

 ngrep -d3 -N -q \.flv interface: \Device\TNT_40_1_{670F6B50-0A13-4BAB-9D9E-994A833F5BA9} (10.132.0.0/2 55.255.192.0) match: \.flv

打开一个视频页面:

 T(6) 10.132.34.23:24860 -> 61.142.208.154:80 [AP] GET /f59.c31.56.com/flvdownload/12/19/ggyg7741@56.com_56flv_zhajm_119556973 97.flv HTTP/1.1..accept: */*..Referer: http://www.56.com/flashApp/v_player_ site.swf..x-flash-version: 9,0,45,0..UA-CPU: x86..Accept-Encoding: gzip, de flate..User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)..host: f59.r.56.com..Connection: Keep -Alive..Cookie: whistoryview=23423759-23635627-23423344-23171935-23058374-2 3081156-23207350-22395727-; geoip=............; wl_all_s=y....

OK。地址已经找到了,就是http://f59.c31.56.com/flvdownload/12/19/ggyg7741@56.com_56flv_zhajm_11955697397.flv

加个-W byline参数后,将解析包中的换行符:

 T(6) 2007/11/25 15:56:12.192619 10.132.34.23:26365 -> 59.151.21.101:80 [AP] GET /aa.flv HTTP/1.1. Accept: */*. Accept-Language: zh-cn. UA-CPU: x86. Accept-Encoding: gzip, deflate. User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.5072 7; .NET CLR 3.0.04506.30). Host: www.google.cn. Connection: Keep-Alive. Cookie: PREF=id=a0b2932c336477e9:TB=4:NW=1:TM=1187877372:LM=1187956074:S=Y1Fzndp rT3vFo7ac; SID=DQAAAHcAAABJCEXeOVLHu2rIfb5BfKP3GG9PbhJDEkXsLTV8y0f_lvSd2Y46Q0FPt 83CnEs9rxA1xBDM9mLR8-ckWeScyOQA8PyYnX5u5OjFvjfRbDg_FDZfwxhRzqS9KPZv26pjnsUxs0FDM 1xpJ5AgDn38pXtlCdkksJ0-cbiIWoA61oHWMg; NID=7=AvJxn5B6YOLLxoYz4LLzhIbNsQUQiulRS6U JGxdBniQBmXm99y7L-NBNORN82N3unmZSGHFPfePVHnLK2MjYjglyXZhU9x7ETXNBnY3NurNijHDhJ7K yi7E53UBOcv4V.

感谢各位的阅读!关于“Linux中ngrep命令怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. 使用linux的ngrep命令数据包匹配和显示工具
  2. linux中iostat命令怎么用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux ngrep

上一篇:Linux中nl命令怎么用

下一篇:Linux中ifup命令有什么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》