1snoop(1M) System Administration Commands snoop(1M)
2
3
4
6 snoop - capture and inspect network packets
7
9 snoop [-aqrCDINPSvV] [-t [r | a | d]] [-c maxcount]
10 [-d device] [-i filename] [-n filename] [-o filename]
11 [-p first [, last]] [-s snaplen] [-x offset [, length]]
12 [expression]
13
14
16 From a datalink or IP interface, snoop captures packets and displays
17 their contents. If the datalink or IP interface is not specified, snoop
18 will pick a datalink to use, giving priority to datalinks that have
19 been plumbed for IP traffic. snoop uses the pfmod(7M) and bufmod(7M)
20 STREAMS modules to provide efficient capture of packets from the net‐
21 work. Captured packets can be displayed as they are received or saved
22 to a file (which is RFC 1761-compliant) for later inspection.
23
24
25 snoop can display packets in a single-line summary form or in verbose
26 multi-line forms. In summary form, with the exception of certain VLAN
27 packets, only the data pertaining to the highest level protocol is dis‐
28 played. If a packet has a VLAN header and its VLAN ID is non-zero, then
29 snoop will show that the packet is VLAN tagged. For example, an NFS
30 packet will have only NFS information displayed. Except for VLAN infor‐
31 mation under the condition just described, the underlying RPC, UDP, IP,
32 and Ethernet frame information is suppressed, but can be displayed if
33 either of the verbose options are chosen.
34
35
36 In the absence of a name service, such as LDAP or NIS, snoop displays
37 host names as numeric IP addresses.
38
39
40 snoop requires an interactive interface.
41
43 -C
44
45 List the code generated from the filter expression for either the
46 kernel packet filter, or snoop's own filter.
47
48
49 -D
50
51 Display number of packets dropped during capture on the summary
52 line.
53
54
55 -N
56
57 Create an IP address-to-name file from a capture file. This must be
58 set together with the -i option that names a capture file. The
59 address-to-name file has the same name as the capture file with
60 .names appended. This file records the IP address to hostname map‐
61 ping at the capture site and increases the portability of the cap‐
62 ture file. Generate a .names file if the capture file is to be ana‐
63 lyzed elsewhere. Packets are not displayed when this flag is used.
64
65
66 -I interface
67
68 Capture IP packets from the network using the IP interface speci‐
69 fied by interface, for example, lo0. The ifconfig(1M) command can
70 be used to list available IP interfaces. The -I and -d options are
71 mutually exclusive.
72
73
74 -P
75
76 Capture packets in non-promiscuous mode. Only broadcast, multicast,
77 or packets addressed to the host machine will be seen.
78
79
80 -S
81
82 Display size of the entire link layer frame in bytes on the summary
83 line.
84
85
86 -V
87
88 Verbose summary mode. This is halfway between summary mode and ver‐
89 bose mode in degree of verbosity. Instead of displaying just the
90 summary line for the highest level protocol in a packet, it dis‐
91 plays a summary line for each protocol layer in the packet. For
92 instance, for an NFS packet it will display a line each for the
93 ETHER, IP, UDP, RPC and NFS layers. Verbose summary mode output may
94 be easily piped through grep to extract packets of interest. For
95 example, to view only RPC summary lines, enter the following: exam‐
96 ple# snoop -i rpc.cap -V | grep RPC
97
98
99 -a
100
101 Listen to packets on /dev/audio (warning: can be noisy).
102
103
104 -c maxcount
105
106 Quit after capturing maxcount packets. Otherwise keep capturing
107 until there is no disk space left or until interrupted with Con‐
108 trol-C.
109
110
111 -d datalink
112
113 Capture link-layer packets from the network using the DLPI datalink
114 specified by datalink, for example, bge0 or net0. The dladm(1M)
115 show-link subcommand can be used to list available datalinks. The
116 -d and -I options are mutually exclusive.
117
118
119 -i filename
120
121 Display packets previously captured in filename. Without this
122 option, snoop reads packets from the network interface. If a file‐
123 name.names file is present, it is automatically loaded into the
124 snoop IP address-to-name mapping table (See -N flag).
125
126
127 -n filename
128
129 Use filename as an IP address-to-name mapping table. This file must
130 have the same format as the /etc/hosts file (IP address followed by
131 the hostname).
132
133
134 -o filename
135
136 Save captured packets in filename as they are captured. (This file‐
137 name is referred to as the "capture file".) The format of the cap‐
138 ture file is RFC 1761-compliant. During packet capture, a count of
139 the number of packets saved in the file is displayed. If you wish
140 just to count packets without saving to a file, name the file
141 /dev/null.
142
143
144 -p first [ , last ]
145
146 Select one or more packets to be displayed from a capture file. The
147 first packet in the file is packet number 1.
148
149
150 -q
151
152 When capturing network packets into a file, do not display the
153 packet count. This can improve packet capturing performance.
154
155
156 -r
157
158 Do not resolve the IP address to the symbolic name. This prevents
159 snoop from generating network traffic while capturing and display‐
160 ing packets. However, if the -n option is used, and an address is
161 found in the mapping file, its corresponding name will be used.
162
163
164 -s snaplen
165
166 Truncate each packet after snaplen bytes. Usually the whole packet
167 is captured. This option is useful if only certain packet header
168 information is required. The packet truncation is done within the
169 kernel giving better utilization of the streams packet buffer. This
170 means less chance of dropped packets due to buffer overflow during
171 periods of high traffic. It also saves disk space when capturing
172 large traces to a capture file. To capture only IP headers (no
173 options) use a snaplen of 34. For UDP use 42, and for TCP use 54.
174 You can capture RPC headers with a snaplen of 80 bytes. NFS headers
175 can be captured in 120 bytes.
176
177
178 -t [ r | a | d ]
179
180 Time-stamp presentation. Time-stamps are accurate to within 4
181 microseconds. The default is for times to be presented in d (delta)
182 format (the time since receiving the previous packet). Option a
183 (absolute) gives wall-clock time. Option r (relative) gives time
184 relative to the first packet displayed. This can be used with the
185 -p option to display time relative to any selected packet.
186
187
188 -v
189
190 Verbose mode. Print packet headers in lots of detail. This display
191 consumes many lines per packet and should be used only on selected
192 packets.
193
194
195 -xoffset [ , length]
196
197 Display packet data in hexadecimal and ASCII format. The offset and
198 length values select a portion of the packet to be displayed. To
199 display the whole packet, use an offset of 0. If a length value is
200 not provided, the rest of the packet is displayed.
201
202
204 expression
205
206 Select packets either from the network or from a capture file. Only
207 packets for which the expression is true will be selected. If no
208 expression is provided it is assumed to be true.
209
210 Given a filter expression, snoop generates code for either the ker‐
211 nel packet filter or for its own internal filter. If capturing
212 packets with the network interface, code for the kernel packet fil‐
213 ter is generated. This filter is implemented as a streams module,
214 upstream of the buffer module. The buffer module accumulates pack‐
215 ets until it becomes full and passes the packets on to snoop. The
216 kernel packet filter is very efficient, since it rejects unwanted
217 packets in the kernel before they reach the packet buffer or snoop.
218 The kernel packet filter has some limitations in its implementa‐
219 tion; it is possible to construct filter expressions that it cannot
220 handle. In this event, snoop tries to split the filter and do as
221 much filtering in the kernel as possible. The remaining filtering
222 is done by the packet filter for snoop. The -C flag can be used to
223 view generated code for either the packet filter for the kernel or
224 the packet filter for snoop. If packets are read from a capture
225 file using the -i option, only the packet filter for snoop is used.
226
227 A filter expression consists of a series of one or more boolean
228 primitives that may be combined with boolean operators (AND, OR,
229 and NOT). Normal precedence rules for boolean operators apply.
230 Order of evaluation of these operators may be controlled with
231 parentheses. Since parentheses and other filter expression charac‐
232 ters are known to the shell, it is often necessary to enclose the
233 filter expression in quotes. Refer to for information about set‐
234 ting up more efficient filters.
235
236 The primitives are:
237
238 host hostname
239
240 True if the source or destination address is that of hostname.
241 The hostname argument may be a literal address. The keyword
242 host may be omitted if the name does not conflict with the name
243 of another expression primitive. For example, pinky selects
244 packets transmitted to or received from the host pinky, whereas
245 pinky and dinky selects packets exchanged between hosts pinky
246 AND dinky.
247
248 The type of address used depends on the primitive which pre‐
249 cedes the host primitive. The possible qualifiers are inet,
250 inet6, ether, or none. These three primitives are discussed
251 below. Having none of the primitives present is equivalent to
252 "inet host hostname or inet6 host hostname". In other words,
253 snoop tries to filter on all IP addresses associated with host‐
254 name.
255
256
257 inet or inet6
258
259 A qualifier that modifies the host primitive that follows. If
260 it is inet, then snoop tries to filter on all IPv4 addresses
261 returned from a name lookup. If it is inet6, snoop tries to
262 filter on all IPv6 addresses returned from a name lookup.
263
264
265 ipaddr, atalkaddr, or etheraddr
266
267 Literal addresses, IP dotted, AppleTalk dotted, and Ethernet
268 colon are recognized. For example,
269
270 o "172.16.40.13" matches all packets with that IP
271
272 o "2::9255:a00:20ff:fe73:6e35" matches all packets
273 with that IPv6 address as source or destination;
274
275 o "65281.13" matches all packets with that AppleTalk
276 address;
277
278 o "8:0:20:f:b1:51" matches all packets with the Ether‐
279 net address as source or destination.
280 An Ethernet address beginning with a letter is interpreted as a
281 hostname. To avoid this, prepend a zero when specifying the
282 address. For example, if the Ethernet address is
283 aa:0:45:23:52:44, then specify it by add a leading zero to make
284 it 0aa:0:45:23:52:44.
285
286
287 from or src
288
289 A qualifier that modifies the following host, net, ipaddr,
290 atalkaddr, etheraddr, port or rpc primitive to match just the
291 source address, port, or RPC reply.
292
293
294 to or dst
295
296 A qualifier that modifies the following host, net, ipaddr,
297 atalkaddr, etheraddr, port or rpc primitive to match just the
298 destination address, port, or RPC call.
299
300
301 ether
302
303 A qualifier that modifies the following host primitive to
304 resolve a name to an Ethernet address. Normally, IP address
305 matching is performed. This option is not supported on media
306 such as IPoIB (IP over InfiniBand).
307
308
309 ethertype number
310
311 True if the Ethernet type field has value number. If number is
312 not 0x8100 (VLAN) and the packet is VLAN tagged, then the
313 expression will match the encapsulated Ethernet type.
314
315
316 ip, ip6, arp, rarp, pppoed, pppoes
317
318 True if the packet is of the appropriate ethertype.
319
320
321 vlan
322
323 True if the packet has ethertype VLAN and the VLAN ID is not
324 zero.
325
326
327 vlan-id id
328
329 True for packets of ethertype VLAN with the id id.
330
331
332 pppoe
333
334 True if the ethertype of the packet is either pppoed or pppoes.
335
336
337 broadcast
338
339 True if the packet is a broadcast packet. Equivalent to
340 ether[2:4] = 0xffffffff for Ethernet. This option is not sup‐
341 ported on media such as IPoIB (IP over InfiniBand).
342
343
344 multicast
345
346 True if the packet is a multicast packet. Equivalent to
347 "ether[0] & 1 = 1" on Ethernet. This option is not supported on
348 media such as IPoIB (IP over InfiniBand).
349
350
351 bootp, dhcp
352
353 True if the packet is an unfragmented IPv4 UDP packet with
354 either a source port of BOOTPS (67) and a destination port of
355 BOOTPC (68), or a source port of BOOTPC (68) and a destination
356 of BOOTPS (67).
357
358
359 dhcp6
360
361 True if the packet is an unfragmented IPv6 UDP packet with
362 either a source port of DHCPV6-SERVER (547) and a destination
363 port of DHCPV6-CLIENT (546), or a source port of DHCPV6-CLIENT
364 (546) and a destination of DHCPV6-SERVER (547).
365
366
367 apple
368
369 True if the packet is an Apple Ethertalk packet. Equivalent to
370 "ethertype 0x809b or ethertype 0x80f3".
371
372
373 decnet
374
375 True if the packet is a DECNET packet.
376
377
378 greater length
379
380 True if the packet is longer than length.
381
382
383 less length
384
385 True if the packet is shorter than length.
386
387
388 udp, tcp, icmp, icmp6, ah, esp
389
390 True if the IP or IPv6 protocol is of the appropriate type.
391
392
393 net net
394
395 True if either the IP source or destination address has a net‐
396 work number of net. The from or to qualifier may be used to
397 select packets for which the network number occurs only in the
398 source or destination address.
399
400
401 port port
402
403 True if either the source or destination port is port. The port
404 may be either a port number or name from /etc/services. The tcp
405 or udp primitives may be used to select TCP or UDP ports only.
406 The from or to qualifier may be used to select packets for
407 which the port occurs only as the source or destination.
408
409
410 rpc prog [ , vers [ , proc ] ]
411
412 True if the packet is an RPC call or reply packet for the pro‐
413 tocol identified by prog. The prog may be either the name of an
414 RPC protocol from /etc/rpc or a program number. The vers and
415 proc may be used to further qualify the program version and
416 procedure number, for example, rpc nfs,2,0 selects all calls
417 and replies for the NFS null procedure. The to or from quali‐
418 fier may be used to select either call or reply packets only.
419
420
421 zone zoneid
422
423 True if zoneid matches either the source or destination zoneid
424 of a packet received on an ipnet device.
425
426
427 ldap
428
429 True if the packet is an LDAP packet on port 389.
430
431
432 gateway host
433
434 True if the packet used host as a gateway, that is, the Ether‐
435 net source or destination address was for host but not the IP
436 address. Equivalent to "ether host host and not host host".
437
438
439 nofrag
440
441 True if the packet is unfragmented or is the first in a series
442 of IP fragments. Equivalent to ip[6:2] & 0x1fff = 0.
443
444
445 expr relop expr
446
447 True if the relation holds, where relop is one of >, <, >=, <=,
448 =, !=, and expr is an arithmetic expression composed of num‐
449 bers, packet field selectors, the length primitive, and arith‐
450 metic operators +, −, *, &, |, ^, and %. The arithmetic opera‐
451 tors within expr are evaluated before the relational operator
452 and normal precedence rules apply between the arithmetic opera‐
453 tors, such as multiplication before addition. Parentheses may
454 be used to control the order of evaluation. To use the value of
455 a field in the packet use the following syntax:
456
457 base[expr [: size ] ]
458
459
460 where expr evaluates the value of an offset into the packet
461 from a base offset which may be ether, ip, ip6, udp, tcp, or
462 icmp. The size value specifies the size of the field. If not
463 given, 1 is assumed. Other legal values are 2 and 4. For exam‐
464 ple,
465
466 ether[0] & 1 = 1
467
468 is equivalent to multicast
469
470 ether[2:4] = 0xffffffff
471
472 is equivalent to broadcast.
473
474 ip[ip[0] & 0xf * 4 : 2] = 2049
475
476 is equivalent to udp[0:2] = 2049
477
478 ip[0] & 0xf > 5
479
480 selects IP packets with options.
481
482 ip[6:2] & 0x1fff = 0
483
484 eliminates IP fragments.
485
486 udp and ip[6:2]&0x1fff = 0 and udp[6:2] != 0
487
488 finds all packets with UDP checksums.
489
490 The length primitive may be used to obtain the length of the
491 packet. For instance "length > 60" is equivalent to "greater
492 60", and "ether[length − 1]" obtains the value of the last byte
493 in a packet.
494
495
496 and
497
498 Perform a logical AND operation between two boolean values. The
499 AND operation is implied by the juxtaposition of two boolean
500 expressions, for example "dinky pinky" is the same as "dinky
501 AND pinky".
502
503
504 or or ,
505
506 Perform a logical OR operation between two boolean values. A
507 comma may be used instead, for example, "dinky,pinky" is the
508 same as "dinky OR pinky".
509
510
511 not or !
512
513 Perform a logical NOT operation on the following boolean value.
514 This operator is evaluated before AND or OR.
515
516
517 slp
518
519 True if the packet is an SLP packet.
520
521
522 sctp
523
524 True if the packet is an SCTP packet.
525
526
527 ospf
528
529 True if the packet is an OSPF packet.
530
531
532
534 Example 1 Using the snoop Command
535
536
537 Capture all packets and display them as they are received:
538
539
540 example# snoop
541
542
543
544
545 Capture packets with host funky as either the source or destination and
546 display them as they are received:
547
548
549 example# snoop funky
550
551
552
553
554 Capture packets between funky and pinky and save them to a file. Then
555 inspect the packets using times (in seconds) relative to the first cap‐
556 tured packet:
557
558
559 example# snoop -o cap funky pinky
560 example# snoop -i cap -t r | more
561
562
563
564
565 To look at selected packets in another capture file:
566
567
568 example# snoop -i pkts -p 99,108
569 99 0.0027 boutique -> sunroof NFS C GETATTR FH=8E6
570 100 0.0046 sunroof -> boutique NFS R GETATTR OK
571 101 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
572 102 0.0102 marmot -> viper NFS C LOOKUP FH=561E screen.r.13.i386
573 103 0.0072 viper -> marmot NFS R LOOKUP No such file or directory
574 104 0.0085 bugbomb -> sunroof RLOGIN C PORT=1023 h
575 105 0.0005 kandinsky -> sparky RSTAT C Get Statistics
576 106 0.0004 beeblebrox -> sunroof NFS C GETATTR FH=0307
577 107 0.0021 sparky -> kandinsky RSTAT R
578 108 0.0073 office -> jeremiah NFS C READ FH=2584 at 40960 for 8192
579
580
581
582
583 To look at packet 101 in more detail:
584
585
586 example# snoop -i pkts -v -p101
587 ETHER: ----- Ether Header -----
588 ETHER:
589 ETHER: Packet 101 arrived at 16:09:53.59
590 ETHER: Packet size = 210 bytes
591 ETHER: Destination = 8:0:20:1:3d:94, Sun
592 ETHER: Source = 8:0:69:1:5f:e, Silicon Graphics
593 ETHER: Ethertype = 0800 (IP)
594 ETHER:
595 IP: ----- IP Header -----
596 IP:
597 IP: Version = 4, header length = 20 bytes
598 IP: Type of service = 00
599 IP: ..0. .... = routine
600 IP: ...0 .... = normal delay
601 IP: .... 0... = normal throughput
602 IP: .... .0.. = normal reliability
603 IP: Total length = 196 bytes
604 IP: Identification 19846
605 IP: Flags = 0X
606 IP: .0.. .... = may fragment
607 IP: ..0. .... = more fragments
608 IP: Fragment offset = 0 bytes
609 IP: Time to live = 255 seconds/hops
610 IP: Protocol = 17 (UDP)
611 IP: Header checksum = 18DC
612 IP: Source address = 172.16.40.222, boutique
613 IP: Destination address = 172.16.40.200, sunroof
614 IP:
615 UDP: ----- UDP Header -----
616 UDP:
617 UDP: Source port = 1023
618 UDP: Destination port = 2049 (Sun RPC)
619 UDP: Length = 176
620 UDP: Checksum = 0
621 UDP:
622 RPC: ----- SUN RPC Header -----
623 RPC:
624 RPC: Transaction id = 665905
625 RPC: Type = 0 (Call)
626 RPC: RPC version = 2
627 RPC: Program = 100003 (NFS), version = 2, procedure = 1
628 RPC: Credentials: Flavor = 1 (Unix), len = 32 bytes
629 RPC: Time = 06-Mar-90 07:26:58
630 RPC: Hostname = boutique
631 RPC: Uid = 0, Gid = 1
632 RPC: Groups = 1
633 RPC: Verifier : Flavor = 0 (None), len = 0 bytes
634 RPC:
635 NFS: ----- SUN NFS -----
636 NFS:
637 NFS: Proc = 11 (Rename)
638 NFS: File handle = 000016430000000100080000305A1C47
639 NFS: 597A0000000800002046314AFC450000
640 NFS: File name = MTra00192
641 NFS: File handle = 000016430000000100080000305A1C47
642 NFS: 597A0000000800002046314AFC450000
643 NFS: File name = .nfs08
644 NFS:
645
646
647
648
649 To view just the NFS packets between sunroof and boutique:
650
651
652 example# snoop -i pkts rpc nfs and sunroof and boutique
653 1 0.0000 boutique -> sunroof NFS C GETATTR FH=8E6C
654 2 0.0046 sunroof -> boutique NFS R GETATTR OK
655 3 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
656
657
658
659
660 To save these packets to a new capture file:
661
662
663 example# snoop -i pkts -o pkts.nfs rpc nfs sunroof boutique
664
665
666
667
668 To view encapsulated packets, there will be an indicator of encapsula‐
669 tion:
670
671
672 example# snoop ip-in-ip
673 sunroof -> boutique ICMP Echo request (1 encap)
674
675
676
677
678 If -V is used on an encapsulated packet:
679
680
681 example# snoop -V ip-in-ip
682 sunroof -> boutique ETHER Type=0800 (IP), size = 118 bytes
683 sunroof -> boutique IP D=172.16.40.222 S=172.16.40.200 LEN=104, ID=27497
684 sunroof -> boutique IP D=10.1.1.2 S=10.1.1.1 LEN=84, ID=27497
685 sunroof -> boutique ICMP Echo request
686
687
688
689 Example 2 Setting Up A More Efficient Filter
690
691
692 To set up a more efficient filter, the following filters should be used
693 toward the end of the expression, so that the first part of the expres‐
694 sion can be set up in the kernel: greater, less, port, rpc, nofrag, and
695 relop. The presence of OR makes it difficult to split the filtering
696 when using these primitives that cannot be set in the kernel. Instead,
697 use parentheses to enforce the primitives that should be OR'd.
698
699
700
701 To capture packets between funky and pinky of type tcp or udp on port
702 80:
703
704
705 example# snoop funky and pinky and port 80 and tcp or udp
706
707
708
709
710 Since the primitive port cannot be handled by the kernel filter, and
711 there is also an OR in the expression, a more efficient way to filter
712 is to move the OR to the end of the expression and to use parentheses
713 to enforce the OR between tcp and udp:
714
715
716 example# snoop funky and pinky and (tcp or udp) and port 80
717
718
719
721 0 Successful completion.
722
723
724 1 An error occurred.
725
726
728 /dev/audio Symbolic link to the system's primary audio device.
729
730
731 /dev/null The null file.
732
733
734 /etc/hosts Host name database.
735
736
737 /etc/rpc RPC program number data base.
738
739
740 /etc/services Internet services and aliases.
741
742
744 See attributes(5) for descriptions of the following attributes:
745
746
747
748
749 ┌─────────────────────────────┬─────────────────────────────┐
750 │ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
751 ├─────────────────────────────┼─────────────────────────────┤
752 │Availability │SUNWrcmdc │
753 └─────────────────────────────┴─────────────────────────────┘
754
756 dladm(1M), ifconfig(1M), netstat(1M), hosts(4), rpc(4), services(4),
757 attributes(5), audio(7I), ipnet(7D), bufmod(7M), dlpi(7P), pfmod(7M)
758
759
760 Callaghan, B. and Gilligan, R. RFC 1761, Snoop Version 2 Packet Capture
761 File Format. Network Working Group. February 1995.
762
764 The processing overhead is much higher for real-time packet interpreta‐
765 tion. Consequently, the packet drop count may be higher. For more reli‐
766 able capture, output raw packets to a file using the -o option and ana‐
767 lyze the packets offline.
768
769
770 Unfiltered packet capture imposes a heavy processing load on the host
771 computer, particularly if the captured packets are interpreted real-
772 time. This processing load further increases if verbose options are
773 used. Since heavy use of snoop may deny computing resources to other
774 processes, it should not be used on production servers. Heavy use of
775 snoop should be restricted to a dedicated computer.
776
777
778 snoop does not reassemble IP fragments. Interpretation of higher level
779 protocol halts at the end of the first IP fragment.
780
781
782 snoop may generate extra packets as a side-effect of its use. For exam‐
783 ple it may use a network name service (NIS or NIS+) to convert IP
784 addresses to host names for display. Capturing into a file for later
785 display can be used to postpone the address-to-name mapping until after
786 the capture session is complete. Capturing into an NFS-mounted file may
787 also generate extra packets.
788
789
790 Setting the snaplen (-s option) to small values may remove header
791 information that is needed to interpret higher level protocols. The
792 exact cutoff value depends on the network and protocols being used. For
793 NFS Version 2 traffic using UDP on 10 Mb/s Ethernet, do not set snaplen
794 less than 150 bytes. For NFS Version 3 traffic using TCP on 100 Mb/s
795 Ethernet, snaplen should be 250 bytes or more.
796
797
798 snoop requires information from an RPC request to fully interpret an
799 RPC reply. If an RPC reply in a capture file or packet range does not
800 have a request preceding it, then only the RPC reply header will be
801 displayed.
802
803
804
805SunOS 5.11 18 Feb 2009 snoop(1M)