Put into the "Capture Preferences" dialog box a check box to control
[obnox/wireshark/wip.git] / doc / ethereal.pod.template
1
2 =head1 NAME
3
4 Ethereal - Interactively browse network traffic
5
6 =head1 SYNOPSYS
7
8 B<ethereal>
9 S<[ B<-B> byte view height ]>
10 S<[ B<-b> bold font ]>
11 S<[ B<-c> count ]>
12 S<[ B<-f> filter expression ]>
13 S<[ B<-h> ]>
14 S<[ B<-i> interface ]> 
15 S<[ B<-k> ]>
16 S<[ B<-m> font ]>
17 S<[ B<-n> ]>
18 S<[ B<-P> packet list height ]>
19 S<[ B<-Q> ]>
20 S<[ B<-r> infile ]>
21 S<[ B<-R> filter expression ]>
22 S<[ B<-S> ]>
23 S<[ B<-s> snaplen ]>
24 S<[ B<-T> tree view height ]>
25 S<[ B<-t> time stamp format ]>
26 S<[ B<-v> ]>
27 S<[ B<-w> savefile]>
28
29 =head1 DESCRIPTION
30
31 B<Ethereal> is a GUI network protocol analyzer.  It lets you
32 interactively browse packet data from a live network or from a
33 previously saved capture file.  B<Ethereal> knows how to read B<libpcap>
34 capture files, including those of B<tcpdump>.  In addition, B<Ethereal>
35 can read capture files from B<snoop> (including B<Shomiti>) and
36 B<atmsnoop>, B<LanAlyzer>, uncompressed B<Sniffer>, Microsoft B<Network
37 Monitor>, AIX's B<iptrace>, B<NetXray>, B<Sniffer Pro>, B<RADCOM>'s
38 WAN/LAN analyzer, B<Lucent/Ascend> router debug output, HP-UX's
39 B<nettl>, the dump output from B<Toshiba's> ISDN routers, and
40 B<i4btrace> from the ISDN4BSD project.  There is no need to tell
41 B<Ethereal> what type of file you are reading; it will determine the
42 file type by itself.  B<Ethereal> is also capable of reading any of
43 these file formats if they are compressed using gzip.  B<Ethereal>
44 recognizes this directly from the file; the '.gz' extension is not
45 required for this purpose.
46
47 Like other protocol analyzers, B<Ethereal>'s main window shows 3 views
48 of a packet.  It shows a summary line, briefly describing what the
49 packet is.  A protocol tree is shown, allowing you to drill down to
50 exact protocol or field that you interested in.  Finally, a hex dump
51 shows you exactly what the packet looks like when it goes over the wire.
52
53 In addition, B<Ethereal> has some features that make it unique.  It can
54 assemble all the packets in a TCP conversation and show you the ASCII
55 (or EBCDIC) data in that conversation.  Display filters in B<Ethereal>
56 are very powerful; more fields are filterable in B<Ethereal> than in other
57 protocol analyzers, and the syntax you can use to create your filters is
58 richer.  As B<Ethereal> progresses, expect more and more protocol fields to
59 be allowed in display filters.
60
61 Packet capturing is performed with the pcap library.  The capture filter
62 syntax follows the rules of the pcap library.  This syntax is different
63 from the display filter syntax.
64
65 Compressed file support uses (and therefore requires) the zlib library. 
66 If the zlib library is not present, B<Ethereal> will compile, but will
67 be unable to read compressed files.
68
69 =head1 OPTIONS
70
71 =over 4
72
73 =item -B
74
75 Sets the initial height of the byte view (bottom) pane.
76
77 =item -b
78
79 Sets the name of the bold font used for the data in the byte view
80 pane that corresponds to the field selected in the protocol tree pane.
81
82 =item -c
83
84 Sets the default number of packets to read when capturing live
85 data.
86
87 =item -f
88
89 Sets the capture filter expression.
90
91 =item -h
92
93 Prints the version and options and exits.
94
95 =item -i
96
97 Sets the name of the network interface to use for live packet capture. 
98 It should match one of the names listed in "B<netstat -i>" or
99 "B<ifconfig -a>".
100
101 =item -k
102
103 Starts the capture session immediately.  If the B<-i> flag was
104 specified, the capture uses the specified interface.  Otherwise,
105 B<Ethereal> searches the list of interfaces, choosing the first
106 non-loopback interface if there are any non-loopback interfaces, and
107 choosing the first loopback interface if there are no non-loopback
108 interfaces; if there are no interfaces, B<Ethereal> reports an error and
109 doesn't start the capture.
110
111 =item -m
112
113 Sets the name of the font used by B<Ethereal> for most text.
114
115 =item -n
116
117 Disables network object name resolution (such as hostname, TCP and UDP port
118 names).
119
120 =item -P
121
122 Sets the initial height of the packet list (top) pane.
123
124 =item -Q
125
126 Causes B<Ethereal> to exit after the end of capture session (useful in
127 batch mode with B<-c> option for instance); this option requires the
128 B<-i> and B<-w> parameters.
129
130 =item -r
131
132 Reads packet data from I<file>.
133
134 =item -R
135
136 Causes the specified filter (which uses the syntax of display filters,
137 rather than that of capture filters) to be applied, when a capture file
138 is read, to all packets read from the capture file; packets not matching
139 the filter are discarded.
140
141 =item -S
142
143 Specifies that the live packet capture will be performed in a separate
144 process, and that the packet display will automatically be updated as
145 packets are seen.
146
147 =item -s
148
149 Sets the default snapshot length to use when capturing live data. 
150 No more than I<snaplen> bytes of each network packet will be read into
151 memory, or saved to disk.
152
153 =item -T
154
155 Sets the initial height of the tree view (middle) pane.
156
157 =item -t
158
159 Sets the format of the packet timestamp displayed in the packet list
160 window.  The format can be one of 'r' (relative), 'a' (absolute), or 'd'
161 (delta).  The relative time is the time elapsed between the first packet
162 and the current packet.  The absolute time is the actual date and time the
163 packet was captured.  The delta time is the time since the previous packet
164 was captured.  The default is relative.
165
166 =item -v
167
168 Prints the version and exits.
169
170 =item -w
171
172 Sets the default capture file name.
173
174 =back
175
176 =head1 INTERFACE
177
178 =head2 MENU ITEMS
179
180 =over 4
181
182 =item File:Open, File:Close, File:Reload
183
184 Open, close, or reload a capture file.  The I<File:Open> dialog box
185 allows a filter to be specified; when the capture file is read, the
186 filter is applied to all packets read from the file, and packets not
187 matching the filter are discarded.
188
189 =item File:Save, File:Save As
190
191 Save the current capture, or the packets currently displayed from that
192 capture, to a file.  A check box lets you select whether to save all
193 packets, or just those that have passed the current display filter, and
194 an option menu lets you select (from a list of file formats in which at
195 particular capture, or the packets currently displayed from that
196 capture, can be saved), a file format in which to save it.
197
198 =item File:Print
199
200 Prints, for all the packets in the current capture, either the summary
201 line for the packet or the protocol tree view of the packet; when
202 printing the protocol tree view, the hex dump of the packet can be
203 printed as well.  Printing options can be set with the
204 I<Edit:Preferences> menu item, or in the dialog box popped up by this
205 item.
206
207 =item File:Print Packet
208
209 Print a fully-expanded protocol tree view of the currently-selected
210 packet.  Printing options can be set with the I<Edit:Preferences> menu
211 item.
212
213 =item File:Quit
214
215 Exits the application.
216
217 =item Edit:Find Frame
218
219 Allows you to search forward or backward, starting with the currently
220 selected packet (or the most recently selected packet, if no packet is
221 selected), for a packet matching a given display filter.
222
223 =item Edit:Go To Frame
224
225 Allows you to go to a particular numbered packet.
226
227 =item Edit:Preferences
228
229 Sets the packet printing, column display, TCP stream coloring, and GUI
230 options (see L<"Preferences"> below).
231
232 =item Edit:Filters
233
234 Edits the saved list of filters, allowing filters to be added, changed,
235 or deleted, and lets a selected filter be applied to the current
236 capture, if any.
237
238 =item Capture:Start
239
240 Initiates a live packet capture (see L<"Capture Preferences"> below).  A
241 temporary file will be created to hold the capture.  The location of the
242 file can be chosen by setting your TMPDIR environment variable before
243 starting B<Ethereal>.  Otherwise, the default TMPDIR location is
244 system-dependent, but is likely either /var/tmp or /tmp.
245
246 =item Display:Options
247
248 Sets the format of the packet timestamp displayed in the packet list
249 window to relative, absolute, or delta.
250 Allows you to enable the automatic scrolling of the packet list while a 
251 live capture is in progress.
252
253 =item Display:Match Selected
254
255 Creates and applies a display filter based on the data that is currently
256 highlighted in the protocol tree.  If that data is a field that can be
257 tested in a display filter expression, the display filter will test that
258 field; otherwise, the display filter will be based on absolute offset
259 within the packet, and so could be unreliable if the packet contains
260 protocols with variable-length headers, such as a source-routed
261 token-ring packet.
262
263 =item Display:Colorize Display
264
265 Allows you to change the foreground and background colors of the packet
266 information in the list of packets, based upon display filters.  The list
267 of display filters is applied to each packet sequentially. After the first
268 display filter matches a packet, any additional display filters in the list
269 are ignored. Therefore, if you are filtering on the existence of protocols,
270 you should list the higher-level protocols first, and the lower-level
271 protocols last.
272
273 =item Display:Collapse All
274
275 Collapses the protocol tree branches.
276
277 =item Display:Expand All
278
279 Expands all branches of the protocol tree.
280
281 =item Tools:Plugins
282
283 Allows you to use and configure dynamically loadable modules (see
284 L<"Plugins"> below).
285
286 =item Tools:Follow TCP Stream
287
288 If you have a TCP packet selected, it will display the contents of the
289 data stream for the TCP connection to which that packet belongs, as
290 text, in a separate window, and will leave the list of packets in a
291 filtered state, with only those packets that are part of that TCP
292 connection being displayed.  You can revert to your old view by pressing
293 ENTER in the display filter text box, thereby invoking your old display
294 filter (or resetting it back to no display filter).
295
296 The window in which the data stream is displayed lets you select whether
297 the data being displayed is to be treated as ASCII or EBCDIC text, and
298 lets you print the text, using the same print options that are used for
299 the I<File:Print Packet> menu item.
300
301 =back
302
303 =head2 WINDOWS
304
305 =over 4
306
307 =item Main Window
308
309 The main window is split into three panes.  You can resize each pane using
310 a "thumb" at the right end of each divider line.  Below the panes is a
311 strip that shows the file load progress, current filter, and informational
312 text.
313
314 The top pane contains the list of network packets that you can scroll
315 through and select.  The packet number, packet timestamp, source and
316 destination addresses, protocol, and description are printed for each
317 packet.  An effort is made to display information as high up the protocol
318 stack as possible, e.g. IP addresses are displayed for IP packets, but the
319 MAC layer address is displayed for unknown packet types.  The right
320 mouse button can be used to pop up a menu of operations.
321
322 The middle pane contains a I<protocol tree> for the currently-selected
323 packet.  The tree displays each field and its value in each protocol
324 header in the stack.  The right mouse button can be used to pop up a
325 menu of operations.
326
327 The lowest pane contains a hex dump of the actual packet data. 
328 Selecting a field in the I<protocol tree> highlights the corresponding
329 bytes in this section.
330
331 A display filter can be entered into the strip at the bottom. 
332 A filter for HTTP, HTTPS, and DNS traffic might look like this:
333
334   tcp.port == 80 || tcp.port == 443 || tcp.port == 53
335
336 Selecting the I<Filter:> button lets you choose from a list of named
337 filters that you can optionally save.  Pressing the Return or Enter
338 keys will cause the filter to be applied to the current list of packets.
339 Selecting the I<Reset> button clears the display filter so that all
340 packets are displayed.
341
342 =item Preferences
343
344 The I<Preferences> dialog lets you control various personal preferences
345 for the behavior of B<Ethereal>.
346
347 =over 6
348
349 =item Printing Preferences
350
351 The radio buttons at the top of the I<Printing> page allow you choose
352 between printing packets with the I<File:Print Packet> menu item as text
353 or PostScript, and sending the output directly to a command or saving it
354 to a file.  The I<Command:> text entry box is the command to send files
355 to (usually B<lpr>), and the I<File:> entry box lets you enter the name
356 of the file you wish to save to.  Additionally, you can select the
357 I<File:> button to browse the file system for a particular save file.
358
359 =item Column Preferences
360
361 The I<Columns> page lets you specify the number, title, and format
362 of each column in the packet list.
363
364 The I<Column title> entry is used to specify the title of the column
365 displayed at the top of the packet list.  The type of data that the column
366 displays can be specified using the I<Column format> option menu.  The row
367 of buttons on the left perform the following actions:
368
369 =over 6
370
371 =item New
372
373 Adds a new column to the list.
374
375 =item Change
376
377 Modifies the currently selected list item.
378
379 =item Delete
380
381 Deletes the currently selected list item.
382
383 =item Up / Down
384
385 Moves the selected list item up or down one position.
386
387 =item OK
388
389 Currently has no effect.
390
391 =item Save
392
393 Saves the current column format as the default.
394
395 =item Cancel
396
397 Closes the dialog without making any changes.
398
399 =back
400
401 =item TCP Stream Preferences
402
403 The I<TCP Streams> page can be used to change the color of the text
404 displayed in the TCP stream window.  To change a color, simply select
405 an attribute from the "Set:" menu and use the color selector to get the
406 desired color.  The new text colors are displayed in a sample window.
407
408 =item GUI Preferences
409
410 The I<GUI> page is used to modify small aspects of the GUI to your own
411 personal taste. The vertical scrollbars in the three panes can be
412 set to be either on the left or the right. The selection bar in the
413 packet list and protocol tree can have either a "browse" or "select"
414 behavior. If the selection bar has a "browse" behavior, the arrow keys
415 will move an outline of the selection bar, allowing you to browse
416 the rest of the list or tree without changing the selection
417 until you press the space bar. If the selection bar has a "select"
418 behavior, the arrow keys will move the selection bar and change
419 the selection to the new item in the packet list or protocol tree.
420
421 =back
422
423 =item Filters
424
425 The I<Filters> dialog lets you create and modify filters, and set the
426 default filter to use when capturing data or opening a capture file.
427
428 The I<Filter name> entry specifies a descriptive name for a filter, e.g.
429 B<Web and DNS traffic>.  The I<Filter string> entry is the text that
430 actually describes the filtering action to take, as described above.The
431 dialog buttons perform the following actions:
432
433 =over 6
434
435 =item New
436
437 If there is text in the two entry boxes, it creates a new associated list
438 item.
439
440 =item Change
441
442 Modifies the currently selected list item to match what's in the entry
443 boxes.
444
445 =item Copy
446
447 Makes a copy of the currently selected list item.
448
449 =item Delete
450
451 Deletes the currently selected list item.
452
453 =item Apply
454
455 Sets the currently selected list item as the active filter, and applies
456 it to the current capture, if any.
457 (The currently selected list item must be a display filter, not a
458 capture filter.)  If nothing is selected, turns filtering off.
459
460 =item OK
461
462 Sets the currently selected list item as the active filter.  If nothing
463 is selected, turns filtering off.
464
465 =item Save
466
467 Saves the current filter list in F<$HOME/.ethereal/filters>.
468
469 =item Cancel
470
471 Closes the dialog without making any changes.
472
473 =back
474
475 =item Capture Preferences
476
477 The I<Capture Preferences> dialog lets you specify various parameters for
478 capturing live packet data.
479
480 The I<Interface:> combo box lets you specify the interface from which to
481 capture packet data.  The I<Count:> entry specifies the number of
482 packets to capture.  Entering 0 will capture packets indefinitely.  The
483 I<Filter:> entry lets you specify the capture filter using a
484 tcpdump-style filter string as described above.  The I<File:> entry
485 specifies the file to save to, as in the I<Printer Options> dialog
486 above.  You can specify the maximum number of bytes to capture per
487 packet with the I<Capture length> entry, can specify that the display
488 should be updated as packets are captured with the I<Update list of
489 packets in real time> check box, can specify whether in such a capture
490 the packet list pane should scroll to show the most recently captured
491 packets with the I<Automatic scrolling in live capture> check box, and
492 can specify whether addresses should be translated to names in the
493 display with the I<Enable name resolution> check box.
494
495 =item Display Options
496
497 The I<Display Options> dialog lets you specify the format of the time stamp
498 in the packet list.  You can select "Time of day" for absolute time stamps,
499 "Seconds since beginning of capture" for relative time stamps, or
500 "Seconds since previous frame" for delta time stamps.  You can also
501 specify whether, when the display is updated as packets are captured,
502 the list should automatically scroll to show the most recently captured
503 packets or not.
504
505 =item Plugins
506
507 The I<Plugins> dialog lets you view and configure the plugins available
508 on your system.
509
510 The I<Plugins List> shows the name, description, version and state
511 (enabled or not) of each plugin found on your system. The plugins are
512 searched in the following directories : B</usr/share/ethereal/plugins>,
513 B</usr/local/share/ethereal/plugins> and B<~/.ethereal/plugins>
514
515 A plugin must be activated using the I<Enable> button in order to use it
516 to dissect packets. It can also be deactivated with the I<Disable> button.
517
518 The I<Filter> button shows the filter used to select packets which should
519 be dissected by a plugin (see L<"DISPLAY FILTER SYNTAX"> below). This
520 filter can be modified.
521
522 =head1 CAPTURE FILTER SYNTAX
523
524 See manual page of tcpdump(8).
525
526 =head1 DISPLAY FILTER SYNTAX
527
528 Display filters help you remove the noise from a packet trace and let
529 you see only the packets that interest you.  If a packet meets the
530 requirements expressed in your display filter, then it is displayed in
531 the list of packets.  Display filters let you compare the fields within
532 a protocol against a specific value, compare fields against fields, and
533 to check the existence of specified fields or protocols.
534
535 The simplest display filter allows you to check for the existence of a
536 protocol or field.  If you want to see all packets which contain the IPX
537 protocol, the filter would be "ipx".  (Without the quotation marks) To
538 see all packets that contain a Token-Ring RIF field, use "tr.rif".
539
540 Fields can also be compared against values.  The comparison operators
541 can be expressed either through C-like symbols, or through English-like
542 abbreviations:
543
544     eq, ==    Equal
545     ne, !=    Not equal
546     gt, >     Greater than
547     lt, <     Less Than
548     ge, >=    Greater than or Equal to
549     le, <=    Less than or Equal to
550
551 Furthermore, each protocol field is typed. The types are:
552
553     Unsigned integer (either 8-bit, 16-bit, 24-bit, or 32-bit)
554     Signed integer (either 8-bit, 16-bit, 24-bit, or 32-bit)
555     Boolean
556     Ethernet address (6 bytes)
557     Byte string (n-number of bytes)
558     IPv4 address
559     IPv6 address
560     IPX network number
561     String (text)
562     Double-precision floating point number
563
564 An integer may be expressed in decimal, octal, or hexadecimal notation. 
565 The following three display filters are equivalent:
566
567     frame.pkt_len > 10
568     frame.pkt_len > 012
569     frame.pkt_len > 0xa
570
571 Boolean values are either true or false.  However, a boolean field is
572 present in a protocol decode only if its value is true.  If the value is
573 false, the field is not presence.  You can therefore check the truth
574 value of a boolean field by simply checking for its existence, that is,
575 by naming the field.  For example, a token-ring packet's source route
576 field is boolean.  To find any source-routed packets, the display filter
577 is simply:
578
579     tr.sr
580
581 Non source-routed packets can be found with the negation of that filter:
582
583     ! tr.sr
584
585 Ethernet addresses, as well as a string of bytes, are represented in hex
586 digits.  The hex digits may be separated by colons, periods, or hyphens:
587
588     fddi.dst eq ff:ff:ff:ff:ff:ff
589     ipx.srcnode == 0.0.0.0.0.1
590     eth.src == aa-aa-aa-aa-aa-aa
591
592 If a string of bytes contains only one byte, then it is represented as
593 an unsigned integer.  That is, if you are testing for hex value 'ff' in
594 a one-byte byte-string, you must compare it agains '0xff' and not 'ff'. 
595
596 IPv4 addresses can be represented in either dotted decimal notation, or
597 by using the hostname:
598
599     ip.dst eq www.mit.edu
600     ip.src == 192.168.1.1
601
602 IPv4 address can be compared with the same logical relations as numbers:
603 eq, ne, gt, ge, lt, and le.  The IPv4 address is stored in host order,
604 so you do not have to worry about how the endianness of an IPv4 address
605 when using it in a display filter.
606
607 Classless InterDomain Routing (CIDR) notation can be used to test if an
608 IPv4 address is in a certain subnet.  For example, this display filter
609 will find all packets in the 129.111 Class-B network:
610
611     ip.addr == 129.111.0.0/16
612
613 Remember, the number after the slash represents the number of bits used
614 to represent the network.  CIDR notation can also be used with
615 hostnames, in this example of finding IP addresses on the same Class C
616 network as 'sneezy':
617
618     ip.addr eq sneezy/24
619
620 The CIDR notation can only be used on IP addresses or hostnames, not in
621 variable names.  So, a display filter like "ip.src/24 == ip.dst/24" is
622 not valid.  (yet)
623
624 IPX networks are represented by unsigned 32-bit integers.  Most likely
625 you will be using hexadecimal when testing for IPX network values:
626
627     ipx.srcnet == 0xc0a82c00
628
629 A substring operator also exists.  You can check the substring
630 (byte-string) of any protocol or field.  For example, you can filter on
631 the vendor portion of an ethernet address (the first three bytes) like
632 this:
633
634     eth.src[0:3] == 00:00:83
635
636 Or more simply, since the number of bytes is inherent in the byte-string
637 you provide, you can provide just the offset.  The previous example can
638 be stated like this:
639
640     eth.src[0] == 00:00:83
641
642 In fact, the only time you need to explicitly provide a length is when
643 you don't provide a byte-string, and are comparing fields against
644 fields:
645
646     fddi.src[0:3] == fddi.dst[0:3]
647
648 If the length of your byte-string is only one byte, then it must be
649 represented in the same way as an unsigned 8-bit integer:
650
651     llc[3] == 0xaa
652
653 You can use the substring operator on a protocol name, too.  And
654 remember, the "frame" protocol encompasses the entire packet, allowing
655 you to look at the nth byte of a packet regardless of its frame type
656 (Ethernet, token-ring, etc.).
657
658     token[0:5] ne 0.0.0.1.1
659     ipx[0:2] == ff:ff
660     llc[3:1] eq 0xaa
661
662 Offsets for byte-strings can also be negative, in which case the
663 negative number indicates the number of bytes from the end of the field
664 or protocol that you are testing.  Here's how to check the last 4 bytes
665 of a frame:
666
667     frame[-4] == 0.1.2.3
668
669 or
670
671     frame[-4:4] == 0.1.2.3
672
673 All the above tests can be combined together with logical expressions. 
674 These too are expressable in C-like syntax or with English-like
675 abbreviations:
676
677     and, &&   Logical AND
678     or, ||    Logical OR
679     xor, ^^   Logical XOR
680     not, !    Logical NOT
681
682 Expressions can be grouped by parentheses as well.  The following are
683 all valid display filter expression:
684
685     tcp.port == 80 and ip.src == 192.168.2.1
686     not llc
687     (ipx.srcnet == 0xbad && ipx.srnode == 0.0.0.0.0.1) || ip
688     tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == 0.6.29
689
690 A special caveat must be given regarding fields that occur more than
691 once per packet.  "ip.addr" occurs twice per IP packet, once for the
692 source address, and once for the destination address.  Likewise,
693 tr.rif.ring fields can occur more than once per packet.  The following
694 two expressions are not equivalent:
695
696         ip.addr ne 192.168.4.1
697     not ip.addr eq 192.168.4.1
698
699 The first filter says "show me all packets where an ip.addr exists that
700 does not equal 192.168.4.1".  That is, as long as one ip.addr in the
701 packet does not equal 192.168.44.1, the packet passes the display
702 filter.  The second filter "don't show me any packets that have at least
703 one ip.addr field equal to 192.168.4.1".  If one ip.addr is 192.168.4.1,
704 the packet does not pass.  If B<neither> ip.addr fields is 192.168.4.1,
705 then the packet passes.
706
707 It is easy to think of the 'ne' and 'eq' operators as having an implict
708 "exists" modifier when dealing with multiply-recurring fields.  "ip.addr
709 ne 192.168.4.1" can be thought of as "there exists an ip.addr that does
710 not equal 192.168.4.1".
711
712 Be careful with multiply-recurring fields; they can be confusing.
713
714 The following is a table of protocol and protocol fields that are
715 filterable in B<Ethereal>.  The abbreviation of the protocol or field is
716 given.  This abbreviation is what you use in the display filter.  The
717 type of the field is also given.
718
719 =insert_dfilter_table
720
721 =head1 FILES
722
723 B</etc/ethers> is consulted to correlate 6-byte hardware addresses to
724 names.  If an address is not found in B</etc/ethers>, the
725 B<$HOME/.ethereal/ethers> file is consulted next.  Each line contains
726 one hardware address and name, separated by whitespace.  The digits of
727 the hardware address are separated by either a colon (:), a dash (-), or
728 a period (.).  The following three lines are valid lines of an ethers
729 file:
730
731   ff:ff:ff:ff:ff:ff          Broadcast
732   c0-00-ff-ff-ff-ff          TR_broadcast
733   00.00.00.00.00.00          Zero_broadcast
734
735 B</usr/local/etc/manuf> matches the 3-byte vendor portion of a 6-byte
736 hardware address with the manufacturer's name.  The format of the file
737 is the same as the B</etc/ethers> file, except that each address is
738 three bytes instead of six.
739
740 B</etc/ipxnets> and B<$HOME/.ethereal/ipxnets> correlate 4-byte IPX
741 network numbers to names.  The format is the same as the B</etc/ethers>
742 file, except that each address if four bytes instead of six. 
743 Additionally, the address can be represented a single hexadecimal
744 number, as is more common in the IPX world, rather than four hex octets. 
745 For example, these four lines are valid lines of an ipxnets file.
746
747   C0.A8.2C.00              HR
748   c0-a8-1c-00              CEO
749   00:00:BE:EF              IT_Server1
750   110f                     FileServer3
751
752 =head1 SEE ALSO
753
754 L<tcpdump(8)>, L<pcap(3)>
755
756 =head1 NOTES
757
758 The latest version of B<Ethereal> can be found at
759 B<http://ethereal.zing.org>.
760
761 =head1 AUTHORS
762
763   Original Author
764   -------- ------
765   Gerald Combs  <gerald@zing.org>
766
767
768   Contributors
769   ------------
770   Gilbert Ramirez          <gramirez@tivoli.com>
771   Hannes R. Boehm          <hannes@boehm.org>
772   Mike Hall                <mlh@io.com>
773   Bobo Rajec               <bobo@bsp-consulting.sk>
774   Laurent Deniel           <deniel@worldnet.fr>
775   Don Lafontaine           <lafont02@cn.ca>
776   Guy Harris               <guy@alum.mit.edu>
777   Simon Wilkinson          <sxw@dcs.ed.ac.uk>
778   Joerg Mayer              <jmayer@telemation.de>
779   Martin Maciaszek         <fastjack@i-s-o.net>
780   Didier Jorand            <Didier.Jorand@alcatel.fr>
781   Jun-ichiro itojun Hagino <itojun@iijlab.net>
782   Richard Sharpe           <sharpe@ns.aus.com>
783   John McDermott           <jjm@jkintl.com> 
784   Jeff Jahr                <jjahr@shastanets.com>
785   Brad Robel-Forrest       <bradr@watchguard.com>
786   Ashok Narayanan          <ashokn@cisco.com>
787   Aaron Hillegass          <aaron@classmax.com>
788   Jason Lango              <jal@netapp.com>
789   Johan Feyaerts           <Johan.Feyaerts@siemens.atea.be>
790   Olivier Abad             <abad@daba.dhis.net>
791   Thierry Andry            <Thierry.Andry@advalvas.be>
792   Jeff Foster              <jjfoste@woodward.com>
793   Peter Torvals            <petertv@xoommail.com>
794   Christophe Tronche       <ch.tronche@computer.org>
795   Nathan Neulinger         <nneul@umr.edu>
796   Tomislav Vujec           <tvujec@carnet.hr>
797   Kojak                    <kojak@bigwig.net>
798   Uwe Girlich              <Uwe.Girlich@philosys.de>
799   Warren Young             <tangent@mail.com>
800   Heikki Vatiainen         <hessu@cs.tut.fi>
801   Greg Hankins             <gregh@twoguys.org>
802   Jerry Talkington         <jerryt@netapp.com>
803   Dave Chapeskie           <dchapes@ddm.on.ca>
804   James Coe                <jammer@cin.net>
805   Bert Driehuis            <driehuis@playbeing.org>
806   Stuart Stanley           <stuarts@mxmail.net>
807   John Thomes              <john@ensemblecom.com>
808   Laurent Cazalet          <laurent.cazalet@mailclub.net>
809   Thomas Parvais           <thomas.parvais@advalvas.be>
810
811 Alain Magloire <alainm@rcsm.ece.mcgill.ca> was kind enough to give his
812 permission to use his version of snprintf.c.
813
814 Dan Lasley <dlasley@promus.com> gave permission for his dumpit() hex-dump
815 routine to be used.