tcpdump能够将网络中传送的数据包的

nothostvsandace

| sequence number |

在SLIP链路上,tcpdump展现出方向提示(“I”指inbound,“O”指outbound),报文类型和削减消息.首先突显的是报文类型.有三体系型ip,utcp和ctcp.对于ip报文不再显得越多的链路音信.对于TCP报文,在类型后边展现再而三标识.借使报文是缩短过的,就彰显出编码的报头.特殊景况以*S+n和*SA+n的款式呈现,那里的n是顺序号(或顺序号及其确认)产生的改观总和.倘使不是与众不一致景况,就突显0或稍微个改变.改变由U(urgentpointer),W(window),A(ack),S(sequencenumber)和I(packetID)指明,后跟2个变化量(+nor-n),或另七个值(=n).最终展现报文中的数据总和,以及减少报头的长度.

| HL | rsvd |C|E|U|A|P|R|S|F| window size |

假如host是独具四个IP地址的主机名,它的每一种地方都会被查验.

三、实例

1)监视钦点主机的数据包

打字与印刷helios 与 hot 也许与 ace 之间通讯的数据包

tcpdump host helios and \( hot or ace \)

缴获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通讯

tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \)

打字与印刷ace与其余其余主机之间通信的IP 数据包, 但不包罗与helios之间的数额包.

tcpdump ip host ace and not helios

即使想要获取主机210.27.48.1除了和主机210.27.48.2之外全部主机通讯的ip包,使用命令:

tcpdump ip host 210.27.48.1 and ! 210.27.48.2

缴获主机hostname发送的保有数据

tcpdump -i eth0 src host hostname

蹲点全部送到主机hostname的数据包

tcpdump -i eth0 dst host hostname

 

2)监视钦赐互连网的数据包

打字与印刷本地主机与Beck雷网络上的主机之间的兼具通讯数据包(ps: ucb-ether,
此处可明白为’Beck雷互联网’的网络地址,此表明式最原始的意思可发挥为:
打字与印刷网络地址为ucb-ether的全数数据包)

tcpdump net ucb-ether

打字与印刷全数通过网关snup的ftp数据包(注意, 表达式被单引号括起来了,
那能够预防shell对中间的括号进行不当解析)

tcpdump 'gateway snup and (port ftp or ftp-data)'

打字与印刷全部源地址或目的地方是地点主机的IP数据包

(如若本地互连网通过网关连到了另一互联网, 则另一网络并无法算作本地互连网.(ps:
此句翻译曲折,需补充).localnet 实际利用时要实在替换开支地互联网的名字)

tcpdump ip and not net localnet

 

3)监视钦点协议的数据包

打印TCP会话中的的初阶和竣事数据包,
并且数据包的源或目标不是本地网络上的主机.(ps: localnet,
实际行使时要确实替换耗费地网络的名字))

tcpdump 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0 and not src and dst net localnet'

打字与印刷全数源或目标端口是80, 网络层协议为IPv4,
并且含有数据,而不是SYN,FIN以及ACK-only等不含数据的数码包.(ipv6的本子的表明式可做演习)

tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

(ps: 可精晓为, ip[2:2]表示一切ip数据包的尺寸,
(ip[0]&0xf)<<2)表示ip数据包新乡的尺寸(ip[0]&0xf代表包中的IHL域,
而此域的单位为32bit, 要换算

成字节数须求乘以4, 即左移2. (tcp[12]&0xf0)>>4 表示tcp头的尺寸,
此域的单位也是32bit, 换算成比特数为 ((tcp[12]&0xf0) >> 4)
<< 2,
即 ((tcp[12]&0xf0)>>2). ((ip[2:2] – ((ip[0]&0xf)<<2))

  • ((tcp[12]&0xf0)>>2)) != 0 表示:
    整个ip数据包的长短减去ip头的长短,再减去
    tcp头的长度不为0, 那就意味着,
    ip数据包中确实是有数据.对于ipv6版本只需考虑ipv七头中的’Payload Length’ 与
    ‘tcp头的长短’的差值, 并且当中表明格局’ip[]’需换成’ip6[]’.)

打字与印刷长度超过576字节, 并且网关地址是snup的IP数据包

tcpdump 'gateway snup and ip[2:2] > 576'

打字与印刷全部IP层广播或多播的数据包, 但不是情理以太网层的广播或多播数据报

tcpdump 'ether[0] & 1 = 0 and ip[16] >= 224'

打字与印刷除’echo request’只怕’echo reply’类型以外的ICMP数据包(
比如,要求打字与印刷全数非ping 程序产生的多寡包时可用到此表明式 .
(ps: ‘echo reuqest’ 与 ‘echo reply’
那三种档次的ICMP数据包平常由ping程序发生))

tcpdump 'icmp[icmptype] != icmp-echo and icmp[icmptype] != icmp-echoreply'

 

四、tcpdump 与wireshark

Wireshark(以前是ethereal)是Windows下万分不难易用的抓包工具。但在Linux下很难找到多个好用的图形化抓包工具。
万幸有tcpdump。大家得以用tcpdump + Wireshark 的圆满结合达成:在 Linux
里抓包,然后在Windows 里分析包。

tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

(1)tcp: ip icmp arp rarp 和
tcp、udp、icmp那些采纳等都要放手第②个参数的岗位,用来过滤数据报的门类
(2)-i eth1 : 只抓经过接口eth1的包
(3)-t : 不呈现时间戳
(4)-s 0 : 抓取数据包时私下认可抓取长度为68字节。加上-S 0
后方可抓到完整的数据包
(5)-c 100 : 只抓取9五个数据包
(6)dst port ! 22 : 不抓取目的端口是22的数据包
(7)src net 192.168.1.0/24 : 数据包的源网络地址为192.168.1.0/24
(8)-w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析

  

sushi.1372a>wrl.nfs:
148readfh21,11/12.1958192bytes@24576
wrl.nfs>sushi.1372a:
replyok1472readREG100664ids417/0sz29388

AFS 请求和回应

AFS(nt: Andrew 文件系统, Transarc , 未知, 需补充)请求和回应该如下的许诺

src.sport > dst.dport: rx packet-type
src.sport > dst.dport: rx packet-type service call call-name args
src.sport > dst.dport: rx packet-type service reply call-name args

elvis.7001 > pike.afsfs:
rx data fs call rename old fid 536876964/1/1 “.newsrc.new”
new fid 536876964/1/1 “.newsrc”
pike.afsfs > elvis.7001: rx data fs reply rename

在第三行, 主机elvis 向pike 发送了2个瑞鹰X数据包.
那是多少个对于文本服务的请求数据包(nt: 凯雷德X data packet, 发送数据包 ,
可通晓为发送包过去, 从而请求对方的服务), 那也是叁个猎豹CS6PC
调用的启幕(nt: 中华VPC, remote procedure call). 此CRUISERPC 请求pike
执行rename(nt: 重命名) 操作, 并钦定了有关的参数:
原目录描述符为536876964/1/1, 原来的书文书名为 ‘.newsrc.new’,
新目录描述符为536876964/1/1, 新文件名为 ‘.newsrc’.
主机pike 对此rename操作的RubiconPC请求作了答疑(回应表示rename操作成功,
因为回应的是带有数据内容的包而不是越发包).

一般的话, 全体的’AFS OdysseyPC’请求被出示时, 会被冠以3个名字(nt: 即decode,
解码), 那几个名字往往便是HavalPC请求的操作名.
再就是, 这一个QX56PC请求的一对参数在展现时, 也会被冠以3个名字(nt | rt:
即decode, 解码, 一般的话也是取名也很直白, 比如,
四个interesting 参数, 展现的时候就会一贯是’interesting’, 含义拗口,
需再翻).

那种突显格式的布署初衷为’一看就懂’, 但对于面生AFS 和 大切诺基X
工作原理的人恐怕不是很
有用(nt: 依然绝不管, 书面吓吓你的, 往下看就行).

如果 -v(详细)标志被再一次给出(nt: 如-vv), tcpdump 会打字与印刷出肯定包(nt:
可领略为, 与回应包有分别的包)以及附加底部消息
(nt: 可理解为, 全部包, 而不仅是承认包的附加尾部新闻), 比如, 宝马X5X call
ID(请求包中’请求调用’的ID),
call number(‘请求调用’的号子), sequence number(nt: 包顺序号),
serial number(nt | rt: 可见道为与包中数据有关的另三个顺信号,
具体意思需填补), 请求包的标识. (nt: 接下来一段为重复描述,
由此略去了), 其它确认包中的MTU协商消息也会被打印出来(nt:
确认包为相对于请求包的肯定包, 马克西姆um Transmission Unit, 最大传输单元).

假使 -v 选项被重复了一回(nt: 如-vvv),
那么AFS应用项目数据包的’安全索引'(‘security
index’)以及’服务索引'(‘service id’)将会
被打印.

对于代表丰裕的数据包(nt: abort packet, 可分晓为,
此包便是用来通告接受者某种卓殊已发生), tcpdump 会打字与印刷出荒谬号(error
codes).
但对于Ubik beacon packets(nt: Ubik 灯塔提醒包,
Ubik可精晓为非凡的通讯协议, beacon packets, 灯塔数据包,
可清楚为指明通讯中
重中之重新闻的部分数据包), 错误号不会被打字与印刷, 因为对此Ubik 协议,
很是数据包不是意味错误, 相反却是表示一种自然回应(nt: 即, yes vote).

AFS 请求数据量大, 参数也多, 所以要求tcpdump的 snaplen 比较大,
一般可经过运行tcpdump时设置选项’-s 256′ 来增大snaplen, 以
监测AFS 应用通讯负载.

AFS 回应包并不出示标识途达PC 属于何种远程调用. 从而, tcpdump
会跟踪目前一段时间内的乞请包, 并通过call number(调用编号), service ID
(服务目录) 来合作收到的回复包. 借使回应包不是本着近年一段时间内的央浼包,
tcpdump将无法解析该包.

链路层报头(LinkLevelHeaders)

SMB/CIFS 解码

tcpdump 已能够对SMB/CIFS/NBT相关应用的数额包内容实行解码(nt:
分别为’Server Message Block Common’, ‘Internet File System’
‘在TCP/IP上贯彻的网络协议NETBIOS的简称’.
那些劳务普通采纳UDP的137/138以及TCP的139端口). 原来的对IPX和NetBEUI
SMB数据包的
解码能力如故得以被应用(nt: NetBEUI为NETBIOS的增高版本).

tcpdump默许只依据最简便易行方式对相应数额包进行解码,
假使我们想要详尽的解码音讯方可选取其-v 运营选现. 要注意的是, -v
会产生分外详尽的新闻,
例如对单一的1个SMB数据包, 将发生一荧屏或更加多的新闻, 所以此选项,
确有亟待才使用.

关于SMB数据包格式的新闻, 以及各种域的意思能够参考www.cifs.org
可能samba.org 镜像站点的pub/samba/specs/ 目录. linux 上的SMB 补丁
(nt | rt: patch)由 Andrew Tridgell (tridge@samba.org)提供.

NFS 请求和回答

tcpdump对Sun
NFS(网络文件系统)请求和答复的UDP数据包有如下格式的打印输出:
src.xid > dst.nfs: len op args
src.nfs > dst.xid: reply stat len op results

以下是一组具体的出口数据
sushi.6709 > wrl.nfs: 112 readlink fh 21,24/10.73165
wrl.nfs > sushi.6709: reply ok 40 readlink “../var”
sushi.201b > wrl.nfs:
144 lookup fh 9,74/4096.6878 “xcolors”
wrl.nfs > sushi.201b:
reply ok 128 lookup fh 9,74/4134.3150

先是行输出注解: 主机sushi向长机wrl发送了一个’调换请求'(nt: transaction),
此请求的id为6709(注意, 主机名字后是换来
呼吁id号, 而不是源端口号). 此恳请数据为112字节,
个中不包罗UDP和IP底部的长度. 操作类型为readlink(nt:
即此操作为读符号链接操作),
操作参数为fh 21,240%.73165(nt: 可按其实运作条件, 解析如下, fd
表示描述的为文件句柄, 21,24 表示此句柄所对应设
备的主/从设备号对,
10代表此句柄所对应的i节点编号(nt:每种文件都会在操作系统中对应1个i节点,
限于unix类系统中),
73165是1个编号(nt: 可见道为标识此请求的1个自由数, 具体意思需填补)).

其次行中, wrl 做了’ok’的答复, 并且在results
字段中回到了sushi想要读的记号连接的诚实目录(nt:
即sushi须要读的号子连接其实是贰个索引).

其三行申明: sushi 再度恳请 wrl 在’fh
9,74/4096.6878’所讲述的目录中寻觅’xcolors’文件. 须要专注的是,
每行所展现的多少含义正视于个中op字段的
品类(nt: 不一样op 所对应args 含义不雷同), 其格式服从NFS 磋商,
追求简洁明了.

假定tcpdump 的-v选项(详细打字与印刷选项) 被设置, 附加的新闻将被彰显. 比如:
sushi.1372a > wrl.nfs:
148 read fh 21,11/12.195 8192 bytes @ 24576
wrl.nfs > sushi.1372a:
reply ok 1472 read REG 100664 ids 417/0 sz 29388

(-v 选项一般还会打印出IP底部的TTL, ID, length, 以及fragmentation 域,
但在此例中, 都略过了(nt: 可精通为,简洁起见, 做了删除))
在首先行, sushi 请求wrl 从文件 21,11/12.195(nt: 格式在地方有描述)中,
自偏移24576字节处开始, 读取8192字节数据.
Wrl 回应读取成功; 由于第一行只是回应请求的初叶片段,
所以只包罗1472字节(别的的数码将在跟着的reply片段中来到,
但这么些多少包不会再有NFS
头, 甚至UDP头音讯也为空(nt: 源和指标应该要有),
那将造成那个部分无法满意过滤条件, 从而没有被打字与印刷). -v
选项除了突显文件数据新闻, 还会来得
外加呈现文件属性音讯: file type(文件类型, ”REG” 表示通常文书), file
mode(文件存取形式, 8进制表示的), uid 和gid(nt: 文件属主和
组属主), file size (文件大小).

如果-v 标志被数十次重复给出(nt: 如-vv), tcpdump会显示特别详实的音信.

必供给注意的是, NFS 请求包中数据比较多, 如若tcpdump 的snaplen(nt:
抓取长度) 取太短将不可能显示其详细新闻. 可选拔
‘-s 192’来充实snaplen, 这可用以监测NFS应用的网络负载(nt: traffic).

NFS 的回答包并不严加的紧随从前相应的伏乞包(nt: 凯雷德PC operation). 从而,
tcpdump 会跟踪近年来收下的一体系请求包, 再通过其
调换序号(nt: transaction ID)与相应请求包相匹配. 那只怕发生3个难点,
尽管回应包来得太迟, 超出tcpdump 对相应请求包的跟踪范围,
该回应包将无法被分析.

先是行表达rtsg发出三个arp报文询问internet主机csam的以太网地址.Csam用它的以太地址作回应(那些事例中,以太地址是大写的,internet地址为题写).
假诺用tcpdump-n看上去要知道一些:

| source port | destination port |

etherdstehost
一旦报文的以太指标地址是ehost,则逻辑为真.Ehost既能够是名字(/etc/ethers里有),也得以是数字(有关数字格式另见ethers(3N)).
ethersrcehost
假使报文的以太源地址是ehost,则逻辑为真.
etherhostehost
假使报文的以太源地址或以太指标地址是ehost,则逻辑为真.
gatewayhost
比方报文把host当做网关,则逻辑为真.也便是说,报文的以太源或目标地址是host,可是IP的源目地址都不是host.host必须是个主机名,而且必须存在/etc/hosts和/etc/ethers中.(三个也正是的表达式是
etherhostehostandnothosthost

UDP 数据包

UDP 数据包的呈现格式,可由此rwho那几个具体应用所产生的数码包来表达:
actinide.who > broadcast.who: udp 84

其意义为:actinide主机上的端口who向broadcast主机上的端口who发送了2个udp数据包(nt:
actinide和broadcast都以指Internet地址).
其一数目包承载的用户数量为8八个字节.

有的UDP服务可从数据包的源或目标端口来分辨,也可从所体现的更高层协商音讯来识别.
比如, Domain Name service requests(DNS 请求,
在中华VFC-103四成35中), 和Sun LX570PC calls to
NFS(对NFS服务器所提倡的远距离调用(nt: 即Sun
奥德赛PC),在TiggoFC-1050中有对长距离调用的描述).

UDP 名称服务请求

(注意:以下的叙说即便你对Domain Service protoco(nt:在宝马X5FC-103中负有描述),
不然你会发现以下描述就是天书(nt:希腊共和国文天书,
无需理会, 吓吓你的, 接着看就行))

名称服务请求有如下的格式:
src > dst: id op? flags qtype qclass name (len)
(nt: 从下文来看, 格式应该是src > dst: id op flags qtype qclass? name
(len))
诸如有三个实在展现为:
h2opolo.1538 > helios.domain: 3+ A? ucbvax.berkeley.edu. (37)

主机h2opolo 向helios 上启动的名目服务器查询ucbvax.berkeley.edu
的地点记录(nt: qtype等于A). 此询问本身的id号为’3′. 符号
‘+’意味着递归查询标志棉被服装置(nt:
dns服务器可向更高层dns服务器查询本服务器不带有的地方记录).
那一个最终通过IP包发送的查询请求
多少长度为37字节, 在那之中不包涵UDP和IP协议的头数据.
因为此询问操作为暗许值(nt | rt: normal one的明白), op字段被省略.
要是op字段没被略去, 会被突显在’3′ 和’+’之间. 同样, qclass也是暗许值,
C_IN, 从而也没被展现, 如若没被忽略, 她会被出示在’A’之后.

十三分检查会在方括中展现出附加的域: 假设2个查询同时富含叁个作答(nt:
可清楚为, 对此前其余二个伸手的回应), 并且此回应包涵权威或附加记录段,
ancount, nscout, arcount(nt: 具体字段含义需填补) 将被出示为'[na]’,
‘[nn]’, ‘[nau]’, 在那之中n代表合适的计数. 假使包中以下
回应位(比如AA位, RA位, rcode位),
也许字节2或3中此外1个’必须为0’的位被置位(nt: 设置为1), ‘[b2&3]=x’
将被展现, 在那之中x表示
底部字节2与字节3开始展览与操作后的值.

UDP 名称服务应对

对名称服务应对的数据包,tcpdump会有如下的来得格式
src > dst: id op rcode flags a/n/au type class data (len)
例如具体彰显如下:
helios.domain > h2opolo.1538: 3 3/3/7 A 128.32.137.3 (273)
helios.domain > h2opolo.1537: 2 NXDomain* 0/1/0 (97)

首先行表示: helios 对h2opolo 所发送的3号查询请求应对了3条回复记录(nt |
rt: answer records), 3条名称服务器记录,
以及7条附加的记录. 第3个应答记录(nt: 3个应答记录中的第3个)类型为A(nt:
表示地址), 其数额为internet地址128.32.137.3.
此回应UDP数据包, 包涵273字节的数码(不含有UPD和IP的头顶数据).
op字段和rcode字段被忽略(nt: op的实际值为Query, rcode, 即
response code的实际值为NoError), 同样被忽略的字段还有class 字段(nt | rt:
其值为C_IN, 那也是A类型记录暗许取值)

第2行表示: helios 对h2opolo 所发送的2号查询请求做了回应. 回应中,
rcode编码为NXDomain(nt: 表示不存在的域)), 没有回答记录,
但含有三个名称服务器记录, 不含有权威服务器记录(nt | ck: 从上文来看,
此处的authority records 就是上文中对应的additional
records). ‘*’表示权威服务器回答标志被安装(nt: 从而additional
records就象征的是authority records).
是因为尚未答复记录, type, class, data字段都被忽略.

flag字段还有只怕出现任何一些字符, 比如’-‘(nt: 表示可递归地查询, 即RA
标志没有被设置), ‘|'(nt: 表示被截断的音讯, 即TC 标志
被置位). 假诺答应(nt | ct: 可精晓为, 包罗名称服务应对的UDP数据包,
tcpdump知道那类数据包该怎么解析其数据)的’question’段贰个条
目(entry)都不包涵(nt: 各种条指标意思, 需补充),'[nq]’ 会被打印出来.

要留心的是:名称服务器的呼吁和回应数据量相比大,
而暗许的68字节的抓取长度(nt: snaplen,
可分晓为tcpdump的二个装置选项)或许不足以抓取
数据包的百分之百内容. 如若你真正要求精心查阅名称服务器的负荷,
能够经过tcpdump 的-s 选项来扩大snaplen值.

numbername

| TCP checksum | urgent pointer |

3个TCP底部,在不分包选项数据的意况下一般占用17个字节(nt | rt:options
精通为挑选数据,需回译). 第1行李包裹括0到3编号的字节,
其次行李包裹罗编号4-7的字节.

假设编号从0起初算, TCP控制标志位于13字节(nt:第伍行左半有个别).

0 7 15 23 31
HL rsvd C E U A P R S F window size
—————- ————— ————— —————-
13th octet

让我们密切看看号码13的字节:

C E U A P R S F
—————
7 5 3 0

此地有大家感兴趣的主宰标志位. 从右往左这个位被依次编号为0到7, 从而
PSH位在3号, 而U揽胜G位在5号.

提示一下谈得来, 大家只是要取得包括SYN标志的数据包.
让大家看看在贰个包的连云港中, 倘使SYN位被安装, 到底
在13号字节发生了怎样:

C E U A P R S F
0 0 0 0 0 0 1 0
—————
7 6 5 4 3 2 1 0

在支配段的数量中, 唯有比特1(bit number 1)被置位.

万一编号为13的字节是八个6位的无符号字符型,并且遵照互联网字节号排序(nt:对于一个字节来说,互连网字节序等同于主机字节序),
其二进制值
如下所示:
00000010

同时其10进制值为:

0*2^7 + 0*2^6 + 0*2^5 + 0*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 =
2(nt: 1 * 2^6 表示1加倍2的六回方, 恐怕这样更
精通些, 即把本来表明中的指数7 6 … 0挪到了上边来表述)

恍如指标了, 因为我们早就知晓, 要是数据西宁部中的SYN被置位,
那么底部中的第二二个字节的值为2(nt: 遵照互连网序, 即大头形式, 最重点的字节
在前头(在前头,即该字节实际内部存储器地址相比较小,
最重大的字节,指数学表示中数的高位, 如356中的3) ).

发挥为tcpdump能精通的关系式就是:
tcp[13] 2

就此大家能够把此关系式当作tcpdump的过滤条件,
指标正是监督只含有SYN标志的数量包:
tcpdump -i xl0 tcp[13] 2 (nt: xl0 指网络接口, 如eth0)

那些表明式是说”让TCP数据包的第叁一个字节拥有值2呢”, 那也是咱们想要的结果.

前日, 假如大家须求抓取带SYN标志的数据包,
而忽略它是或不是带有别的标志.(nt:只要带SYN就是大家想要的).
让大家来探望当五个包涵
SYN-ACK的数据包(nt:SYN 和 ACK 标志都有), 来到时爆发了哪些:
|C|E|U|A|P|R|S|F|
|—————|
|0 0 0 1 0 0 1 0|
|—————|
|7 6 5 4 3 2 1 0|

13号字节的1号和4号位被置位, 其二进制的值为:
00010010

转换来十进制正是:

0*2^7 + 0*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2 =
18(nt: 1 * 2^6 表示1倍增2的九回方, 大概那样更
知道些, 即把原先表明中的指数7 6 … 0挪到了下边来发表)

最近, 却无法只用’tcp[13] 18’作为tcpdump的过滤表达式,
因为那将促成只选择含有SYN-ACK标志的数据包, 其余的都被抛弃.
升迁一下友好, 大家的对象是: 只要包的SYN标志棉被服装置就行,
别的的标志大家不理会.

为了达到大家的对象,
大家必要把13号字节的二进制值与其余的多少个数做AND操作(nt:逻辑与)来取得SYN比特位的值.
指标是:只要SYN 被安装
就行, 于是大家就把她与上13号字节的SYN值(nt: 00000010).

00010010 SYN-ACK 00000010 SYN
AND 00000010 (we want SYN) AND 00000010 (we want SYN)


= 00000010 = 00000010

大家能够发现, 不管包的ACK或别的标志是还是不是被装置,
以上的AND操作都会给大家一致的值,
其10进制表明就是2(2进制表达正是00000010).
由此大家清楚, 对于富含SYN标志的数据包, 以下的表达式的结果总是真(true):

( ( value of octet 13 ) AND ( 2 ) ) ( 2 ) (nt: value of octet 13,
即13号字节的值)

灵感随之而来, 咱们于是得到了如下的tcpdump 的过滤表明式
tcpdump -i xl0 ‘tcp[13] & 2 2’

瞩目, 单引号或反斜杆(nt: 那里用的是单引号)不能够大约,
那足以防患shell对&的诠释或替换.

SunNFS(网络文件系统)的伏乞和响应彰显格式是:

0 15 31

NBP报文的输出格式就象上面包车型大巴例证:

KIP AppleTalk协议

(nt | rt: DDP in UDP可清楚为, DDP, The AppleTalk Data Delivery
Protocol,
也等于支撑KIP AppleTalk协议栈的互连网层协议, 而DDP
自身又是透过UDP来传输的,
即在UDP 上贯彻的用来别的互联网的互连网层,KIP
AppleTalk是苹果集团费用的一切网络协议栈).

AppleTalk DDP 数据包被封装在UDP数据包中, 其解封装(nt:
约等于解码)和相应音信的转储也如约DDP 包规则.
(nt:encapsulate, 封装, 也正是编码, de-encapsulate, 解封装, 也等于解码,
dump, 转储, 日常正是指对其音信举办打字与印刷).

/etc/atalk.names 文件中带有了AppleTalk
互联网和节点的数字标识到名称的呼应关系. 其文件格式日常如下所示:
number name

1.254 ether
16.1 icsd-net
1.254.110 ace

头两行代表有七个AppleTalk 互联网.
第壹行提交了特定互联网上的主机(2个主机会用一个字节来标识,
而贰个互联网的标识日常只有多个字节, 那也是多头标识的严重性差距)(nt:
1.254.110 可精晓为ether互联网上的ace主机).
标识与其对应的名字之间必供给用空白分开. 除了以上内容,
/etc/atalk.names中还含有空行以及注释行(以’#’先导的行).

AppleTalk 完整互连网地址将以如下格式展现:
net.host.port

以下为一段具体展现:
144.1.209.2 > icsd-net.112.220
office.2 > icsd-net.112.220
jssmag.149.235 > icsd-net.2

(若是/etc/atalk.names 文件不设有, 或然尚未相应AppleTalk 主机/互联网的条目,
数据包的互连网地址将以数字格局体现).

在首先行中,
网络144.1上的节点209通过2端口,向互连网icsd-net上监听在220端口的112节点发送了1个NBP应用数据包
(nt | rt: NBP, name binding protocol, 名称绑定协议, 从数额来看,
NBP服务器会在端口2提供此服务.
‘DDP port 2′ 可见道为’DDP 对应传输层的端口2’, DDP本人并未端口的定义,
那一点未规定, 需补充).

其次行与第3行类似, 只是源的一体地点可用’office’实行标识.
其三行表示:
jssmag网络上的149节点通过235向icsd-net网络上的保有节点的2端口(NBP端口)发送了数据包.(需求小心的是,
在AppleTalk 网络中一经地点中没有节点, 则意味着广播地址,
从而节点标识和网络标识最幸亏/etc/atalk.names有所分化.
nt: 不然一个标识x.port
不可能分明x是指2个网络上拥有主机的port口依然钦赐主机x的port口).

tcpdump 可分析NBP (名称绑定协议) and ATP (AppleTalk传输协议)数据包,
对于其他应用层的协议, 只会打字与印刷出相应协议名字(
要是此协议没有注册2个通用名字, 只会打字与印刷其协议号)以及数据包的大小.

NBP 数据包会遵照如下格式彰显:
icsd-net.112.220 > jssmag.2: nbp-lkup 190: “=:LaserWriter@*”
jssmag.209.2 > icsd-net.112.220: nbp-reply 190:
“RM1140:LaserWriter@*” 250
techpit.2 > icsd-net.112.220: nbp-reply 190: “techpit:LaserWriter@*”
186

首先行表示: 网络icsd-net 中的节点112 通过220端口向互连网jssmag
中兼有节点的端口2发送了对’LaserWriter’的称呼查询请求(nt:
那里名称可清楚为三个财富的名号, 比如打字与印刷机). 此询问请求的体系号为190.

其次行代表: 网络jssmag 中的节点209
通过2端口向icsd-net.112节点的端口220进展了答复: 作者有’LaserWriter’能源,
其财富名称
为’讴歌ZDXM1140′, 并且在端口250上提供改能源的服务. 此回答的类别号为190,
对应事先查询的行列号.

其三行也是对第③行请求的回应: 节点techpit
通过2端口向icsd-net.112节点的端口220展开了答复:笔者有’LaserWriter’财富,
其财富名称
为’techpit’, 并且在端口186上提供改能源的服务. 此回应的类别号为190,
对应事先查询的系列号.

ATP 数据包的显得格式如下:
jssmag.209.165 > helios.132: atp-req 12266<0-7> 0xae030001
helios.132 > jssmag.209.165: atp-resp 12266:0 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:1 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:2 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:6 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp*12266:7 (512) 0xae040000
jssmag.209.165 > helios.132: atp-req 12266<3,5> 0xae030001
helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
jssmag.209.165 > helios.132: atp-rel 12266<0-7> 0xae030001
jssmag.209.133 > helios.132: atp-req* 12267<0-7> 0xae030002

先是行表示节点 Jssmag.209 向节点helios
发送了1个对话编号为12266的央求包, 请求helios
回应九个数据包(那八个数据包的顺序号为0-7(nt: 顺序号与会话编号分裂,
后者为3遍完整传输的数码,
前者为该传输中各类数据包的编号. transaction, 会话, 日常也被叫作传输)).
行尾的16进制数字代表
该请求包中’userdata’域的值(nt: 从下文来看,
那并没有把全数用户数量都打字与印刷出来 ).

Helios 回应了几个512字节的多寡包. 跟在对话编号(nt:
12266)后的数字代表该多少包在该会话中的顺序号.
括号中的数字代表该多少包中数据的轻重缓急, 那不包涵atp 的底部.
在顺序号为7数据包(第9行)外带了2个’*’号,
表示该数据包的EOM 标志被安装了.(nt: EOM, End Of Media, 可领略为,
表示一遍对话的多少回应完成).

接下去的第七行代表, Jssmag.209 又向helios 提议了请求:
顺序号为3以及5的数码包请重新传送. Helios 收到这几个
呼吁后重新发送了这些五个数据包, jssmag.209 再度接受那八个数据包之后,
主动甘休(release)了此会话.

在终极一行, jssmag.209 向helios 发送了启幕下1次对话的伸手包.
请求包中的’*’表示该包的XO 标志没有被设置.
(nt: XO, exactly once, 可了然为在该会话中,
数据包在接受者只被规范地拍卖1次, 固然对方再也传送了该数据包,
接收方也只会处理2遍, 那亟需运用越发规划的多少包接收和拍卖体制).

Octcp*A+6S+49I+63(6)

| acknowledgment number |

tcpdumpiphostaceandnothelios

一、简介

用简单的话来定义tcpdump,就是:dump the traffic on a
network,根据使用者的定义对互联网上的多寡包实行收缴的包分析工具。
tcpdump能够将网络中传递的数据包的“头”完全截获下来提供分析。它协助针对互连网层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来增派您去掉无用的音讯。

 

二、教程

https://danielmiessler.com/study/tcpdump/#gs.yy6px80

 

即使捕捉区设置的过小,以至于tcpdump不能捕捉到完整的TCP报头,tcpdump会尽只怕的翻译已抓获的片段,然后展现“[|tcp]”,申明不能够翻译别的部分.如若报头包涵一个冒牌的选用(onewithalengththat’seithertoosmallorbeyondtheendoftheheader),tcpdump展现“[badopt]”并且不再翻译别的选取部分(因为它不恐怕判断出从何处开首).借使报头长度注脚存在选择,不过IP数据报长度不够,不恐怕确实保存选项,tcpdump就显得“[badhdrlength]”.

时间戳

tcpdump的所有输出打印行中都会默认包含时间戳信息. 
时间戳信息的显示格式如下 
hh:mm:ss.frac (nt: 小时:分钟:秒.(nt: frac未知, 需补充)) 
此时间戳的精度与内核时间精度一致, 反映的是内核第一次看到对应数据包的时间(nt: saw, 即可对该数据包进行操作). 
而数据包从物理线路传递到内核的时间, 以及内核花费在此包上的中断处理时间都没有算进来.

倘使用tcpdump-e,能够看到实际第二个报文是广播,第3个报文是点到点的:

5、输出新闻意义

第二我们注意一下,基本上tcpdump总的的出口格式为:系统时间 来源主机.端口
> 指标主机.端口 数据包参数tcpdump
的输出格式与协商有关.以下简单描述了绝超越五成常用的格式及相关例子.

对此SunOS的nit或bpf界面:要运营tcpdump,你必须有/dev/nit或/dev/bpf*的读访问权限.

IP 数据包破碎

(nt: 指把四个IP数据包分成多少个IP数据包)

零星IP数据包(nt:
即3个大的IP数据包破碎后转移的小IP数据包)有如下二种显示格式.
(frag id:size@offset+)
(frag id:size@offset)
(第3种格式表示, 此碎片之后还有继续碎片. 第二种格式表示,
此碎片为结尾贰个碎片.)

id 表示破碎编号(nt: 从下文来看, 会为每一种要破碎的大IP包分配贰个破败编号,
以便区分每一种小碎片是不是由同样数据包破碎而来).
size 代表此碎片的大小 , 不包括碎片尾部数据.
offset表示此碎片所含数据在原本整个IP包中的偏移((nt: 从下文来看,
一个IP数据包是作为多少个完全被破碎的, 包罗头和数码, 而不只是数额被细分).

各种碎片都会使tcpdump发生相应的出口打字与印刷.
第③个东鳞西爪包涵了高层协商的头数据(nt:从下文来看,
被破碎IP数据包中相应tcp头以及
IP头都放在了首个星落云散中 ), 从而tcpdump会针对第二个东鳞西爪显示这几个新闻,
并接着显示此碎片本人的消息. 其后的部分零星并不包涵
高层协商头消息, 从而只会在展现源和指标之后显得碎片本人的新闻.
以下有2个例证: 这是1个从arizona.edu 到lbl-rtsg.arpa
经过CSNET互联网(nt: CSNET connection 可掌握为树立在CSNET
互连网上的连年)的ftp应用通讯片段:
arizona.ftp-data > rtsg.1170: . 1024:1332(308) ack 1 win 4096 (frag
595a:328@0+)
arizona > rtsg: (frag 595a:204@328)
rtsg.1170 > arizona.ftp-data: . ack 1536 win 2560

有几点值得注意:
首先, 第③行的打字与印刷中, 地址前边没有端口号.
那是因为TCP协议消息都放到了第①个东鳞西爪中, 当展现第三个东鳞西爪时,
大家无能为力掌握此碎片所对应TCP包的依次号.

第叁, 从第③行的新闻中, 能够发现arizona要求向rtsg发送308字节的用户数据,
而事实是, 相应IP包经破碎后会总共发生512字节
数码(第三个四分五裂包蕴308字节的数额, 第3个四分五裂包括20多个字节的多少,
那超越了308字节). 假诺你在物色数据包的顺序号空间中的
一部分虚幻(nt: hole,空洞, 指数据包之间的顺序号没有前后衔接上),
512那些数额就够用使您迷茫一阵(nt: 其实就算关心308就行,
无须关切破碎后的数额总量).

二个数据包(nt | rt: 指IP数据包)假设含有非IP破碎标志,
则呈现时会在结尾展现'(DF)’.(nt: 意味着此IP包没有被破碎过).

作为
nothostvsandhostace

链路层头

对此FDDI互联网, ‘-e’ 使tcpdump打字与印刷出钦赐数据包的’frame control’ 域,
源和目标地址, 以及包的长度.(frame control域
控制对包中别的域的解析). 一般的包(比如那一个IP
datagrams)都是含有’async'(异步标志)的数据包,并且有取值0到7的先行级;
诸如 ‘async4’就表示此包为异步数据包,并且优先级别为4.
平日认为,那一个包们会内含三个 LLC包(逻辑链路控制包); 那时,假若此包
不是一个ISO
datagram或所谓的SNAP包,其LLC尾部将会被打字与印刷(nt:应该是指此包内含的
LLC包的建邺).

对于Token Ring互联网(令牌环互连网), ‘-e’ 使tcpdump打字与印刷出钦命数据包的’frame
control’和’access control’域, 以及源和目标地址,
外加包的长度. 与FDDI网络类似, 此数据包经常内含LLC数据包. 不管
是不是有’-e’选项.对于此网络上的’source-routed’类型数据包(nt:
意译为:源地址被追踪的数据包,具体意思未知,需填补),
其包的源路由音讯总会被打字与印刷.

对此802.11网络(WLAN,即wireless local area network), ‘-e’
使tcpdump打字与印刷出内定数据包的’frame control域,
岳阳中含有的具备地点, 以及包的长度.与FDDI网络类似,
此数据包常常内含LLC数据包.

(注意: 以下的描述会若是你纯熟SLIP压缩算法 (nt:SLIP为Serial Line Internet
Protocol.), 这一个算法能够在
LX570FC-1144中找到相关的一望可知.)

对于SLIP互连网(nt:SLIP links, 可通晓为2个互连网, 即通过串行线路建立的一而再,
而一个回顾的连天也可视作3个互联网),
数据包的’direction indicator'(‘方向提示标志’)(“I”表示入, “O”表示出),
类型以及减少新闻将会被打字与印刷. 包类型会被第三打字与印刷.

品种分为ip, utcp以及ctcp(nt:未知, 需补充).
对于ip包,连接讯息将不被打字与印刷(nt:SLIP连接上,ip包的接二连三音信也许无用或从不定义.
reconfirm).对于TCP数据包, 连接标识紧接着类型表示被打字与印刷. 假若此包被压缩,
其被编码过的尾部将被打字与印刷.
此刻对此特种的压缩包,会如下显示:
*S+n 或者 *SA+n,
个中n代表包的(顺序号或(顺序号和应答号))扩张或调减的数额(nt |
rt:S,SA拗口, 需再译).
对此非新鲜的压缩包,0个或愈来愈多的’改变’将会被打字与印刷.’改变’被打字与印刷时格式如下:
‘标志’+/-/=n 包数据的长度 压缩的底局长度.
个中’标志’能够取以下值:
U(代表急切指针), W(指缓冲窗口), A(应答), S(体系号),
I(包ID),而增量表明’=n’表示被给予新的值, +/-代表扩大或减弱.

例如, 以下显示了对2个外发压缩TCP数据包的打字与印刷,
那几个数据包隐含二个总是标识(connection identifier); 应答号增添了6,
顺序号扩大了49, 包ID号增添了6; 包数据长度为3字节(octect),
压缩尾部为6字节.(nt:如此看来那应当不是2个独特的削减数据包).

ARP/RARP 数据包

tcpdump对Arp/rarp包的出口消息中会包涵呼吁类型及该请求对应的参数.
展现格式简洁明了. 以下是从主机rtsg到主机csam的’rlogin’
(远程登录)进度开端阶段的数目包样例:
arp who-has csam tell rtsg
arp reply csam is-at CSAM
第三行表示:rtsg发送了贰个arp数据包(nt:向全网段发送,arp数据包)以询问csam的以太网地址
Csam(nt:可从下文看出来,
是Csam)以他本人的以太网地址做了答疑(在这些事例中,
以太网地址以大写的名字标识, 而internet
地址(即ip地址)以任何的小写名字标识).

倘使应用tcpdump -n, 能够清晰看出以太网以及ip地址而不是名字标识:
arp who-has 128.3.254.6 tell 128.3.254.68
arp reply 128.3.254.6 is-at 02:07:01:00:01:c4

假诺大家使用tcpdump -e, 则能够清楚的来看第3个数据包是全网广播的,
而第②个数据包是点对点的:
RTSG Broadcast 0806 64: arp who-has csam tell rtsg
CSAM RTSG 0806 64: arp reply csam is-at CSAM
先是个数据包表明:以arp包的源以太地址是XC60TSG, 指标地址是全以太网段,
type域的值为16进制0806(表示ETHE奥迪Q5_A奥德赛P(nt:arp包的门类标识)),
包的总市长度为64字节.

tcpdumpnetucb-ether

TCP 数据包

(注意:以下将会假定你对 XC90FC-793所讲述的TCP熟练. 若是不熟,
以下描述以及tcpdump程序恐怕对你扶助十分小.(nt:警告可忽略,
只需继续看, 目生的地点可回头再看.).

一般而言tcpdump对tcp数据包的浮现格式如下:
src > dst: flags data-seqno ack window urgent options

src 和 dst 是源和目标IP地址以及相应的端口. flags 标志由S(SYN), F(FIN),
P(PUSH, Highlander(景逸SUVST),
W(ECN CWT(nt | rep:未知, 需补充))或者 E(ECN-Echo(nt | rep:未知,
需补充))组成,
单身3个’.’表示从没flags标识.
数据段顺序号(Data-seqno)描述了此包中多少所对应类别号空间中的二个地方(nt:整个数据被隔绝,
每段有2个顺序号, 全部的顺序号构成1个类别号空间)(可参考以下例子). Ack
描述的是同3个连连,同叁个样子,下二个本端应该接受的
(对方应该发送的)数据片段的依次号.
Window是本端可用的多寡接收缓冲区的尺寸(也是对方发送数据时需依据那一个尺寸来集团数据).
Urg(urgent) 表示数据包中有急切的数据. options 描述了tcp的某个选用,
那么些选用都用尖括号来代表(如 <mss 1024>).

src, dst 和 flags 那多个域总是会被展现.
别的域的显示与否信赖于tcp协议头里的音信.

那是3个从trsg到csam的1个rlogin应用登录的伊始阶段.
rtsg.1023 > csam.login: S 768512:768512(0) win 4096 <mss
1024>
csam.login > rtsg.1023: S 947648:947648(0) ack 768513 win 4096
<mss 1024>
rtsg.1023 > csam.login: . ack 1 win 4096
rtsg.1023 > csam.login: P 1:2(1) ack 1 win 4096
csam.login > rtsg.1023: . ack 2 win 4096
rtsg.1023 > csam.login: P 2:21(19) ack 1 win 4096
csam.login > rtsg.1023: P 1:2(1) ack 21 win 4077
csam.login > rtsg.1023: P 2:3(1) ack 21 win 4077 urg 1
csam.login > rtsg.1023: P 3:4(1) ack 21 win 4077 urg 1
率先行代表有3个数额包从rtsg主机的tcp端口1023发送到了csam主机的tcp端口login上(nt:udp磋商的端口和tcp协议的端
口是独家的四个空中, 固然取值范围一致). S表示设置了SYN标志.
包的顺序号是768512, 并且没有包涵数据.(表示格式
为:’first:last(nbytes)’,
其含义是’此包中数量的顺序号从first开始直到last截止,不包涵last.
并且总共包蕴nbytes的
用户数量’.) 没有捎带应答(nt:从下文来看,第贰行才是有捎带应答的数据包),
可用的承受窗口的分寸为4096bytes, 并且请求端(rtsg)
的最大可承受的多寡段大小是1024字节(nt:那几个音信作为请求发向应答端csam,
以便双方尤其的商议).

Csam 向rtsg 回复了基本相同的SYN数据包, 其不一样只是多了多个’ piggy-backed
ack'(nt:捎带回的ack应答, 针对rtsg的SYN数据包).

rtsg 同样针对csam的SYN数据包回复了一ACK数据包作为应答.
‘.’的意义正是此包中从不标明被设置. 由于此应答包中不含有数据, 所以
包中也远非数据段连串号. 提示! 此ACK数据包的顺序号只是二个小平头1.
有如下解释:tcpdump对于多个tcp连接上的对话, 只打字与印刷会话两端的
千帆竞发数据包的队列号,其后相应数额包只打字与印刷出与发轫包系列号的差别.即开始体系号之后的行列号,
可被当做此会话上脚下所传数据片段在一切
要传输的数额中的’相对字节’地方(nt:双方的率先个任务都是1,
即’相对字节’的早先编号). ‘-S’将覆盖这一个意义,
使数据包的原本顺序号被打字与印刷出来.

第⑤行的意思为:rtsg 向
csam发送了19字节的数量(字节的号子为2到20,传送方向为rtsg到csam).
包中装置了PUSH标志. 在第9行,
csam 喊到, 她曾经从rtsg中接收了21之下的字节, 但不包涵21数码的字节.
这个字节存放在csam的socket的接收缓冲中, 相应地,
csam的接受缓冲窗口大小会缩减19字节(nt:能够从第四行和第⑨行win属性值的变更看出来).
csam在第捌行那一个包中也向rtsg发送了二个
字节. 在第7行和第捌行, csam 继续向rtsg
分别发送了八个只含有一个字节的数据包, 并且那个数量包带PUSH标志.

设若所抓到的tcp包(nt:即那里的snapshot)太小了,以至tcpdump无法完全获得其尾部数据,
那时, tcpdump会尽量解析这些不完全的头,
并把剩下不可能分析的有的显得为'[|tcp]’.
即便底部含有虚假的性质音讯(比如其长度属性其实比尾部实际尺寸长或短),
tcpdump会为该底部
显示'[bad opt]’. 假设底部的长短告诉大家一些选项(nt | rt:从下文来看,
指tcp包的头顶中针对ip包的一部分取舍, 回头再翻)会在此包中,
而真的的IP(数据包的长度又不够容纳这几个选择, tcpdump会展现'[bad hdr
length]’.

抓取带有独特标志的的TCP包(如SYN-ACK标志, UOdysseyG-ACK标志等).

在TCP的头顶中, 有8比特(bit)用作决定位区域, 其取值为:
CWR | ECE | URG | ACK | PSH | RST | SYN | FIN
(nt | rt:从表明格局上可估算:这一个位是用或的艺术来组合的, 可回头再翻)

现要是大家想要监察和控制建立3个TCP连接一切经过中所发生的多寡包.
可回想如下:TCP使用一遍握手球协会议来确立贰个新的接连; 其与此3次握手
一连各种对应,并带有相应TCP控制标志的多寡包如下:
1) 连接发起方(nt:Caller)发送SYN标志的数据包
2) 接收方(nt:Recipient)用带有SYN和ACK标志的数据包举办回复
3) 发起方收到接收方回应后再发送带有ACK标志的数额包举办回复

在首先行,主机sushi向wrl发送号码为6709的贸易会话(注意源主机前面包车型地铁数字是交易号,不是端口).那项请求长112字节,不包罗UDP和IP报头.在文件句柄(fh)21,240%.731657119上实施readlink(读取符号连接)操作.(假设时局不错,就象这种场地,文件句柄能够依次翻译成主次设备号,i节点号,和事件号(generationnumber).)Wrl回答`ok’和连接的内容.
在第①行,sushi请求wrl在目录文件9,74/4096.687第88中学找找`xcolors’.注意数据的打字与印刷格式取决于操作类型.格式应该是足以本人表达的.

显示全数通过网关snup的ftp报文(注意那一个表明式被单引号括起,幸免shell解释园括弧):

万一给出标识符,但没给关键字,那么暗指近年来使用的最首要字.例如,

(注意:以下的讲述中借使你熟知冠道FC-1035表达的域名服务协议.假如您不了然这一个体协会议,下面包车型地铁内容就象是天书.)

arpwho-hascsamtellrtsg
arpreplycsamis-atCSAM

tcpdump’tcp[13]&3!=0andnotsrcanddstnetlocalnet’

src>dst:idoprcodeflagsa/n/autypeclassdata(len)

选项(OPTIONS)
-a
试着把网络和播音地址转换到名称.
-c
当接过count报文后退出.
-d
把编写翻译好的报文匹配模板(packet-matchingcode)翻译成可读形式,传往标准输出,然后退出.
-dd
把报文匹配模板(packet-matchingcode)以C程序片断的样式输出.
-ddd
把报文匹配模板(packet-matchingcode)以十进制数格局出口(后边加上总数).
-e
每行都展现链路层报头.
-f
用数字情势显得’外部的’网络地址,而不是字符形式(那么些选项用来绕开脑壳坏光的SUN黄页服务器的难题—一般说来它翻译外部网络数字地址的时候会长久挂起).
-F
把file的剧情用作过滤表达式.忽略命令行上的发挥式.
-i
监听interface.假设不钦赐接口,tcpdump在系统的接口清单中,寻找号码最小,已经安插好的接口(loopback除外).选中的时候会暂停连接.
-l
行缓冲标准输出.可用于捕捉数据的还要查看数据.例如,
“tcpdump-l|teedat”or“tcpdump-l>dat&tail-fdat”.
-n
别把地点转换来名字(便是说,主机地址,端口号等)
-N
不出示主机名字中的域名部分.例如,假诺使用那几个选项,tcpdump只显示“nic”,而不是“nic.ddn.mil”.
-O
不准运营报文匹配模板的优化器.只有当您可疑优化器有bug时才有用.
-p
禁绝把接口置成promiscuous格局.注意,接口有恐怕因别的原由此高居promiscuous形式;由此,’-p’无法看做`etherhost{local-hw-addr}或etherbroadcast’的简写.
-q
即刻输出.突显较少的说道新闻,输骑行会短一丢丢.
-r
从file中读入数据报(文件是用-w选项创设的).假若file是“-”,就读标准输入.
-s
从各样报文中截取snaplen字节的数据,而不是缺省的68(假使是SunOS的NIT,最小值是96).六17个字节适用于IP,ICMP,TCP和UDP,但是有或然截掉名字服务器和NFS报文的磋商消息(见下边).输出时若是钦赐“[|proto]”,tcpdump能够提出这一个捕捉量过小的数据报,那里的proto是截断发生处的磋商层名称.注意,选用更大的捕捉范围既充实了处理报文的年月,又呼应的减少了报文的缓冲数量,大概引致报文的丢失.你应有把snaplen设的尽心小,只要能够容纳你需求的说道消息就能够了.

上面是从主机rtsgrlogin到主机csam的始发部分.

在第4行,rtsg传给csam二十三个字节的数码(字节2到20).报文中设置了PUSH标志.第⑨行csam注脚它接受了rtsg的多少,字节序号是21,但不包罗第叁2个字节.显明大部分数目在socket的缓冲区内,因为csam的选取窗口收到的数据低于21个字节.同时csam向rtsg发送了3个字节的数据.第捌和第10行展现csam发送了两个字节的燃眉之急数据到rtsg.

展现经过网关snup中中国足球球组织一流联赛过576字节的IP数据报:

来得IP广播或多目传送的数据报,那几个报文不是经过以太网的播音或多目传送格局传递的:

倘若给出’-e’选项就显得链路层报头.在以太网上,展现报文的源目地址,协议和报文长度.

-T
把通过”expression”挑选出来的报文解释成钦定的type.近来已知的类型有:rpc(远程进程调用RemoteProcedureCall),rtp(实时应用协议Real-TimeApplicationsprotocol),rtcp(实时应用控制协议Real-TimeApplicationscontrolprotocol),vat(可视音频工具Visual奥迪(Audi)oTool),和wb(分布式白板distributed惠特eBoard).
-S
来得相对的,而不是相持的TCP种类号.
-t
禁止展现时戳标志.
-tt
浮现未格式化的时戳标志.
-v
(稍微多一些)繁琐的输出.例如,彰显IP数据报中的生活周期和劳动类型.
-vv
更麻烦的输出.例如,展现NFS应答报文的叠加域.
-w
把原始报文存进file,而不是分析和展现.它们得以以往用-r选项显示.假如file是“-”,就写往专业输出.
-x
以16进制数情势显得每贰个报文(去掉链路层报头后).可以体现较小的欧洲经济共同体报文,不然只显示snaplen个字节.
expression
用来摘取要转储的数额报.尽管没有内定expression,就转储互联网的全体报文.不然,只转储相对expression为`true’的数据报.
expression一个或三个原语(primitive)组成.原语日常由三个标识(id,名称或数字),和标识后面包车型大巴二个或多少个修饰子(qualifier)组成.修饰子有三种区别的类型:

[-Ttype][-wfile][expression]

dsthosthost
若果报文中IP的目标地址域是host,则逻辑为真.host既能够是地方,也足以是主机名.
srchosthost
设若报文中IP的源地址域是host,则逻辑为真.
hosthost
假定报文中IP的源地址域恐怕指标地址域是host,则逻辑为真.上边装有的host表明式都足以增加ip,arp,或rarp关键字做前缀,就象:
iphosthost

示例(EXAMPLES)
突显全部进出sundown的报文:

jssmag.209.165>helios.132:atp-req12266<0-7>0xae030001
helios.132>jssmag.209.165:atp-resp12266:0(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:1(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:2(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:3(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:4(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:5(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:6(512)0xae040000
helios.132>jssmag.209.165:atp-resp*12266:7(512)0xae040000
jssmag.209.165>helios.132:atp-req12266<3,5>0xae030001
helios.132>jssmag.209.165:atp-resp12266:3(512)0xae040000
helios.132>jssmag.209.165:atp-resp12266:5(512)0xae040000
jssmag.209.165>helios.132:atp-rel12266<0-7>0xae030001
jssmag.209.133>helios.132:atp-req*12267<0-7>0xae030002

RTSGBroadcast080664:arpwho-hascsamtellrtsg
CSAMRTSG080664:arpreplycsamis-atCSAM

tcpdumphostheliosand\(hotorace\)

icsd-net.112.220>jssmag.2:nbp-lkup190:”=:LaserWriter@*”
jssmag.209.2>icsd-net.112.220:nbp-reply190:”RM1140:LaserWriter@*”250
techpit.2>icsd-net.112.220:nbp-reply190:”techpit:LaserWriter@*”186

UDP报文

NFS应答报文没有鲜明性评释奇骏PC操作.因而tcpdump保留有“前不久的”请求记录,依照交易号匹配应答报文.固然回答报文没有对号入座的恳求报文,它就不可能分析.

Proto是ether,fddi,ip,arp,rarp,tcp,udp,oricmp之一,同时也建议了下标操作的情商层.expr给出字节单位的偏移量,该偏移量绝对于钦点的商谈层.Size是可选择,建议感兴趣的字节数;它能够是1,2,4,缺省为1字节.由重点字len给出的长度运算符指明报文的长度.
例如,`ether[0]&1!=0’捕捉所有的多目传送报文.表达式`ip[0]&0xf!=5’捕捉全体带可选域的IP报文.表明式`ip[6:2]&0x1fff=0’只捕捉未分片和片偏移为0的数量报.那种检讨隐含在tcp和udp下标操作中.例如,tcp[0]毫无疑问是TCP报头的首先个字节,而不是当中有些IP片的率先个字节.

Arp/rarp报文的输出呈现请求类型及其参数.输出格式倾向于能够自小编解释.这里是四个简单的例子,来自主机rtsg到主机csam的’rlogin’起始有的:

的简写方式,在那之中p为上述协议的一种.
exprrelopexpr
万一那一个关系创造,则逻辑为真,个中relop是>,<,>=,<=,=,!=之一,expr是数学表明式,由常整数(标准C语法格局),普通的二进制运算符[+,-,*,/,&,|],二个尺寸运算符,和点名的报文数据访问算符组成.要拜访报文内的数额,使用上面包车型地铁语法:
proto[expr:size]

留神名字服务的刺探和答复一般说来相比较大,68字节的snaplen大概不大概捕捉到丰富的报文内容.要是你真的在商量名字服务的气象,能够使用-s选项附加捕捉缓冲区.`-s128’应该效果不错了.

actinide.who>broadcast.who:udp84

名称(NAME)
tcpdump-转储网络上的数据流
总览(SYNOPSIS)
tcpdump[-adeflnNOpqStvx][-ccount][-Ffile]

体现本地的主机和Beck雷的主机之间的网络数据:

出口格式(OUTPUTFO牧马人MAT)
tcpdump的输出格式取决于协议.上边的讲述给出大部分格式的粗略表明和范例.

描述(DESCRIPTION)
Tcpdump打字与印刷出在某些互连网界面上,匹配布尔表达式expression的报头.

(-v同时使它显得IP报头的TTL,ID,和分片域,在这些事例里把它们容易了.)在率先行,sushi请求wrl从文件21,11/12.195的舞狮地方24576初阶,读取8192字节.Wrl回答`ok’;第①行呈现的报文是应对的首先个分片,由此只有1472字节(其他数据在持续的分片中传过来,但出于那些分片里没有NFS甚至UDP报头,因而依据所选用的过滤器表达式,有大概不显得).-v选项还会来得一些文件属性(它们当做文件数量的附带部分传回到):文件类型(普通文书“REG”),存取情势(八进制数),uid和gid,以及文件大小.
一旦再给二个-v选项(-vv),还是能展现越来越多的细节.

显示既不是根源当地主机,也不是传往本地主机的互连网数据(若是您把网关通往有个别别的网络,那个做法将不会把多少发往你的本地互连网).

的简写格局,不应该和
not(hostvsorace)

UDP名字服务应对

率先行是互连网icsd的112主机在互联网jssmag上的播放,对名字laserwriter做名字查询请求.名字查询请求的nbp标识号是190.次之行显示的是对这几个请求的回答(注意它们有同等的标识号),主机jssmag.209代表在它的250端口注册了一个laserwriter的能源,名字是”KugaM1140″.第③行是那一个请求的其余回复,主机techpit的186端口有laserwriter注册的”techpit”.
ATP报文格式如下例所示:

前两行提交了appletalk的网络名称.第一行提交有些主机的名字(主机和互联网依据第壹组数字分别-互连网号一定是两组数字,主机号一定是三组数字.)号码和名字用空白符(空格或tab)隔离./etc/atalk.names文件能够包括空行或注释行(以`#’发轫的行).
Appletalk地址按这么些格式呈现

对于Ultrix和DigitalUNIX:一旦拔尖用户使用pfconfig(8)开放了promiscuous操作格局(promiscuous-mode),任何用户都足以运维tcpdump.

Jssmag.209向主机helios发起12266号交易,请求8个报文(`<0-7>’).行尾的十六进制数是请求中`userdata’域的值.

net.host.port

dir
大势修饰子建议相对于标识的传导方向(数据是传播依然传来标识).能够应用的样子有src,dst,srcordst和srcanddst.例如,`srcfoo’,`dstnet128.3′,`srcordstportftp-data’.如若不钦点方向修饰子,就选拔缺省的srcordst.对于`null’链路层(正是说象slip之类的点到点协议),用inbound和outbound修饰子钦赐所需的传导方向.
proto
协和式飞机械修理饰子需要同盟钦点的协议.能够动用的商谈有:ether,fddi,ip,arp,rarp,decnet,lat,sca,moprc,mopdl,tcp和udp.例如,`ethersrcfoo’,`arpnet128.3′,`tcpport21′.借使不钦点协议修饰子,就使用全体符合项指标协议.例如,`srcfoo’指`(ip或arp或rarp)srcfoo'(注意后者不合乎语法),`netbar’指`(ip或arp或rarp)netbar’,`port53’指`(tcp或udp)port53′.
[`fddi’实际上是`ether’的小名;分析器把它们便是“用在钦定网络接口上的多少链路层.”FDDI报头蕴涵类似于以太协议的源目地址,而且日常包涵类似于以太协议的报文类型,由此你能够过滤FDDI域,就象分析以太协议一样.FDDI报头也带有其余域,但是你不能在过滤器表达式里显式描述.]

混淆.
表达式参数能够用作单个参数字传送给tcpdump,也足以用作复合参数,后者更有益于一些.一般说来,尽管表达式包蕴Shell元字符(metacharacter),传递单个括起来的参数要便于一些.复合参数在被解析前用空格联接一起.

它等价于:
etherproto\ipandhosthost

体现helios和主机hot,ace之间的报文字传递送:

首先个例证里,helios回答了h2opolo发出的标识为3的摸底,一共是一个应答记录,二个名字服务记录和八个管理结构记录.第一个应答纪录的类别是A(地址),数据是internet地址128.32.137.3.答应的全长为273字节,不包蕴UDP和IP报头.作为A记录的class(C_IN)能够忽略op(询问)和rcode(NoError).
在第四个例子里,helios对标识为2的摸底作出域名不设有(NXDomain)的答疑,没有答复记录,3个名字服务记录,而且尚未管理结构.
`*’证明设置了高于回答(authoritativeanswer).由于没有答复记录,那里就不显示type,class和data.

helios.domain>h2opolo.1538:33/3/7A128.32.137.3(273)
helios.domain>h2opolo.1537:2NXDomain*0/1/0(97)

(假设不设有/etc/atalk.names,恐怕当中缺乏有效项目,就以数字方式体现地址.)第一个例子里,互连网144.1的209节点的NBP(DDP端口2)向网络icsd的112节点的220端口发送数据.次之行和地方一样,只是知道了源节点的齐全(`office’).第3行是从网络jssmag的149节点的235端口向icsd-net的NBP端口广播(注意广播地址(255)隐含在无主机号的互联网名字中-所以在/etc/atalk.names中分别节点名和互连网名是个好主意).
Tcpdump能够翻译NBP(名字联结协议)和ATP(Appletalk交互协议)的报文内容.其余协商只转储协议名称(或号码,假若还没给那个协议注册名称)和报文大小.

sushi.6709>wrl.nfs:112readlinkfh21,24/10.73165
wrl.nfs>sushi.6709:replyok40readlink”../var”
sushi.201b>wrl.nfs:
144lookupfh9,74/4096.6878″xcolors”
wrl.nfs>sushi.201b:
replyok128lookupfh9,74/4134.3150

tcpdump’ether[0]&1=0andip[16]>=224′

ARP/RARP报文

rtsg.1023>csam.login:S768512:768512(0)win4096
csam.login>rtsg.1023:S947648:947648(0)ack768513win4096
rtsg.1023>csam.login:.ack1win4096
rtsg.1023>csam.login:P1:2(1)ack1win4096
csam.login>rtsg.1023:.ack2win4096
rtsg.1023>csam.login:P2:21(19)ack1win4096
csam.login>rtsg.1023:P1:2(1)ack21win4077
csam.login>rtsg.1023:P2:3(1)ack21win4077urg1
csam.login>rtsg.1023:P3:4(1)ack21win4077urg1

同意的原语有:

tcpdump’gatewaysnupandip[2:2]>576′

144.1.209.2>icsd-net.112.220
office.2>icsd-net.112.220
jssmag.149.235>icsd-net.2

tcpdumpipandnotnetlocalnet

名字服务应对的格式是

来得每种TCP会话的苗头和终结报文(SYN和FIN报文),而且会话方中有三个长距离主机.

Src和dst是源目IP地址和端口.Flags是S(SYN),F(FIN),P(PUSH)或奥迪Q7(OdysseyST)或单独的`.'(无标志),可能是它们的组合.Data-seqno表明了本报文中的数额在流序号中的地方(见下例).Ack是在那条连接上信源机希望下二个收下的字节的流序号(sequencenumber).Window是在那条连接上信源机接收缓冲区的字节大小.Urg注解报文内是`十万火急(urgent)’数据.Options是tcp可选报头,用尖括号括起(例如,).
Src,dst和flags肯定期存款在.别的域依照报文的tcp报头内容,只输出有必不可少的某个.

在FDDI网络上,’-e’选项导致tcpdump展现出`帧控制(framecontrol)’域,源目地址和报文长度.(`帧控制’域负责解释别的的报文.普通报文(比如说载有IP数据报)是`异步’报文,优先级介于0到7;例如,`async4′.这一个被认为载有802.2逻辑链路控制(LLC)报文;假如它们不是ISO数据报或许所谓的SNAP报文,就展现出LLC报头.

见怪不怪tcp协议的输出格式是:

AppletalkDDP报文封装在UDP数据报中,解包后按DDP报文转储(也便是说,忽略全体的UDP报头音讯).文件/etc/atalk.names用来把appletalk互联网和节点号翻译成名字.这几个文件的行格式是

[-iinterface][-rfile][-ssnaplen]

tcpdump’gatewaysnupand(portftporftp-data)’

1.254ether
16.1icsd-net
1.254.110ace

长机h2opolo访问helios上的域名服务,询问和ucbvax.berkeley.edu.关联的地点记录(qtype=A).查询号是`3′.`+’证明设置了递归请求标志.查询长度是37字节,不包罗UDP和IP头.查询操作是见惯司空的Query操作,因而op域能够忽略.假如op设置成别的什么事物,它应当显得在`3’和`+’之间.类似的,qclass是一般的C_IN类型,也被忽略了.别的类别的qclass应该在`A’前边展现.
Tcpdump会检查一些语无伦次情况,相应的结果作为补充域放在方括号内:若是有些查询包蕴回答,名字服务或管理机构部分,就把ancount,nscount,或arcount彰显成`[na]’,`[nn]’或`[nau]’,那里的n代表相应的数量.借使在其次和第叁字节中,任何二个回应位(AA,RA或rcode)或其余1个`非得为零’的位被置位,就显示`[b2&3=x]’,这里的x是报头第2和第贰字节的16进制数.

ipprotoprotocol
一旦报文是IP数据报(参见ip(4P)),其情节的磋商项目是protocol,则逻辑为真.Protocol能够是数字,也足以是下列名称中的贰个:icmp,igrp,udp,nd,或tcp.注意这一个标识符tcp,udp,和icmp也一律是任重(英文名:rèn zhòng)而道远字,所以必须用反斜杠(\)转义,在C-shell中应该是\\.
etherbroadcast
假定报文是以太广播报文,则逻辑为真.关键字ether是可选的.
ipbroadcast
倘诺报文是IP广播报文,则逻辑为真.Tcpdump检查全0和全1广播约定,并且检查本地的子网掩码.
ethermulticast
若果报文是以太多目传送报文(multicast),则逻辑为真.关键字ether是可选的.这实际上是`ether[0]&1!=0’的简写.
ipmulticast
借使报文是IP多目传送报文,则逻辑为真.
etherprotoprotocol
假使报中华全国文艺界抗击敌人组织议属于以太类型的protocol,则逻辑为真.Protocol能够是数字,也得以是名字,如ip,arp,或rarp.注意那个标识符也是关键字,所以必须用反斜杠(\)转义.[如果是FDDI(例如,`fddiprotocolarp’),协议标识来自802.2逻辑链路控制(LLC)报头,它常常位于FDDI报头的顶层.当根据商业事务标识过滤报文时,Tcpdump倘使全部的FDDI报文含有LLC报头,而且LLC报头用的是SNAP格式.]

作为上述的补偿,有部分与众差异的`原语’关键字,它们差别于上边的方式:gateway,broadcast,less,greater和数学表明式.那么些在前边有叙述.

KIPAppletalk(UDP上的DDP)

UDP格式就象那些rwho报文呈现的:

src>dst:flagsdata-seqnoackwindowurgentoptions

的简写格局,在那之中p为上述协议的一种.注意tcpdump如今不领会怎么着分析这么些协议.
tcp,udp,icmp
是:
ipprotop

正是把2个udp数据报从主机actinide的who端口发送到broadcast,Internet广播地址的who端口.报文包蕴84字节的用户数据.
好几UDP服务能够分辨出来(从源目端口号上),因而显得出更高层的商议消息.尤其是域名服务请求(QashqaiFC-103百分之四十35)和NFS的奔驰M级PC调用(帕杰罗FC-1050).

对于HP-UX的dlpi:你无法不是root,可能把它安装成root的设置uid程序.对于IQashqaiIX的snoop:你无法不是root,也许把它安装成root的设置uid程序.对于Linux:你必须是root,可能把它安装成root的设置uid程序.

greaterlength
一经报文的长短抢先等于length,则逻辑为真.它一律:
len>=length.

NFS请求和响应

UDP域名服务请求(NameServerRequests)

域名服务请求的格式是

此间首先个报文提议以太网源地址是本田UR-VTSG,目的地址是以太网广播地址,类型域为16进制数0806(类型ETHE奥迪Q3_A帕JeroP),报文全长64字节.
TCP报文

园括弧括起来的原语和操作符(园括弧在Shell中有专用,所以必须转义).
取反操作(`!’or`not’).
连通操作(`&&’or`and’).
或操作(`||’or`or’).
取反操作有参天优先级.或操作和连通操作有一致的优先级,运算时从左到右结合.注意连结操作须求显式的and算符,而不是同等看待放置.

它只匹配源端口是port的TCP报文.
lesslength
若果报文的尺寸小于等于length,则逻辑为真.它一律:
len<=length.

更扑朔迷离的过滤器表明式能够通过and,or和not连接原语来组建.例如,`hostfooandnotportftpandnotportftp-data’.为了少敲点键,能够忽略相同的修饰子.例如,`tcpdstportftporftp-dataordomain’实际上就是`tcpdstportftportcpdstportftp-dataortcpdstportdomain’.

在意NFS请求的数据量十分的大,除非扩大snaplen,不然广大细节不能展现.试一试`-s192’选项.

展现全数不是回响请求/应答的ICMP报文(也正是说,不是ping报文):

decnetsrchost
假诺DECNET的源地址是host,则逻辑为真,该主机地址的花样或许是“10.123”,或者是DECNET主机名.[唯有安排成运维DECNET的Ultrix系统援救DECNET主机名.]
decnetdsthost
一经DECNET的目标地址是host,则逻辑为真.
decnethosthost
假若DECNET的源地址或指标地址是host,则逻辑为真.
ip,arp,rarp,decnet
是:
etherprotop

对于BSD:你无法不有/dev/bpf*的读访问权限.

原语能够用下述方法结合使用:

tcpdump’icmp[0]!=8andicmp[0]!=0″

对此host/ehost,它既能够是名字,也足以是数字.)
dstnetnet
一经报文的IP目标地方属于网络号net,则逻辑为真.net既能够是名字(存在/etc/networks中),也足以是互连网号.(详见networks(4)).
srcnetnet
设若报文的IP源地址属于互联网号net,则逻辑为真.
netnet
假定报文的IP源地址或指标地址属于网络号net,则逻辑为真.
netnetmaskmask
假如IP地址匹配钦赐互联网掩码(netmask)的net,则逻辑为真.本原语可以用src或dst修饰.
netnet/len
若果IP地址匹配钦赐互连网掩码的net,则逻辑为真,掩码的有用位宽为len.本原语能够用src或dst修饰.
dstportport
如若报文是ip/tcp或ip/udp,并且指标端口是port,则逻辑为真.port是一个数字,也能够是/etc/services中证实过的名字(参看tcp(4P)和udp(4P)).假若采用名字,则检查端口号和协议.即使使用数字,也许有二义的名字,则只检查端口号(例如,dstport513将显示tcp/login的数量和udp/who的数量,而portdomain将显示tcp/domain和udp/domain的数目).
srcportport
倘诺报文的源端口号是port,则逻辑为真.
portport
假使报文的源端口或目标端口是port,则逻辑为真.上述的随机七个端口表达式都得以用关键字tcp或udp做前缀,就象:
tcpsrcportport

比如,下边一行突显了三个扩散的压缩的TCP报文,有三个包罗的总是标识;确认(ack)的变化量是6,顺序号是49,报文ID是6;有四个字节的数量和五个字节的减少报头:

tcpdumphostsundown

突显ace和除了helios以外的享有主机的IP报文:

其他标志字符能够体现为`-‘(没有设置递归有效(RA))和`|'(设置音信截短(TC)).假使`标题’部分从没有效的始末,就体现`[nq]’.

率先行是说从rtsg的tcp端口1023向csam的login端口发送报文.S标志注解设置了SYN标志.报文的流序号是768512,没有数据.(这几个写成`first:last(nbytes)’,意思是`从流序号first到last,不包罗last,有nbytes字节的用户数量’.)此时不曾捎带确认(piggy-backedack),有效的吸收接纳窗口是4096字节,有一个最大段大小(max-segment-size)的选项,请求设置mss为1024字节.
Csam用类似的款型回复,只是扩张了2个对rtsgSYN的附带确认.然后奥德赛tsg确认csam的SYN.`.’意味着没有设置标志.那个报文不含有数据,因而也就没有多少的流序号.注意那些肯定流序号是一个小平头(1).当tcpdump第一次发现叁个tcp会话时,它显得报文指导的流序号.在紧接着接受的报文里,它显妥贴前报文和最初那么些报文的流序号之差.那意味着从第贰个报文初阶,以后的流序号可以知道成多少流中的相对位移asrelativebytepositionsintheconversation’sdatastream(withthefirstdatabyteeachdirectionbeing`1′).`-S’选项能够转移那个特点,直接呈现原始的流序号.

(注意:以下描述中假如你纯熟OdysseyFC-1144中评释的SLIP压缩算法.)

对此Solaris的dlpi:你必须有网络虚假使备(networkpseudodevice),如/dev/le的读访问权限.

(注意:以下的叙说中假诺你明白SportageFC-793中验证的TCP协议,假设你不打听这几个体协会议,无论是本文依然tcpdump都对你用处相当的小)

的简写情势,当中p为上述协议的一种.
lat,moprc,mopdl
是:
etherprotop

type
类型修饰子提出标识名称或标识数字代表怎么样类型的东西.能够行使的花色有host,net和port.例如,`hostfoo’,`net128.3′,`port20′.要是不内定项目修饰子,就利用缺省的host.

交由-v(verbose)选项能够显得附加音信.例如:

src.xid>dst.nfs:lenopargs
src.nfs>dst.xid:replystatlenopresults

arpwho-has128.3.254.6tell128.3.254.68
arpreply128.3.254.6is-at02:07:01:00:01:c4

h2opolo.1538>helios.domain:3+A?ucbvax.berkeley.edu.(37)

src>dst:idop?flagsqtypeqclassname(len)