Linux常用网络命令整理
-c 在收到指定的数量的分组后,tcpdump就会停止。
-C 在将一个原始分组写入文件之前,检查文件当前的大小是否超过了参数file_size 中指定的大小。如果超过了指定大小,则关闭当前文件,然后在打开一个新的文件。参数 file_size 的单位是兆字节(是1,000,000字节,而不是1,048,576字节)。
-d 将匹配信息包的代码以人们能够理解的汇编格式给出。
-dd 将匹配信息包的代码以c语言程序段的格式给出。
-ddd 将匹配信息包的代码以十进制的形式给出。
-D 打印出系统中所有可以用tcpdump截包的网络接口。
-e 在输出行打印出数据链路层的头部信息。
-E 用spi@ipaddr algo:secret解密那些以addr作为地址,并且包含了安全参数索引值spi的IPsec ESP分组。
-f 将外部的Internet地址以数字的形式打印出来。
-F 从指定的文件中读取表达式,忽略命令行中给出的表达式。
-i 指定监听的网络接口,多网卡时很有用。
-l 使标准输出变为缓冲行形式,可以把数据导出到文件。
-L 列出网络接口的已知数据链路。
-m 从文件module中导入SMI MIB模块定义。该参数可以被使用多次,以导入多个MIB模块。
-M 如果tcp报文中存在TCP-MD5选项,则需要用secret作为共享的验证码用于验证TCP-MD5选选项摘要(详情可参考RFC 2385)。
-b 在数据-链路层上选择协议,包括ip、arp、rarp、ipx都是这一层的。
-n 不把网络地址转换成名字。
-nn 不进行端口名称的转换,即不进行域名解析。
-N 不输出主机名中的域名部分。例如,‘nic.ddn.mil‘只输出’nic‘。
-t 在输出的每一行不打印时间戳。
-O 不运行分组分组匹配(packet-matching)代码优化程序。
-P 不将网络接口设置成混杂模式。
-q 快速输出。只输出较少的协议信息。
-r 从指定的文件中读取包(这些包一般通过-w选项产生)。
-S 将tcp的序列号以绝对值形式输出,而不是相对值。
-s 从每个分组中读取最开始的snaplen个字节,而不是默认的68个字节。
-T 将监听到的包直接解释为指定的类型的报文,常见的类型有rpc远程过程调用)和snmp(简单网络管理协议;)。
-t 不在每一行中输出时间戳。
-tt 在每一行中输出非格式化的时间戳。
-ttt 输出本行和前面一行之间的时间差。
-tttt 在每一行中输出由date处理的默认格式的时间戳。
-u 输出未解码的NFS句柄。
-v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。
-vv 输出详细的报文信息。
-w 直接将分组写入文件中,而不是不分析并打印出来,保存到文件时很有用。
如果没有给出任何条件,则网络上所有的信息包将会被截获。在表达式中一般如下几种类型的关键字:
例如host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0指明202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host。
第二种是确定传输方向的关键字,主要包括src,dst,dst or src,dst and src。
这些关键字指明了传输的方向。举例说明,src 210.27.48.2指明ip包中源地址是 210.27.48.2,dst net 202.0.0.0指明目的网络地址是202.0.0.0。
如果没有指明方向关键字,则缺省是src or dst关键字。
第三种是协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。
如果没有指定任何协议,则tcpdump 将会监听所有协议的信息包。
除了这三种类型的关键字之外,其他重要的关键字如下:gateway,broadcast,less,greater。
还有三种逻辑运算,取非运算是 ‘not ' '! ‘,与运算是’and’,’&&',或运算是’or’。
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:17:19.728118 IP 10.25.1.41.58755 > 192.168.195.146.8012: Flags [.], ack 4530972, win 255, length 0
13:17:20.086680 IP 10.25.1.41.58757 > 192.168.195.146.8012: Flags [S], seq 2652586086, win 8192, options [mss 1367,nop,wscale 8,nop,nop,sackOK], length 0
13:17:20.095037 IP 10.25.1.41.58755 > 192.168.195.146.8012: Flags [F.], seq 0, ack 1, win 255, length 0
13:17:20.122483 IP 10.25.1.41.58757 > 192.168.195.146.8012: Flags [.], ack 56813455, win 259, length 0
13:17:20.123865 IP 10.25.1.41.58757 > 192.168.195.146.8012: Flags [P.], seq 0:394, ack 1, win 259, length 394
13:17:20.244773 IP 10.25.1.41.58757 > 192.168.195.146.8012: Flags [P.], seq 394:679, ack 727, win 256, length 285
13:17:20.284014 IP 10.25.1.41.58757 > 192.168.195.146.8012: Flags [.], ack 850, win 255, length 0
^C
7 packets captured
7 packets received by filter
0 packets dropped by kernel
plaincopy
- 下面的例子全是以抓取eth0接口为例,如果不加”-i eth0”是表示抓取所有的接口包括lo。
- 首先安装tcpdump包:yum install -y tcpdump
- 1、抓取包含172.16.1.122的数据包
- # tcpdump -i eth0 -vnn host 172.16.1.122
- 2、抓取包含172.16.1.0/24网段的数据包
- # tcpdump -i eth0 -vnn net 172.16.1.0/24
- 3、抓取包含端口22的数据包
- # tcpdump -i eth0 -vnn port 22
- 4、抓取udp协议的数据包
- # tcpdump -i eth0 -vnn udp
- 5、抓取icmp协议的数据包
- # tcpdump -i eth0 -vnn icmp
- 6、抓取arp协议的数据包
- # tcpdump -i eth0 -vnn arp
- 7、抓取ip协议的数据包
- # tcpdump -i eth0 -vnn ip
- 8、抓取源ip是172.16.1.122数据包。
- # tcpdump -i eth0 -vnn src host 172.16.1.122
- 9、抓取目的ip是172.16.1.122数据包
- # tcpdump -i eth0 -vnn dst host 172.16.1.122
- 10、抓取源端口是22的数据包
- # tcpdump -i eth0 -vnn src port 22
- 11、抓取源ip是172.16.1.253且目的ip是22的数据包
- # tcpdump -i eth0 -vnn src host 172.16.1.253 and dst port 22
- 12、抓取源ip是172.16.1.122或者包含端口是22的数据包
- # tcpdump -i eth0 -vnn src host 172.16.1.122 or port 22
- 13、抓取源ip是172.16.1.122且端口不是22的数据包
- [root@ ftp]# tcpdump -i eth0 -vnn src host 172.16.1.122 and not port 22
- 14、抓取源ip是172.16.1.2且目的端口是22,或源ip是172.16.1.65且目的端口是80的数据包。
- # tcpdump -i eth0 -vnn \( src host 172.16.1.2 and dst port 22 \) or \( src host 172.16.1.65 and dst port 80 \)
- 15、抓取源ip是172.16.1.59且目的端口是22,或源ip是172.16.1.68且目的端口是80的数据包。
- # tcpdump -i eth0 -vnn 'src host 172.16.1.59 and dst port 22' or ' src host 172.16.1.68 and dst port 80 '
- 16、把抓取的数据包记录存到/tmp/fill文件中,当抓取100个数据包后就退出程序。
- # tcpdump –i eth0 -vnn -w /tmp/fil1 -c 100
- 17、从/tmp/fill记录中读取tcp协议的数据包
- # tcpdump –i eth0 -vnn -r /tmp/fil1 tcp
- 18、从/tmp/fill记录中读取包含172.16.1.58的数据包
- # tcpdump –i eth0 -vnn -r /tmp/fil1 host 172.16.1.58
-a或--all 显示所有连线中的Socket,例如已建立连接(ESTABLISHED),监听连接请求(LISTENING)等。
-c或--continuous 持续列出网络状态。
-C或--cache 显示路由器配置的快取信息。
-e或--extend 显示网络其他相关信息。
-F或--fib 显示FIB。
-g或--groups 显示多重广播功能群组组员名单。
-h或--help 在线帮助。
-i或--interfaces 显示网络界面信息表单。
-l或--listening 显示监控中的服务器的Socket。
-M或--masquerade 显示伪装的网络连线。
-n或--numeric 直接使用IP地址,而不通过域名服务器。
-N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。
-o或--timers 显示计时器。
-p或--programs 显示正在使用Socket的程序识别码和程序名称。
-r或--route 显示Routing Table。
-s或--statistice 显示网络工作信息统计表。
-t或--tcp 显示TCP传输协议的连线状况。
-u或--udp 显示UDP传输协议的连线状况。
-v或--verbose 显示指令执行过程。
-V或--version 显示版本信息。
-w或--raw 显示RAW传输协议的连线状况。
-x或--unix 此参数的效果和指定"-A unix"参数相同。
--ip或--inet 此参数的效果和指定"-A inet"参数相同。
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:2208 0.0.0.0:* LISTEN 3226/hpiod
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 3411/mysqld
tcp 0 0 0.0.0.0:1002 0.0.0.0:* LISTEN 2940/rpc.statd
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2883/portmap
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 3259/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3453/sendmail: acce
tcp 0 0 127.0.0.1:2207 0.0.0.0:* LISTEN 3231/python
tcp 0 0 202.102.240.93:3306 122.207.210.12:1750 ESTABLISHED 3411/mysqld
tcp 0 0 202.102.240.93:3306 122.207.210.12:1748 ESTABLISHED 3411/mysqld
tcp 0 0 202.102.240.93:3306 202.102.240.93:59141 ESTABLISHED 3411/mysqld
tcp 0 0 202.102.240.93:59141 202.102.240.93:3306 ESTABLISHED 7059/httpd
tcp 0 0 192.168.195.145:48467 192.168.198.52:6379 ESTABLISHED 27908/php-fpm off (0.00/0/0)
tcp 0 0 192.168.195.145:39178 192.168.195.145:3306 ESTABLISHED 27908/php-fpm keepalive (7197.09/0/0)
unix 2 [ ACC ] STREAM LISTENING 2449287 27901/php-fpm /dev/shm/php-fcgi.sock
unix 3 [ ] STREAM CONNECTED 2450180 27908/php-fpm /dev/shm/php-fcgi.sock
unix 3 [ ] STREAM CONNECTED 2449286 27901/php-fpm
unix 3 [ ] STREAM CONNECTED 2449285 27901/php-fpm
Linux常用网络命令整理的更多相关文章
- Linux常用基础命令整理:关机命令、查看目录下文件命令等
Linux常用基础命令整理:关机命令.查看目录下文件命令等 整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能Ctrl+c按键-- ...
- linux常用网络命令ping和arping
linux常用网络命令ping和arping ping 向目标主机发送icmp请求包 常用来测试当前主机与目标主机网络连接状况 常见选项 -c 设置发包的个数 -s ...
- Linux常用网络命令
1.tracepath tracepath追踪出到指定的目的地址的网络路径,并给出在路径上的每一跳(hop).如果你的网络有问题或是慢了,tracepath可以查出网络在哪里断了或是慢了. 命令格式: ...
- Linux - 常用网络命令详解netstat,scp
ifconfig 查看生效的ip信息. [root@local ~]# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICA ...
- Linux常用网络测试命令
Linux常用网络测试命令 1. ifconfig 可以使用ifconfig命令来配置并查看网络接口的配置情况. 例如: (1) 配置eth0的IP地址, 同时激活该设备. #ifcon ...
- Linux常用脚本命令总结
基本操作 通用操作 1. export 显示所有的环境变量,也可以获取到某个变量的详细信息: export # 显示所有 echo $SHELL # 只显示SHELL 2. whereis 使用系统自 ...
- Linux - 常用网络操作
001 - Linux CentOS网络配置 CentOS---网络配置详解 002 - Linux查看端口状态 检测本机8080端口状态:netstat –apn | grep 8080 检测192 ...
- Linux常用网络工具:hping高级主机扫描
之前介绍了主机扫描工具fping,可以参考我写的<Linux常用网络工具:fping主机扫描>. hping是一款更高级的主机扫描工具,它支持TCP/IP数据包构造.分析,在某些防火墙配置 ...
- Linux学习笔记(9)linux网络管理与配置之一——Linux基础网络命令与学习大纲(0)
大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配置DNS客户端 4.配置名称解析顺序 5.配置路由与默认网关 6.双网卡绑定 [1] ping [2]net ...
随机推荐
- 【Codeforces Round #435 (Div. 2) A B C D】
CF比赛题目地址:http://codeforces.com/contest/862 A. Mahmoud and Ehab and the MEX ·英文题,述大意: 输入n,x(n,x& ...
- [bzoj4824][Cqoi2017]老C的键盘
来自FallDream的博客,未经允许,请勿转载,谢谢. 老 C 是个程序员. 作为一个优秀的程序员,老 C 拥有一个别具一格的键盘,据说这样可以大幅提升写程序的速度,还能让写出来的程序在某种 ...
- Ubuntu 16.04 LTS安装搜狗拼音输入法网易云音乐 Remarkable
第一步 首先在官网上面,下载最新的搜狗拼音输入法 Linux 版本. 第二步 进入命令行 Ctrl+Alt+T sudo dpkg -i sogoupinyin_2.1.0.0082_amd64.de ...
- QSDK下驱动AR8035
0 概述 QSDK平台中,我所接触到的版本,能支持MIPS架构的,是基于Openwrt AA版本:虽然CC版本上就已经能很好地支持AR8035了,可是AA版本它本身是不支持的,于是不断有人要求提供补丁 ...
- jQuery简单笔记
jQuery 是一个 JavaScript 库,简化了 JavaScript 的编程. 语法:$(selector).action() selector 是字符串,表示HTML元素. 对象 符号 例子 ...
- 修改原生单选框样式(vue单选组件)
一.效果如图 二.实现 修改单选样式 //html <div class="radio-wrap"> <input type="radio" ...
- 如何上传本地项目到gitHub解决方案
最近有人有人问到我怎么将新创建的本地代码上传到github上,这里简单的记录一下,我喜欢使用命令行,这里全用命令行来实现,不了解Git命令的可以去了解下. 1. 建立本地仓库,cd到你想要上传文件的 ...
- 罗列Linux发行版的基础目录名称,命令法则和功能
罗列Linux发行版的基础目录名称命名法则及功用规定 目录描述 /主层次 的根,也是整个文件系统层次结构的根目录 /bin存放在单用户模式可用的必要命令二进制文件,所有用户都可用,如 cat.ls.c ...
- js保留两位小数数字
/* * @descript: 保留两位小数,如果小数点大于两位小数,就向上取值保留两位小数<br/> * @time 2016-07-13 */function mathCeil(num ...
- 【kmp】 剪花布条 HDU - 2087
[题意概述] [解题思路] 从左往右找,看有几个匹配的字符串,但要注意例如 aaaaaa aa的输出是3 而不是5,可以这样理解:画布需要减去,一旦减去也就没有了的 [AC] #include< ...