From Bingyao Du:
[obnox/wireshark/wip.git] / FAQ
1
2    The Wireshark FAQ
3
4    Note: This is just an ASCII snapshot of the faq and may not be up to
5          date. Please go to http://www.wireshark.org/faq.html for the up
6          to date version. The version of this snapshot can be found at
7          the end of this document.
8
9    INDEX
10
11
12 1. General Questions:
13
14    1.1 What is Wireshark?
15
16    1.2 What's up with the name change? Is Wireshark a fork?
17
18    1.3 Where can I get help?
19
20    1.4 How much does Wireshark cost?
21
22    1.5 Can I use Wireshark commercially?
23
24    1.6 Can I use Wireshark as part of my commercial product?
25
26    1.7 What protocols are currently supported?
27
28    1.8 Are there any plans to support {your favorite protocol}?
29
30    1.9 Can Wireshark read capture files from {your favorite network
31    analyzer}?
32
33    1.10 What devices can Wireshark use to capture packets?
34
35    1.11 Does Wireshark work on Windows Me?
36
37    1.12 Does Wireshark work on Windows XP?
38
39 2. Downloading Wireshark:
40
41    2.1 Why do I get an error when I try to run the Win32 installer?
42
43 3. Installing Wireshark:
44
45    3.1 I installed the Wireshark RPM (or other package); why did it
46    install TShark but not Wireshark?
47
48 4. Building Wireshark:
49
50    4.1 I have libpcap installed; why did the configure script not find
51    pcap.h or bpf.h?
52
53    4.2 Why do I get the error
54
55      dftest_DEPENDENCIES was already defined in condition TRUE, which
56      implies condition HAVE_PLUGINS_TRUE
57
58    when I try to build Wireshark from SVN or a SVN snapshot?
59
60    4.3 Why does the linker fail with a number of "Output line too long."
61    messages followed by linker errors when I try to buil Wireshark?
62
63    4.4 When I try to build Wireshark on Solaris, why does the link fail
64    complaining that plugin_list is undefined?
65
66    4.5 When I try to build Wireshark on Windows, why does the build fail
67    because of conflicts between winsock.h and winsock2.h?
68
69 5. Starting Wireshark:
70
71    5.1 Why does Wireshark crash with a Bus Error when I try to run it on
72    Solaris 8?
73
74    5.2 When I run Wireshark on Windows NT, why does it die with a Dr.
75    Watson error, reporting an "Integer division by zero" exception, when I
76    start it?
77
78    5.3 When I try to run Wireshark, why does it complain about
79    sprint_realloc_objid being undefined?
80
81    5.4 When I try to run Wireshark on Windows, why does it fail to run
82    with a complaint that it can't find packet.dll?
83
84    5.5 I've installed Wireshark from Fink on Mac OS X; why is it very slow
85    to start up?
86
87 6. Crashes and other fatal errors:
88
89    6.1 I have an XXX network card on my machine; if I try to capture on
90    it, why does my machine crash or reset itself?
91
92    6.2 Why does my machine crash or reset itself when I select "Start"
93    from the "Capture" menu or select "Preferences" from the "Edit" menu?
94
95 7. Capturing packets:
96
97    7.1 When I use Wireshark to capture packets, why do I see only packets
98    to and from my machine, or not see all the traffic I'm expecting to see
99    from or to the machine I'm trying to monitor?
100
101    7.2 When I capture with Wireshark, why can't I see any TCP packets
102    other than packets to and from my machine, even though another analyzer
103    on the network sees those packets?
104
105    7.3 Why am I only seeing ARP packets when I try to capture traffic?
106
107    7.4 Why am I not seeing any traffic when I try to capture traffic?
108
109    7.5 Can Wireshark capture on (my T1/E1 line, SS7 links, etc.)?
110
111    7.6 How do I put an interface into promiscuous mode?
112
113    7.7 I can set a display filter just fine; why don't capture filters
114    work?
115
116    7.8 I'm entering valid capture filters; why do I still get "parse
117    error" errors?
118
119    7.9 How can I capture packets with CRC errors?
120
121    7.10 How can I capture entire frames, including the FCS?
122
123    7.11 I'm capturing packets on a machine on a VLAN; why don't the
124    packets I'm capturing have VLAN tags?
125
126    7.12 Why does Wireshark hang after I stop a capture?
127
128 8. Capturing packets on Windows:
129
130    8.1 I'm running Wireshark on Windows; why does some network interface
131    on my machine not show up in the list of interfaces in the "Interface:"
132    field in the dialog box popped up by "Capture->Start", and/or why does
133    Wireshark give me an error if I try to capture on that interface?
134
135    8.2 I'm running Wireshark on Windows; why do no network interfaces show
136    up in the list of interfaces in the "Interface:" field in the dialog
137    box popped up by "Capture->Start"?
138
139    8.3 I'm running Wireshark on Windows; why doesn't my serial port/ADSL
140    modem/ISDN modem show up in the list of interfaces in the "Interface:"
141    field in the dialog box popped up by "Capture->Start"?
142
143    8.4 I'm running Wireshark on Windows NT 4.0/Windows 2000/Windows
144    XP/Windows Server 2003; my machine has a PPP (dial-up POTS, ISDN, etc.)
145    interface, and it shows up in the "Interface" item in the "Capture
146    Options" dialog box. Why can no packets be sent on or received from
147    that network while I'm trying to capture traffic on that interface?
148
149    8.5 I'm running Wireshark on Windows 95/98/Me, on a machine with more
150    than one network adapter of the same type; why does Wireshark show all
151    of those adapters with the same name, not letting me use any of those
152    adapters other than the first one?
153
154    8.6 I'm running Wireshark on Windows; why am I not seeing any traffic
155    being sent by the machine running Wireshark?
156
157    8.7 When I capture on Windows in promiscuous mode, I can see packets
158    other than those sent to or from my machine; however, those packets
159    show up with a "Short Frame" indication, unlike packets to or from my
160    machine. What should I do to arrange that I see those packets in their
161    entirety?
162
163    8.8 I'm capturing packets on {Windows 95, Windows 98, Windows Me}; why
164    are the time stamps on packets wrong?
165
166    8.9 I'm trying to capture 802.11 traffic on Windows; why am I not
167    seeing any packets?
168
169    8.10 I'm trying to capture 802.11 traffic on Windows; why am I seeing
170    packets received by the machine on which I'm capturing traffic, but not
171    packets sent by that machine?
172
173    8.11 I'm trying to capture Ethernet VLAN traffic on Windows, and I'm
174    capturing on a "raw" Ethernet device rather than a "VLAN interface", so
175    that I can see the VLAN headers; why am I seeing packets received by
176    the machine on which I'm capturing traffic, but not packets sent by
177    that machine?
178
179 9. Capturing packets on UN*Xes:
180
181    9.1 I'm running Wireshark on a UNIX-flavored OS; why does some network
182    interface on my machine not show up in the list of interfaces in the
183    "Interface:" field in the dialog box popped up by "Capture->Start",
184    and/or why does Wireshark give me an error if I try to capture on that
185    interface?
186
187    9.2 I'm running Wireshark on a UNIX-flavored OS; why do no network
188    interfaces show up in the list of interfaces in the "Interface:" field
189    in the dialog box popped up by "Capture->Start"?
190
191    9.3 I'm capturing packets on Linux; why do the time stamps have only
192    100ms resolution, rather than 1us resolution?
193
194 10. Capturing packets on wireless LANs:
195
196    10.1 How can I capture raw 802.11 frames, including non-data
197    (management, beacon) frames?
198
199    10.2 How do I capture on an 802.11 device in monitor mode?
200
201 11. Viewing traffic:
202
203    11.1 Why am I seeing lots of packets with incorrect TCP checksums?
204
205    11.2 I've just installed Wireshark, and the traffic on my local LAN is
206    boring. Where can I find more interesting captures?
207
208    11.3 Why doesn't Wireshark correctly identify RTP packets? It shows
209    them only as UDP.
210
211    11.4 Why doesn't Wireshark show Yahoo Messenger packets in captures
212    that contain Yahoo Messenger traffic?
213
214 12. Filtering traffic:
215
216    12.1 I saved a filter and tried to use its name to filter the display;
217    why do I get an "Unexpected end of filter string" error?
218
219    12.2 How can I search for, or filter, packets that have a particular
220    string anywhere in them?
221
222    12.3 How do I filter a capture to see traffic for virus XXX?
223
224 1. General Questions
225
226    Q 1.1: What is Wireshark?
227
228    A: Gerald Combs, the creator of Ethereal®, has initiated the Wireshark
229    network protocol analyzer project, a successor to Ethereal®. The
230    Ethereal® core developer team has moved with Gerald to the Wireshark
231    project. It is the world's most popular network protocol analyzer. It
232    has a rich and powerful feature set, and runs on most computing
233    platforms including Windows, OS X, and Linux. It is freely available as
234    open source, and is released under the GNU General Public License.
235
236    For more information, please see the About Wireshark page.
237
238    Q 1.2: What's up with the name change? Is Wireshark a fork?
239
240    A: In May of 2006, the original author of Ethereal® went to work for
241    CACE Technologies (best known for WinPcap). Unfortunately, he had to
242    leave the Ethereal® trademarks behind.
243
244    This left the project in an awkward position. The only reasonable way
245    to ensure the continued success of the project was to change the name.
246    This is how Wireshark was born.
247
248    Wireshark is almost (but not quite) a fork. Normally a "fork" of an
249    open source project results in two names, web sites, development teams,
250    support infrastructures, etc. This is the case with Wireshark except
251    for one notable exception -- every member of the core development team
252    is now working on Wireshark. As far as anyone knows, there has been no
253    active development on Ethereal since the name change. More information
254    on the name change can be found here:
255      *
256      *
257
258    Q 1.3: Where can I get help?
259
260    A: Community support is available on the wireshark-users mailing list.
261    Subscription information and archives for all of Wireshark's mailing
262    lists can be found at http://www.wireshark.org/mailman/listinfo. An IRC
263    channel dedicated to Wireshark can be found at
264    irc://irc.freenode.net/wireshark.
265
266    Commercial support, training, and development services are available
267    from CACE Technologies.
268
269    Q 1.4: How much does Wireshark cost?
270
271    A: Wireshark is "free software"; you can download it without paying any
272    license fee. The version of Wireshark you download isn't a "demo"
273    version, with limitations not present in a "full" version; it is the
274    full version.
275
276    The license under which Wireshark is issued is the GNU General Public
277    License. See the GNU GPL FAQ for some more information.
278
279    Q 1.5: Can I use Wireshark commercially?
280
281    A: Yes, if, for example, you mean "I work for a commercial
282    organization; can I use Wireshark to capture and analyze network
283    traffic in our company's networks or in our customer's networks?"
284
285    If you mean "Can I use Wireshark as part of my commercial product?",
286    see the next entry in the FAQ.
287
288    Q 1.6: Can I use Wireshark as part of my commercial product?
289
290    A: As noted, Wireshark is licensed under the GNU General Public
291    License. The GPL imposes conditions on your use of GPL'ed code in your
292    own products; you cannot, for example, make a "derived work" from
293    Wireshark, by making modifications to it, and then sell the resulting
294    derived work and not allow recipients to give away the resulting work.
295    You must also make the changes you've made to the Wireshark source
296    available to all recipients of your modified version; those changes
297    must also be licensed under the terms of the GPL. See the GPL FAQ for
298    more details; in particular, note the answer to the question about
299    modifying a GPLed program and selling it commercially, and the question
300    about linking GPLed code with other code to make a proprietary program.
301
302    You can combine a GPLed program such as Wireshark and a commercial
303    program as long as they communicate "at arm's length", as per this item
304    in the GPL FAQ.
305
306    Q 1.7: What protocols are currently supported?
307
308    A: There are currently hundreds of supported protocols and media.
309    Details can be found in the wireshark(1) man page.
310
311    Q 1.8: Are there any plans to support {your favorite protocol}?
312
313    A: Support for particular protocols is added to Wireshark as a result
314    of people contributing that support; no formal plans for adding support
315    for particular protocols in particular future releases exist.
316
317    Q 1.9: Can Wireshark read capture files from {your favorite network
318    analyzer}?
319
320    A: Support for particular protocols is added to Wireshark as a result
321    of people contributing that support; no formal plans for adding support
322    for particular protocols in particular future releases exist.
323
324    If a network analyzer writes out files in a format already supported by
325    Wireshark (e.g., in libpcap format), Wireshark may already be able to
326    read them, unless the analyzer has added its own proprietary extensions
327    to that format.
328
329    If a network analyzer writes out files in its own format, or has added
330    proprietary extensions to another format, in order to make Wireshark
331    read captures from that network analyzer, we would either have to have
332    a specification for the file format, or the extensions, sufficient to
333    give us enough information to read the parts of the file relevant to
334    Wireshark, or would need at least one capture file in that format AND a
335    detailed textual analysis of the packets in that capture file (showing
336    packet time stamps, packet lengths, and the top-level packet header) in
337    order to reverse-engineer the file format.
338
339    Note that there is no guarantee that we will be able to
340    reverse-engineer a capture file format.
341
342    Q 1.10: What devices can Wireshark use to capture packets?
343
344    A: Wireshark can read live data from Ethernet, Token-Ring, FDDI, serial
345    (PPP and SLIP) (if the OS on which it's running allows Wireshark to do
346    so), 802.11 wireless LAN (if the OS on which it's running allows
347    Wireshark to do so), ATM connections (if the OS on which it's running
348    allows Wireshark to do so), and the "any" device supported on Linux by
349    recent versions of libpcap.
350
351    It can also read a variety of capture file formats, including:
352      * AG Group/WildPackets EtherPeek/TokenPeek/AiroPeek/EtherHelp/Packet
353        Grabber captures
354      * AIX's iptrace captures
355      * Accellent's 5Views LAN agent output
356      * Cinco Networks NetXRay captures
357      * Cisco Secure Intrusion Detection System IPLog output
358      * CoSine L2 debug output
359      * DBS Etherwatch VMS text output
360      * Endace Measurement Systems' ERF format captures
361      * EyeSDN USB S0 traces
362      * HP-UX nettl captures
363      * ISDN4BSD project i4btrace captures
364      * Linux Bluez Bluetooth stack hcidump -w traces
365      * Lucent/Ascend router debug output
366      * Microsoft Network Monitor captures
367      * Network Associates Windows-based Sniffer captures
368      * Network General/Network Associates DOS-based Sniffer (compressed or
369        uncompressed) captures
370      * Network Instruments Observer version 9 captures
371      * Novell LANalyzer captures
372      * RADCOM's WAN/LAN analyzer captures
373      * Shomiti/Finisar Surveyor captures
374      * Toshiba's ISDN routers dump output
375      * VMS TCPIPtrace/TCPtrace/UCX$TRACE output
376      * Visual Networks' Visual UpTime traffic capture
377      * libpcap, tcpdump and various other tools using tcpdump's capture
378        format
379      * snoop and atmsnoop output
380
381    so that it can read traces from various network types, as captured by
382    other applications or equipment, even if it cannot itself capture on
383    those network types.
384
385    Q 1.11: Does Wireshark work on Windows Me?
386
387    A: Yes, but if you want to capture packets, you will need to install
388    the latest version of WinPcap, as 2.02 and earlier versions of WinPcap
389    didn't support Windows Me. You should also install the latest version
390    of Wireshark as well.
391
392    Q 1.12: Does Wireshark work on Windows XP?
393
394    A: Yes, but if you want to capture packets, you will need to install
395    the latest version of WinPcap, as 2.2 and earlier versions of WinPcap
396    didn't support Windows XP.
397
398 2. Downloading Wireshark
399
400    Q 2.1: Why do I get an error when I try to run the Win32 installer?
401
402    A: The program you used to download it may have downloaded it
403    incorrectly. Web browsers sometimes may do this.
404
405    Try downloading it with, for example:
406      * Wget, for which Windows binaries are available on the SunSITE FTP
407        server at sunsite.tk or Heiko Herold's windows wget spot - wGetGUI
408        offers a GUI interface that uses wget;
409      * WS_FTP from Ipswitch,
410      * the ftp command that comes with Windows.
411
412    If you use the ftp command, make sure you do the transfer in binary
413    mode rather than ASCII mode, by using the binary command before
414    transferring the file.
415
416 3. Installing Wireshark
417
418    Q 3.1: I installed the Wireshark RPM (or other package); why did it
419    install TShark but not Wireshark?
420
421    A: Many distributions have separate Wireshark packages, one for non-GUI
422    components such as TShark, editcap, dumpcap, etc. and one for the GUI.
423    If this is the case on your system, there's probably a separate package
424    named wireshark-gnome or wireshark-gtk+. Find it and install it.
425
426 4. Building Wireshark
427
428    Q 4.1: I have libpcap installed; why did the configure script not find
429    pcap.h or bpf.h?
430
431    A: Are you sure pcap.h and bpf.h are installed? The official
432    distribution of libpcap only installs the libpcap.a library file when
433    "make install" is run. To install pcap.h and bpf.h, you must run "make
434    install-incl". If you're running Debian or Redhat, make sure you have
435    the "libpcap-dev" or "libpcap-devel" packages installed.
436
437    It's also possible that pcap.h and bpf.h have been installed in a
438    strange location. If this is the case, you may have to tweak
439    aclocal.m4.
440
441    Q 4.2: Why do I get the error
442
443      dftest_DEPENDENCIES was already defined in condition TRUE, which
444      implies condition HAVE_PLUGINS_TRUE
445
446    when I try to build Wireshark from SVN or a SVN snapshot?
447
448    A: You probably have automake 1.5 installed on your machine (the
449    command automake --version will report the version of automake on your
450    machine). There is a bug in that version of automake that causes this
451    problem; upgrade to a later version of automake (1.6 or later).
452
453    Q 4.3: Why does the linker fail with a number of "Output line too
454    long." messages followed by linker errors when I try to buil Wireshark?
455
456    A: The version of the sed command on your system is incapable of
457    handling very long lines. On Solaris, for example, /usr/bin/sed has a
458    line length limit too low to allow libtool to work; /usr/xpg4/bin/sed
459    can handle it, as can GNU sed if you have it installed.
460
461    On Solaris, changing your command search path to search /usr/xpg4/bin
462    before /usr/bin should make the problem go away; on any platform on
463    which you have this problem, installing GNU sed and changing your
464    command path to search the directory in which it is installed before
465    searching the directory with the version of sed that came with the OS
466    should make the problem go away.
467
468    Q 4.4: When I try to build Wireshark on Solaris, why does the link fail
469    complaining that plugin_list is undefined?
470
471    A: This appears to be due to a problem with some versions of the GTK+
472    and GLib packages from www.sunfreeware.org; un-install those packages,
473    and try getting the 1.2.10 versions from that site, or the versions
474    from The Written Word, or the versions from Sun's GNOME distribution,
475    or the versions from the supplemental software CD that comes with the
476    Solaris media kit, or build them from source from the GTK Web site.
477    Then re-run the configuration script, and try rebuilding Wireshark. (If
478    you get the 1.2.10 versions from www.sunfreeware.org, and the problem
479    persists, un-install them and try installing one of the other versions
480    mentioned.)
481
482    Q 4.5: When I try to build Wireshark on Windows, why does the build
483    fail because of conflicts between winsock.h and winsock2.h?
484
485    A: As of Wireshark 0.9.5, you must install WinPcap 2.3 or later, and
486    the corresponding version of the developer's pack, in order to be able
487    to compile Wireshark; it will not compile with older versions of the
488    developer's pack. The symptoms of this failure are conflicts between
489    definitions in winsock.h and in winsock2.h; Wireshark uses winsock2.h,
490    but pre-2.3 versions of the WinPcap developer's packet use winsock.h.
491    (2.3 uses winsock2.h, so if Wireshark were to use winsock.h, it would
492    not be able to build with current versions of the WinPcap developer's
493    pack.)
494
495    Note that the installed version of the developer's pack should be the
496    same version as the version of WinPcap you have installed.
497
498 5. Starting Wireshark
499
500    Q 5.1: Why does Wireshark crash with a Bus Error when I try to run it
501    on Solaris 8?
502
503    A: Some versions of the GTK+ library from www.sunfreeware.org appear to
504    be buggy, causing Wireshark to drop core with a Bus Error. Un-install
505    those packages, and try getting the 1.2.10 version from that site, or
506    the version from The Written Word, or the version from Sun's GNOME
507    distribution, or the version from the supplemental software CD that
508    comes with the Solaris media kit, or build it from source from the GTK
509    Web site. Update the GLib library to the 1.2.10 version, from the same
510    source, as well. (If you get the 1.2.10 versions from
511    www.sunfreeware.org, and the problem persists, un-install them and try
512    installing one of the other versions mentioned.)
513
514    Similar problems may exist with older versions of GTK+ for earlier
515    versions of Solaris.
516
517    Q 5.2: When I run Wireshark on Windows NT, why does it die with a Dr.
518    Watson error, reporting an "Integer division by zero" exception, when I
519    start it?
520
521    A: In at least some case, this appears to be due to using the default
522    VGA driver; if that's not the correct driver for your video card, try
523    running the correct driver for your video card.
524
525    Q 5.3: When I try to run Wireshark, why does it complain about
526    sprint_realloc_objid being undefined?
527
528    A: Wireshark can only be linked with version 4.2.2 or later of UCD
529    SNMP. Your version of Wireshark was dynamically linked with such a
530    version of UCD SNMP; however, you have an older version of UCD SNMP
531    installed, which means that when Wireshark is run, it tries to link to
532    the older version, and fails. You will have to replace that version of
533    UCD SNMP with version 4.2.2 or a later version.
534
535    Q 5.4: When I try to run Wireshark on Windows, why does it fail to run
536    with a complaint that it can't find packet.dll?
537
538    A: In older versions of Wireshark, there were two binary distributions
539    available for Windows, one that supported capturing packets, and one
540    that didn't. The version that supported capturing packets required that
541    you install the WinPcap driver; if you didn't install it, it would fail
542    to run because it couldn't find packet.dll.
543
544    The current version of Wireshark has only one binary distribution for
545    Windows; that version will check whether WinPcap is installed and, if
546    it's not, will disable support for packet capture.
547
548    The WinPcap driver and libraries can be downloaded from the WinPcap Web
549    site or the Wiretapped.net mirror of the WinPcap site.
550
551    Q 5.5: I've installed Wireshark from Fink on Mac OS X; why is it very
552    slow to start up?
553
554    A: When an application is installed on OS X, prior to 10.4, it is
555    usually "prebound" to speed up launching the application. (That's what
556    the "Optimizing" phase of installation is.) Fink normally performs
557    prebinding automatically when you install a package. However, in some
558    rare cases, for whatever reason the prebinding caches get corrupt, and
559    then not only does prebinding fail, but startup actually becomes much
560    slower, because the system tries in vain to perform prebinding "on the
561    fly" as you launch the application. This fails, causing sometimes huge
562    delays. To fix the prebinding caches, run the command
563         sudo /sw/var/lib/fink/prebound/update-package-prebinding.pl -f
564
565 6. Crashes and other fatal errors
566
567    Q 6.1: I have an XXX network card on my machine; if I try to capture on
568    it, why does my machine crash or reset itself?
569
570    A: This is almost certainly a problem with one or more of:
571      * the operating system you're using;
572      * the device driver for the interface you're using;
573      * the libpcap/WinPcap library and, if this is Windows, the WinPcap
574        device driver;
575
576    so:
577      * if you are using Windows, see the WinPcap support page - check the
578        "Submitting bugs" section;
579      * if you are using some Linux distribution, some version of BSD, or
580        some other UNIX-flavored OS, you should report the problem to the
581        company or organization that produces the OS (in the case of a
582        Linux distribution, report the problem to whoever produces the
583        distribution).
584
585    Q 6.2: Why does my machine crash or reset itself when I select "Start"
586    from the "Capture" menu or select "Preferences" from the "Edit" menu?
587
588    A: Both of those operations cause Wireshark to try to build a list of
589    the interfaces that it can open; it does so by getting a list of
590    interfaces and trying to open them. There is probably an OS, driver,
591    or, for Windows, WinPcap bug that causes the system to crash when this
592    happens; see the previous question.
593
594 7. Capturing packets
595
596    Q 7.1: When I use Wireshark to capture packets, why do I see only
597    packets to and from my machine, or not see all the traffic I'm
598    expecting to see from or to the machine I'm trying to monitor?
599
600    A: This might be because the interface on which you're capturing is
601    plugged into an Ethernet or Token Ring switch; on a switched network,
602    unicast traffic between two ports will not necessarily appear on other
603    ports - only broadcast and multicast traffic will be sent to all ports.
604
605    Note that even if your machine is plugged into a hub, the "hub" may be
606    a switched hub, in which case you're still on a switched network.
607
608    Note also that on the Linksys Web site, they say that their
609    auto-sensing hubs "broadcast the 10Mb packets to the port that operate
610    at 10Mb only and broadcast the 100Mb packets to the ports that operate
611    at 100Mb only", which would indicate that if you sniff on a 10Mb port,
612    you will not see traffic coming sent to a 100Mb port, and vice versa.
613    This problem has also been reported for Netgear dual-speed hubs, and
614    may exist for other "auto-sensing" or "dual-speed" hubs.
615
616    Some switches have the ability to replicate all traffic on all ports to
617    a single port so that you can plug your analyzer into that single port
618    to sniff all traffic. You would have to check the documentation for the
619    switch to see if this is possible and, if so, to see how to do this.
620    See the switch reference page on the Wireshark Wiki for information on
621    some switches. (Note that it's a Wiki, so you can update or fix that
622    information, or add additional information on those switches or
623    information on new switches, yourself.)
624
625    Note also that many firewall/NAT boxes have a switch built into them;
626    this includes many of the "cable/DSL router" boxes. If you have a box
627    of that sort, that has a switch with some number of Ethernet ports into
628    which you plug machines on your network, and another Ethernet port used
629    to connect to a cable or DSL modem, you can, at least, sniff traffic
630    between the machines on your network and the Internet by plugging the
631    Ethernet port on the router going to the modem, the Ethernet port on
632    the modem, and the machine on which you're running Wireshark into a hub
633    (make sure it's not a switching hub, and that, if it's a dual-speed
634    hub, all three of those ports are running at the same speed.
635
636    If your machine is not plugged into a switched network or a dual-speed
637    hub, or it is plugged into a switched network but the port is set up to
638    have all traffic replicated to it, the problem might be that the
639    network interface on which you're capturing doesn't support
640    "promiscuous" mode, or because your OS can't put the interface into
641    promiscuous mode. Normally, network interfaces supply to the host only:
642      * packets sent to one of that host's link-layer addresses;
643      * broadcast packets;
644      * multicast packets sent to a multicast address that the host has
645        configured the interface to accept.
646
647    Most network interfaces can also be put in "promiscuous" mode, in which
648    they supply to the host all network packets they see. Wireshark will
649    try to put the interface on which it's capturing into promiscuous mode
650    unless the "Capture packets in promiscuous mode" option is turned off
651    in the "Capture Options" dialog box, and TShark will try to put the
652    interface on which it's capturing into promiscuous mode unless the -p
653    option was specified. However, some network interfaces don't support
654    promiscuous mode, and some OSes might not allow interfaces to be put
655    into promiscuous mode.
656
657    If the interface is not running in promiscuous mode, it won't see any
658    traffic that isn't intended to be seen by your machine. It will see
659    broadcast packets, and multicast packets sent to a multicast MAC
660    address the interface is set up to receive.
661
662    You should ask the vendor of your network interface whether it supports
663    promiscuous mode. If it does, you should ask whoever supplied the
664    driver for the interface (the vendor, or the supplier of the OS you're
665    running on your machine) whether it supports promiscuous mode with that
666    network interface.
667
668    In the case of token ring interfaces, the drivers for some of them, on
669    Windows, may require you to enable promiscuous mode in order to capture
670    in promiscuous mode. See the Wireshark Wiki item on Token Ring
671    capturing for details.
672
673    In the case of wireless LAN interfaces, it appears that, when those
674    interfaces are promiscuously sniffing, they're running in a
675    significantly different mode from the mode that they run in when
676    they're just acting as network interfaces (to the extent that it would
677    be a significant effor for those drivers to support for promiscuously
678    sniffing and acting as regular network interfaces at the same time), so
679    it may be that Windows drivers for those interfaces don't support
680    promiscuous mode.
681
682    Q 7.2: When I capture with Wireshark, why can't I see any TCP packets
683    other than packets to and from my machine, even though another analyzer
684    on the network sees those packets?
685
686    A: You're probably not seeing any packets other than unicast packets to
687    or from your machine, and broadcast and multicast packets; a switch
688    will normally send to a port only unicast traffic sent to the MAC
689    address for the interface on that port, and broadcast and multicast
690    traffic - it won't send to that port unicast traffic sent to a MAC
691    address for some other interface - and a network interface not in
692    promiscuous mode will receive only unicast traffic sent to the MAC
693    address for that interface, broadcast traffic, and multicast traffic
694    sent to a multicast MAC address the interface is set up to receive.
695
696    TCP doesn't use broadcast or multicast, so you will only see your own
697    TCP traffic, but UDP services may use broadcast or multicast so you'll
698    see some UDP traffic - however, this is not a problem with TCP traffic,
699    it's a problem with unicast traffic, as you also won't see all UDP
700    traffic between other machines.
701
702    I.e., this is probably the same question as this earlier one; see the
703    response to that question.
704
705    Q 7.3: Why am I only seeing ARP packets when I try to capture traffic?
706
707    A: You're probably on a switched network, and running Wireshark on a
708    machine that's not sending traffic to the switch and not being sent any
709    traffic from other machines on the switch. ARP packets are often
710    broadcast packets, which are sent to all switch ports.
711
712    I.e., this is probably the same question as this earlier one; see the
713    response to that question.
714
715    Q 7.4: Why am I not seeing any traffic when I try to capture traffic?
716
717    A: Is the machine running Wireshark sending out any traffic on the
718    network interface on which you're capturing, or receiving any traffic
719    on that network, or is there any broadcast traffic on the network or
720    multicast traffic to a multicast group to which the machine running
721    Wireshark belongs?
722
723    If not, this may just be a problem with promiscuous sniffing, either
724    due to running on a switched network or a dual-speed hub, or due to
725    problems with the interface not supporting promiscuous mode; see the
726    response to this earlier question.
727
728    Otherwise, on Windows, see the response to this question and, on a
729    UNIX-flavored OS, see the response to this question.
730
731    Q 7.5: Can Wireshark capture on (my T1/E1 line, SS7 links, etc.)?
732
733    A: Wireshark can only capture on devices supported by libpcap/WinPcap.
734    On most OSes, only devices that can act as network interfaces of the
735    type that support IP are supported as capture devices for
736    libpcap/WinPcap, although the device doesn't necessarily have to be
737    running as an IP interface in order to support traffic capture.
738
739    On Linux and FreeBSD, libpcap 0.8 and later support the API for Endace
740    Measurement Systems' DAG cards, so that a system with one of those
741    cards, and its driver and libraries, installed can capture traffic with
742    those cards with libpcap-based applications. You would either have to
743    have a version of Wireshark built with that version of libpcap, or a
744    dynamically-linked version of Wireshark and a shared libpcap library
745    with DAG support, in order to do so with Wireshark. You should ask
746    Endace whether that could be used to capture traffic on, for example,
747    your T1/E1 link. See the SS7 capture setup page on the Wireshark Wiki
748    for current information on capturing SS7 traffic on TDM links.
749
750    Q 7.6: How do I put an interface into promiscuous mode?
751
752    A: By not disabling promiscuous mode when running Wireshark or TShark.
753
754    Note, however, that:
755      * the form of promiscuous mode that libpcap (the library that
756        programs such as tcpdump, Wireshark, etc. use to do packet capture)
757        turns on will not necessarily be shown if you run ifconfig on the
758        interface on a UNIX system;
759      * some network interfaces might not support promiscuous mode, and
760        some drivers might not allow promiscuous mode to be turned on - see
761        this earlier question for more information on that;
762      * the fact that you're not seeing any traffic, or are only seeing
763        broadcast traffic, or aren't seeing any non-broadcast traffic other
764        than traffic to or from the machine running Wireshark, does not
765        mean that promiscuous mode isn't on - see this earlier question for
766        more information on that.
767
768    I.e., this is probably the same question as this earlier one; see the
769    response to that question.
770
771    Q 7.7: I can set a display filter just fine; why don't capture filters
772    work?
773
774    A: Capture filters currently use a different syntax than display
775    filters. Here's the corresponding section from the wireshark(1) man
776    page:
777
778    "Display filters in Wireshark are very powerful; more fields are
779    filterable in Wireshark than in other protocol analyzers, and the
780    syntax you can use to create your filters is richer. As Wireshark
781    progresses, expect more and more protocol fields to be allowed in
782    display filters.
783
784    Packet capturing is performed with the pcap library. The capture filter
785    syntax follows the rules of the pcap library. This syntax is different
786    from the display filter syntax."
787
788    The capture filter syntax used by libpcap can be found in the
789    tcpdump(8) man page.
790
791    Q 7.8: I'm entering valid capture filters; why do I still get "parse
792    error" errors?
793
794    A: There is a bug in some versions of libpcap/WinPcap that cause it to
795    report parse errors even for valid expressions if a previous filter
796    expression was invalid and got a parse error.
797
798    Try exiting and restarting Wireshark; if you are using a version of
799    libpcap/WinPcap with this bug, this will "erase" its memory of the
800    previous parse error. If the capture filter that got the "parse error"
801    now works, the earlier error with that filter was probably due to this
802    bug.
803
804    The bug was fixed in libpcap 0.6; 0.4[.x] and 0.5[.x] versions of
805    libpcap have this bug, but 0.6[.x] and later versions don't.
806
807    Versions of WinPcap prior to 2.3 are based on pre-0.6 versions of
808    libpcap, and have this bug; WinPcap 2.3 is based on libpcap 0.6.2, and
809    doesn't have this bug.
810
811    If you are running Wireshark on a UNIX-flavored platform, run
812    "wireshark -v", or select "About Wireshark..." from the "Help" menu in
813    Wireshark, to see what version of libpcap it's using. If it's not 0.6
814    or later, you will need either to upgrade your OS to get a later
815    version of libpcap, or will need to build and install a later version
816    of libpcap from the tcpdump.org Web site and then recompile Wireshark
817    from source with that later version of libpcap.
818
819    If you are running Wireshark on Windows with a pre-2.3 version of
820    WinPcap, you will need to un-install WinPcap and then download and
821    install WinPcap 2.3.
822
823    Q 7.9: How can I capture packets with CRC errors?
824
825    A: Wireshark can capture only the packets that the packet capture
826    library - libpcap on UNIX-flavored OSes, and the WinPcap port to
827    Windows of libpcap on Windows - can capture, and libpcap/WinPcap can
828    capture only the packets that the OS's raw packet capture mechanism (or
829    the WinPcap driver, and the underlying OS networking code and network
830    interface drivers, on Windows) will allow it to capture.
831
832    Unless the OS always supplies packets with errors such as invalid CRCs
833    to the raw packet capture mechanism, or can be configured to do so,
834    invalid CRCs to the raw packet capture mechanism, Wireshark - and other
835    programs that capture raw packets, such as tcpdump - cannot capture
836    those packets. You will have to determine whether your OS needs to be
837    so configured and, if so, can be so configured, configure it if
838    necessary and possible, and make whatever changes to libpcap and the
839    packet capture program you're using are necessary, if any, to support
840    capturing those packets.
841
842    Most OSes probably do not support capturing packets with invalid CRCs
843    on Ethernet, and probably do not support it on most other link-layer
844    types. Some drivers on some OSes do support it, such as some Ethernet
845    drivers on FreeBSD; in those OSes, you might always get those packets,
846    or you might only get them if you capture in promiscuous mode (you'd
847    have to determine which is the case).
848
849    Note that libpcap does not currently supply to programs that use it an
850    indication of whether the packet's CRC was invalid (because the drivers
851    themselves do not supply that information to the raw packet capture
852    mechanism); therefore, Wireshark will not indicate which packets had
853    CRC errors unless the FCS was captured (see the next question) and
854    you're using Wireshark 0.9.15 and later, in which case Wireshark will
855    check the CRC and indicate whether it's correct or not.
856
857    Q 7.10: How can I capture entire frames, including the FCS?
858
859    A: Wireshark can only capture data that the packet capture library -
860    libpcap on UNIX-flavored OSes, and the WinPcap port to Windows of
861    libpcap on Windows - can capture, and libpcap/WinPcap can capture only
862    the data that the OS's raw packet capture mechanism (or the WinPcap
863    driver, and the underlying OS networking code and network interface
864    drivers, on Windows) will allow it to capture.
865
866    For any particular link-layer network type, unless the OS supplies the
867    FCS of a frame as part of the frame, or can be configured to do so,
868    Wireshark - and other programs that capture raw packets, such as
869    tcpdump - cannot capture the FCS of a frame. You will have to determine
870    whether your OS needs to be so configured and, if so, can be so
871    configured, configure it if necessary and possible, and make whatever
872    changes to libpcap and the packet capture program you're using are
873    necessary, if any, to support capturing the FCS of a frame.
874
875    Most OSes do not support capturing the FCS of a frame on Ethernet, and
876    probably do not support it on most other link-layer types. Some drivres
877    on some OSes do support it, such as some (all?) Ethernet drivers on
878    NetBSD and possibly the driver for Apple's gigabit Ethernet interface
879    in Mac OS X; in those OSes, you might always get the FCS, or you might
880    only get the FCS if you capture in promiscuous mode (you'd have to
881    determine which is the case).
882
883    Versions of Wireshark prior to 0.9.15 will not treat an Ethernet FCS in
884    a captured packet as an FCS. 0.9.15 and later will attempt to determine
885    whether there's an FCS at the end of the frame and, if it thinks there
886    is, will display it as such, and will check whether it's the correct
887    CRC-32 value or not.
888
889    Q 7.11: I'm capturing packets on a machine on a VLAN; why don't the
890    packets I'm capturing have VLAN tags?
891
892    A: You might be capturing on what might be called a "VLAN interface" -
893    the way a particular OS makes VLANs plug into the networking stack
894    might, for example, be to have a network device object for the physical
895    interface, which takes VLAN packets, strips off the VLAN header and
896    constructs an Ethernet header, and passes that packet to an internal
897    network device object for the VLAN, which then passes the packets onto
898    various higher-level protocol implementations.
899
900    In order to see the raw Ethernet packets, rather than "de-VLANized"
901    packets, you would have to capture not on the virtual interface for the
902    VLAN, but on the interface corresponding to the physical network
903    device, if possible. See the Wireshark Wiki item on VLAN capturing for
904    details.
905
906    Q 7.12: Why does Wireshark hang after I stop a capture?
907
908    A: The most likely reason for this is that Wireshark is trying to look
909    up an IP address in the capture to convert it to a name (so that, for
910    example, it can display the name in the source address or destination
911    address columns), and that lookup process is taking a very long time.
912
913    Wireshark calls a routine in the OS of the machine on which it's
914    running to convert of IP addresses to the corresponding names. That
915    routine probably does one or more of:
916      * a search of a system file listing IP addresses and names;
917      * a lookup using DNS;
918      * on UNIX systems, a lookup using NIS;
919      * on Windows systems, a NetBIOS-over-TCP query.
920
921    If a DNS server that's used in an address lookup is not responding, the
922    lookup will fail, but will only fail after a timeout while the system
923    routine waits for a reply.
924
925    In addition, on Windows systems, if the DNS lookup of the address
926    fails, either because the server isn't responding or because there are
927    no records in the DNS that could be used to map the address to a name,
928    a NetBIOS-over-TCP query will be made. That query involves sending a
929    message to the NetBIOS-over-TCP name service on that machine, asking
930    for the name and other information about the machine. If the machine
931    isn't running software that responds to those queries - for example,
932    many non-Windows machines wouldn't be running that software - the
933    lookup will only fail after a timeout. Those timeouts can cause the
934    lookup to take a long time.
935
936    If you disable network address-to-name translation - for example, by
937    turning off the "Enable network name resolution" option in the "Capture
938    Options" dialog box for starting a network capture - the lookups of the
939    address won't be done, which may speed up the process of reading the
940    capture file after the capture is stopped. You can make that setting
941    the default by selecting "Preferences" from the "Edit" menu, turning
942    off the "Enable network name resolution" option in the "Name
943    resolution" options in the preferences disalog box, and using the
944    "Save" button in that dialog box; note that this will save all your
945    current preference settings.
946
947    If Wireshark hangs when reading a capture even with network name
948    resolution turned off, there might, for example, be a bug in one of
949    Wireshark's dissectors for a protocol causing it to loop infinitely. If
950    you're not running the most recent release of Wireshark, you should
951    first upgrade to that release, as, if there's a bug of that sort, it
952    might've been fixed in a release after the one you're running. If the
953    hang occurs in the most recent release of Wireshark, the bug should be
954    reported to the Wireshark developers' mailing list at
955    wireshark-dev@wireshark.org.
956
957    On UNIX-flavored OSes, please try to force Wireshark to dump core, by
958    sending it a SIGABRT signal (usually signal 6) with the kill command,
959    and then get a stack trace if you have a debugger installed. A stack
960    trace can be obtained by using your debugger (gdb in this example), the
961    Wireshark binary, and the resulting core file. Here's an example of how
962    to use the gdb command backtrace to do so.
963         $ gdb wireshark core
964         (gdb) backtrace
965         ..... prints the stack trace
966         (gdb) quit
967         $
968
969    The core dump file may be named "wireshark.core" rather than "core" on
970    some platforms (e.g., BSD systems).
971
972    Also, if at all possible, please send a copy of the capture file that
973    caused the problem; when capturing packets, Wireshark normally writes
974    captured packets to a temporary file, which will probably be in /tmp or
975    /var/tmp on UNIX-flavored OSes, \TEMP on the main system disk (normally
976    C:) on Windows 9x/Me/NT 4.0, and \Documents and Settings\your login
977    name\Local Settings\Temp on the main system disk on Windows
978    2000/Windows XP/Windows Server 2003, so the capture file will probably
979    be there. It will have a name beginning with ether, with some mixture
980    of letters and numbers after that. Please don't send a trace file
981    greater than 1 MB when compressed; instead, make it available via FTP
982    or HTTP, or say it's available but leave it up to a developer to ask
983    for it. If the trace file contains sensitive information (e.g.,
984    passwords), then please do not send it.
985
986 8. Capturing packets on Windows
987
988    Q 8.1: I'm running Wireshark on Windows; why does some network
989    interface on my machine not show up in the list of interfaces in the
990    "Interface:" field in the dialog box popped up by "Capture->Start",
991    and/or why does Wireshark give me an error if I try to capture on that
992    interface?
993
994    A: If you are running Wireshark on Windows NT 4.0, Windows 2000,
995    Windows XP, or Windows Server 2003, and this is the first time you have
996    run a WinPcap-based program (such as Wireshark, or TShark, or WinDump,
997    or Analyzer, or...) since the machine was rebooted, you need to run
998    that program from an account with administrator privileges; once you
999    have run such a program, you will not need administrator privileges to
1000    run any such programs until you reboot.
1001
1002    If you are running on Windows 95/98/Me, or if you are running on
1003    Windows NT 4.0/Windows 2000/Windows XP/Windows Server 2003 and have
1004    administrator privileges or a WinPcap-based program has been run with
1005    those privileges since the machine rebooted, this problem might clear
1006    up if you completely un-install WinPcap and then re-install it.
1007
1008    If that doesn't work, then note that Wireshark relies on the WinPcap
1009    library, on the WinPcap device driver, and on the facilities that come
1010    with the OS on which it's running in order to do captures.
1011
1012    Therefore, if the OS, the WinPcap library, or the WinPcap driver don't
1013    support capturing on a particular network interface device, Wireshark
1014    won't be able to capture on that device.
1015
1016    Note that:
1017     1. 2.02 and earlier versions of the WinPcap driver and library that
1018        Wireshark uses for packet capture didn't support Token Ring
1019        interfaces; versions 2.1 and later support Token Ring, and the
1020        current version of Wireshark works with (and, in fact, requires)
1021        WinPcap 2.1 or later.
1022        If you are having problems capturing on Token Ring interfaces, and
1023        you have WinPcap 2.02 or an earlier version of WinPcap installed,
1024        you should uninstall WinPcap, download and install the current
1025        version of WinPcap, and then install the latest version of
1026        Wireshark.
1027     2. On Windows 95, 98, or Me, sometimes more than one interface will be
1028        given the same name; if that is the case, you will only be able to
1029        capture on one of those interfaces - it's not clear to which one
1030        the name, when used in a WinPcap-based application, will refer. For
1031        example, if you have a PPP serial interface and a VPN interface,
1032        they might show up with the same name, for example "ppp-mac", and
1033        if you try to capture on "ppp-mac", it might not capture on the
1034        interface you're currently using. In that case, you might, for
1035        example, have to remove the VPN interface from the system in order
1036        to capture on the PPP serial interface.
1037     3. WinPcap 2.3 has problems supporting PPP WAN interfaces on Windows
1038        NT 4.0, Windows 2000, Windows XP, and Windows Server 2003, and, to
1039        avoid those problems, support for PPP WAN interfaces on those
1040        versions of Windows has been disabled in WinPcap 3.0. Regular
1041        dial-up lines, ISDN lines, ADSL connections using PPPoE or PPPoA,
1042        and various other lines such as T1/E1 lines are all PPP interfaces,
1043        so those interfaces might not show up on the list of interfaces in
1044        the "Capture Options" dialog on those OSes.
1045        On Windows 2000, Windows XP, and Windows Server 2003, but not
1046        Windows NT 4.0 or Windows Vista Beta 1, you should be able to
1047        capture on the "GenericDialupAdapter" with WinPcap 3.1. (3.1 beta
1048        releases called it the "NdisWanAdapter"; if you're using a 3.1 beta
1049        release, you should un-install it and install the final 3.1
1050        release.) See the Wireshark Wiki item on PPP capturing for details.
1051     4. WinPcap prior to 3.0 does not support multiprocessor machines (note
1052        that machines with a single multi-threaded processor, such as
1053        Intel's new multi-threaded x86 processors, are multiprocessor
1054        machines as far as the OS and WinPcap are concerned), and recent
1055        2.x versions of WinPcap refuse to operate if they detect that
1056        they're running on a multiprocessor machine, which means that they
1057        may not show any network interfaces. You will need to use WinPcap
1058        3.0 to capture on a multiprocessor machine.
1059
1060    If an interface doesn't show up in the list of interfaces in the
1061    "Interface:" field, and you know the name of the interface, try
1062    entering that name in the "Interface:" field and capturing on that
1063    device.
1064
1065    If the attempt to capture on it succeeds, the interface is somehow not
1066    being reported by the mechanism Wireshark uses to get a list of
1067    interfaces. Try listing the interfaces with WinDump; see the WinDump
1068    Web site for information on using WinDump.
1069
1070    You would run WinDump with the -D flag; if it lists the interface,
1071    please report this to wireshark-dev@wireshark.org giving full details
1072    of the problem, including
1073      * the operating system you're using, and the version of that
1074        operating system;
1075      * the type of network device you're using;
1076      * the output of WinDump.
1077
1078    If WinDump does not list the interface, this is almost certainly a
1079    problem with one or more of:
1080      * the operating system you're using;
1081      * the device driver for the interface you're using;
1082      * the WinPcap library and/or the WinPcap device driver;
1083
1084    so first check the WinPcap FAQ or the Wiretapped.net mirror of that
1085    FAQ, to see if your problem is mentioned there. If not, then see the
1086    WinPcap support page - check the "Submitting bugs" section.
1087
1088    If you are having trouble capturing on a particular network interface,
1089    first try capturing on that device with WinDump; see the WinDump Web
1090    site for information on using WinDump.
1091
1092    If you can capture on the interface with WinDump, send mail to
1093    wireshark-users@wireshark.org giving full details of the problem,
1094    including
1095      * the operating system you're using, and the version of that
1096        operating system;
1097      * the type of network device you're using;
1098      * the error message you get from Wireshark.
1099
1100    If you cannot capture on the interface with WinDump, this is almost
1101    certainly a problem with one or more of:
1102      * the operating system you're using;
1103      * the device driver for the interface you're using;
1104      * the WinPcap library and/or the WinPcap device driver;
1105
1106    so first check the WinPcap FAQ or the Wiretapped.net mirror of that
1107    FAQ, to see if your problem is mentioned there. If not, then see the
1108    WinPcap support page - check the "Submitting bugs" section.
1109
1110    You may also want to ask the wireshark-users@wireshark.org and the
1111    winpcap-users@winpcap.org mailing lists to see if anybody happens to
1112    know about the problem and know a workaround or fix for the problem.
1113    (Note that you will have to subscribe to that list in order to be
1114    allowed to mail to it; see the WinPcap support page for information on
1115    the mailing list.) In your mail, please give full details of the
1116    problem, as described above, and also indicate that the problem occurs
1117    with WinDump, not just with Wireshark.
1118
1119    Q 8.2: I'm running Wireshark on Windows; why do no network interfaces
1120    show up in the list of interfaces in the "Interface:" field in the
1121    dialog box popped up by "Capture->Start"?
1122
1123    A: This is really the same question as the previous one; see the
1124    response to that question.
1125
1126    Q 8.3: I'm running Wireshark on Windows; why doesn't my serial
1127    port/ADSL modem/ISDN modem show up in the list of interfaces in the
1128    "Interface:" field in the dialog box popped up by "Capture->Start"?
1129
1130    A: Internet access on those devices is often done with the
1131    Point-to-Point (PPP) protocol; WinPcap 2.3 has problems supporting PPP
1132    WAN interfaces on Windows NT 4.0, Windows 2000, Windows XP, and Windows
1133    Server 2003, and, to avoid those problems, support for PPP WAN
1134    interfaces on those versions of Windows has been disabled in WinPcap
1135    3.0.
1136
1137    On Windows 2000, Windows XP, and Windows Server 2003, but not Windows
1138    NT 4.0 or Windows Vista Beta 1, you should be able to capture on the
1139    "GenericDialupAdapter" with WinPcap 3.1. (3.1 beta releases called it
1140    the "NdisWanAdapter"; if you're using a 3.1 beta release, you should
1141    un-install it and install the final 3.1 release.) See the Wireshark
1142    Wiki item on PPP capturing for details.
1143
1144    Q 8.4: I'm running Wireshark on Windows NT 4.0/Windows 2000/Windows
1145    XP/Windows Server 2003; my machine has a PPP (dial-up POTS, ISDN, etc.)
1146    interface, and it shows up in the "Interface" item in the "Capture
1147    Options" dialog box. Why can no packets be sent on or received from
1148    that network while I'm trying to capture traffic on that interface?
1149
1150    A: Some versions of WinPcap have problems with PPP WAN interfaces on
1151    Windows NT 4.0, Windows 2000, Windows XP, and Windows Server 2003; one
1152    symptom that may be seen is that attempts to capture in promiscuous
1153    mode on the interface cause the interface to be incapable of sending or
1154    receiving packets. You can disable promiscuous mode using the -p
1155    command-line flag or the item in the "Capture Preferences" dialog box,
1156    but this may mean that outgoing packets, or incoming packets, won't be
1157    seen in the capture.
1158
1159    On Windows 2000, Windows XP, and Windows Server 2003, but not Windows
1160    NT 4.0 or Windows Vista Beta 1, you should be able to capture on the
1161    "GenericDialupAdapter" with WinPcap 3.1. (3.1 beta releases called it
1162    the "NdisWanAdapter"; if you're using a 3.1 beta release, you should
1163    un-install it and install the final 3.1 release.) See the Wireshark
1164    Wiki item on PPP capturing for details.
1165
1166    Q 8.5: I'm running Wireshark on Windows 95/98/Me, on a machine with
1167    more than one network adapter of the same type; why does Wireshark show
1168    all of those adapters with the same name, not letting me use any of
1169    those adapters other than the first one?
1170
1171    A: Unfortunately, Windows 95/98/Me gives the same name to multiple
1172    instances of the type of same network adapter. Therefore, WinPcap
1173    cannot distinguish between them, so a WinPcap-based application can
1174    capture only on the first such interface; Wireshark is a
1175    libpcap/WinPcap-based application.
1176
1177    Q 8.6: I'm running Wireshark on Windows; why am I not seeing any
1178    traffic being sent by the machine running Wireshark?
1179
1180    A: If you are running some form of VPN client software, it might be
1181    causing this problem; people have seen this problem when they have
1182    Check Point's VPN software installed on their machine. If that's the
1183    cause of the problem, you will have to remove the VPN software in order
1184    to have Wireshark (or any other application using WinPcap) see outgoing
1185    packets; unfortunately, neither we nor the WinPcap developers know any
1186    way to make WinPcap and the VPN software work well together.
1187
1188    Also, some drivers for Windows (especially some wireless network
1189    interface drivers) apparently do not, when running in promiscuous mode,
1190    arrange that outgoing packets are delivered to the software that
1191    requested that the interface run promiscuously; try turning promiscuous
1192    mode off.
1193
1194    Q 8.7: When I capture on Windows in promiscuous mode, I can see packets
1195    other than those sent to or from my machine; however, those packets
1196    show up with a "Short Frame" indication, unlike packets to or from my
1197    machine. What should I do to arrange that I see those packets in their
1198    entirety?
1199
1200    A: In at least some cases, this appears to be the result of PGPnet
1201    running on the network interface on which you're capturing; turn it off
1202    on that interface.
1203
1204    Q 8.8: I'm capturing packets on {Windows 95, Windows 98, Windows Me};
1205    why are the time stamps on packets wrong?
1206
1207    A: This is due to a bug in WinPcap. The bug should be fixed in WinPcap
1208    3.0 and later releases.
1209
1210    Q 8.9: I'm trying to capture 802.11 traffic on Windows; why am I not
1211    seeing any packets?
1212
1213    A: At least some 802.11 card drivers on Windows appear not to see any
1214    packets if they're running in promiscuous mode. Try turning promiscuous
1215    mode off; you'll only be able to see packets sent by and received by
1216    your machine, not third-party traffic, and it'll look like Ethernet
1217    traffic and won't include any management or control frames, but that's
1218    a limitation of the card drivers.
1219
1220    See MicroLogix's list of cards supported with WinPcap for information
1221    on support of various adapters and drivers with WinPcap.
1222
1223    Q 8.10: I'm trying to capture 802.11 traffic on Windows; why am I
1224    seeing packets received by the machine on which I'm capturing traffic,
1225    but not packets sent by that machine?
1226
1227    A: This appears to be another problem with promiscuous mode; try
1228    turning it off.
1229
1230    Q 8.11: I'm trying to capture Ethernet VLAN traffic on Windows, and I'm
1231    capturing on a "raw" Ethernet device rather than a "VLAN interface", so
1232    that I can see the VLAN headers; why am I seeing packets received by
1233    the machine on which I'm capturing traffic, but not packets sent by
1234    that machine?
1235
1236    A: The way the Windows networking code works probably means that
1237    packets are sent on a "VLAN interface" rather than the "raw" device, so
1238    packets sent by the machine will only be seen when you capture on the
1239    "VLAN interface". If so, you will be unable to see outgoing packets
1240    when capturing on the "raw" device, so you are stuck with a choice
1241    between seeing VLAN headers and seeing outgoing packets.
1242
1243 9. Capturing packets on UN*Xes
1244
1245    Q 9.1: I'm running Wireshark on a UNIX-flavored OS; why does some
1246    network interface on my machine not show up in the list of interfaces
1247    in the "Interface:" field in the dialog box popped up by
1248    "Capture->Start", and/or why does Wireshark give me an error if I try
1249    to capture on that interface?
1250
1251    A: You may need to run Wireshark from an account with sufficient
1252    privileges to capture packets, such as the super-user account, or may
1253    need to give your account sufficient privileges to capture packets.
1254    Only those interfaces that Wireshark can open for capturing show up in
1255    that list; if you don't have sufficient privileges to capture on any
1256    interfaces, no interfaces will show up in the list. See the Wireshark
1257    Wiki item on capture privileges for details on how to give a particular
1258    account or account group capture privileges on platforms where that can
1259    be done.
1260
1261    If you are running Wireshark from an account with sufficient
1262    privileges, then note that Wireshark relies on the libpcap library, and
1263    on the facilities that come with the OS on which it's running in order
1264    to do captures. On some OSes, those facilities aren't present by
1265    default; see the Wireshark Wiki item on adding capture support for
1266    details.
1267
1268    And, even if you're running with an account that has sufficient
1269    privileges to capture, and capture support is present in your OS, if
1270    the OS or the libpcap library don't support capturing on a particular
1271    network interface device or particular types of devices, Wireshark
1272    won't be able to capture on that device.
1273
1274    On Solaris, note that libpcap 0.6.2 and earlier didn't support Token
1275    Ring interfaces; the current version, 0.7.2, does support Token Ring,
1276    and the current version of Wireshark works with libcap 0.7.2 and later.
1277
1278    If an interface doesn't show up in the list of interfaces in the
1279    "Interface:" field, and you know the name of the interface, try
1280    entering that name in the "Interface:" field and capturing on that
1281    device.
1282
1283    If the attempt to capture on it succeeds, the interface is somehow not
1284    being reported by the mechanism Wireshark uses to get a list of
1285    interfaces; please report this to wireshark-dev@wireshark.org giving
1286    full details of the problem, including
1287      * the operating system you're using, and the version of that
1288        operating system (for Linux, give both the version number of the
1289        kernel and the name and version number of the distribution you're
1290        using);
1291      * the type of network device you're using.
1292
1293    If you are having trouble capturing on a particular network interface,
1294    and you've made sure that (on platforms that require it) you've
1295    arranged that packet capture support is present, as per the above,
1296    first try capturing on that device with tcpdump.
1297
1298    If you can capture on the interface with tcpdump, send mail to
1299    wireshark-users@wireshark.org giving full details of the problem,
1300    including
1301      * the operating system you're using, and the version of that
1302        operating system (for Linux, give both the version number of the
1303        kernel and the name and version number of the distribution you're
1304        using);
1305      * the type of network device you're using;
1306      * the error message you get from Wireshark.
1307
1308    If you cannot capture on the interface with tcpdump, this is almost
1309    certainly a problem with one or more of:
1310      * the operating system you're using;
1311      * the device driver for the interface you're using;
1312      * the libpcap library;
1313
1314    so you should report the problem to the company or organization that
1315    produces the OS (in the case of a Linux distribution, report the
1316    problem to whoever produces the distribution).
1317
1318    You may also want to ask the wireshark-users@wireshark.org and the
1319    tcpdump-workers@tcpdump.org mailing lists to see if anybody happens to
1320    know about the problem and know a workaround or fix for the problem. In
1321    your mail, please give full details of the problem, as described above,
1322    and also indicate that the problem occurs with tcpdump not just with
1323    Wireshark.
1324
1325    Q 9.2: I'm running Wireshark on a UNIX-flavored OS; why do no network
1326    interfaces show up in the list of interfaces in the "Interface:" field
1327    in the dialog box popped up by "Capture->Start"?
1328
1329    A: This is really the same question as the previous one; see the
1330    response to that question.
1331
1332    Q 9.3: I'm capturing packets on Linux; why do the time stamps have only
1333    100ms resolution, rather than 1us resolution?
1334
1335    A: Wireshark gets time stamps from libpcap/WinPcap, and libpcap/WinPcap
1336    get them from the OS kernel, so Wireshark - and any other program using
1337    libpcap, such as tcpdump - is at the mercy of the time stamping code in
1338    the OS for time stamps.
1339
1340    At least on x86-based machines, Linux can get high-resolution time
1341    stamps on newer processors with the Time Stamp Counter (TSC) register;
1342    for example, Intel x86 processors, starting with the Pentium Pro, and
1343    including all x86 processors since then, have had a TSC, and other
1344    vendors probably added the TSC at some point to their families of x86
1345    processors.
1346
1347    The Linux kernel must be configured with the CONFIG_X86_TSC option
1348    enabled in order to use the TSC. Make sure this option is enabled in
1349    your kernel.
1350
1351    In addition, some Linux distributions may have bugs in their versions
1352    of the kernel that cause packets not to be given high-resolution time
1353    stamps even if the TSC is enabled. See, for example, bug 61111 for Red
1354    Hat Linux 7.2. If your distribution has a bug such as this, you may
1355    have to run a standard kernel from kernel.org in order to get
1356    high-resolution time stamps.
1357
1358 10. Capturing packets on wireless LANs
1359
1360    Q 10.1: How can I capture raw 802.11 frames, including non-data
1361    (management, beacon) frames?
1362
1363    A: That depends on the operating system on which you're running, and on
1364    the 802.11 interface on which you're capturing.
1365
1366    This would probably require that you capture in promiscuous mode or in
1367    the mode called "monitor mode" or "RFMON mode". On some platforms, or
1368    with some cards, this might require that you capture in monitor mode -
1369    promiscuous mode might not be sufficient. If you want to capture
1370    traffic on networks other than the one with which you're associated,
1371    you will have to capture in monitor mode.
1372
1373    Not all operating systems support capturing non-data packets and, even
1374    on operating systems that do support it, not all drivers, and thus not
1375    all interfaces, support it. Even on those that do, monitor mode might
1376    not be supported by the operating system or by the drivers for all
1377    interfaces.
1378
1379    NOTE: an interface running in monitor mode will, on most if not all
1380    platforms, not be able to act as a regular network interface; putting
1381    it into monitor mode will, in effect, take your machine off of whatever
1382    network it's on as long as the interface is in monitor mode, allowing
1383    it only to passively capture packets.
1384
1385    This means that you should disable name resolution when capturing in
1386    monitor mode; otherwise, when Wireshark (or TShark, or tcpdump) tries
1387    to display IP addresses as host names, it will probably block for a
1388    long time trying to resolve the name because it will not be able to
1389    communicate with any DNS or NIS servers.
1390
1391    See the Wireshark Wiki item on 802.11 capturing for details.
1392
1393    Q 10.2: How do I capture on an 802.11 device in monitor mode?
1394
1395    A: Whether you will be able to capture in monitor mode depends on the
1396    operating system, adapter, and driver you're using. See the previous
1397    question for information on monitor mode, including a link to the
1398    Wireshark Wiki page that gives details on 802.11 capturing.
1399
1400 11. Viewing traffic
1401
1402    Q 11.1: Why am I seeing lots of packets with incorrect TCP checksums?
1403
1404    A: If the packets that have incorrect TCP checksums are all being sent
1405    by the machine on which Wireshark is running, this is probably because
1406    the network interface on which you're capturing does TCP checksum
1407    offloading. That means that the TCP checksum is added to the packet by
1408    the network interface, not by the OS's TCP/IP stack; when capturing on
1409    an interface, packets being sent by the host on which you're capturing
1410    are directly handed to the capture interface by the OS, which means
1411    that they are handed to the capture interface without a TCP checksum
1412    being added to them.
1413
1414    The only way to prevent this from happening would be to disable TCP
1415    checksum offloading, but
1416     1. that might not even be possible on some OSes;
1417     2. that could reduce networking performance significantly.
1418
1419    However, you can disable the check that Wireshark does of the TCP
1420    checksum, so that it won't report any packets as having TCP checksum
1421    errors, and so that it won't refuse to do TCP reassembly due to a
1422    packet having an incorrect TCP checksum. That can be set as an
1423    Wireshark preference by selecting "Preferences" from the "Edit" menu,
1424    opening up the "Protocols" list in the left-hand pane of the
1425    "Preferences" dialog box, selecting "TCP", from that list, turning off
1426    the "Check the validity of the TCP checksum when possible" option,
1427    clicking "Save" if you want to save that setting in your preference
1428    file, and clicking "OK".
1429
1430    It can also be set on the Wireshark or TShark command line with a -o
1431    tcp.check_checksum:false command-line flag, or manually set in your
1432    preferences file by adding a tcp.check_checksum:false line.
1433
1434    Q 11.2: I've just installed Wireshark, and the traffic on my local LAN
1435    is boring. Where can I find more interesting captures?
1436
1437    A: We have a collection of strange and exotic sample capture files at
1438    http://wiki.wireshark.org/SampleCaptures
1439
1440    Q 11.3: Why doesn't Wireshark correctly identify RTP packets? It shows
1441    them only as UDP.
1442
1443    A: Wireshark can identify a UDP datagram as containing a packet of a
1444    particular protocol running atop UDP only if
1445     1. The protocol in question has a particular standard port number, and
1446        the UDP source or destination port number is that port
1447     2. Packets of that protocol can be identified by looking for a
1448        "signature" of some type in the packet - i.e., some data that, if
1449        Wireshark finds it in some particular part of a packet, means that
1450        the packet is almost certainly a packet of that type.
1451     3. Some other traffic earlier in the capture indicated that, for
1452        example, UDP traffic between two particular addresses and ports
1453        will be RTP traffic.
1454
1455    RTP doesn't have a standard port number, so 1) doesn't work; it
1456    doesn't, as far as I know, have any "signature", so 2) doesn't work.
1457
1458    That leaves 3). If there's RTSP traffic that sets up an RTP session,
1459    then, at least in some cases, the RTSP dissector will set things up so
1460    that subsequent RTP traffic will be identified. Currently, that's the
1461    only place we do that; there may be other places.
1462
1463    However, there will always be places where Wireshark is simply
1464    incapable of deducing that a given UDP flow is RTP; a mechanism would
1465    be needed to allow the user to specify that a given conversation should
1466    be treated as RTP. As of Wireshark 0.8.16, such a mechanism exists; if
1467    you select a UDP or TCP packet, the right mouse button menu will have a
1468    "Decode As..." menu item, which will pop up a dialog box letting you
1469    specify that the source port, the destination port, or both the source
1470    and destination ports of the packet should be dissected as some
1471    particular protocol.
1472
1473    Q 11.4: Why doesn't Wireshark show Yahoo Messenger packets in captures
1474    that contain Yahoo Messenger traffic?
1475
1476    A: Wireshark only recognizes as Yahoo Messenger traffic packets to or
1477    from TCP port 3050 that begin with "YPNS", "YHOO", or "YMSG". TCP
1478    segments that start with the middle of a Yahoo Messenger packet that
1479    takes more than one TCP segment will not be recognized as Yahoo
1480    Messenger packets (even if the TCP segment also contains the beginning
1481    of another Yahoo Messenger packet).
1482
1483 12. Filtering traffic
1484
1485    Q 12.1: I saved a filter and tried to use its name to filter the
1486    display; why do I get an "Unexpected end of filter string" error?
1487
1488    A: You cannot use the name of a saved display filter as a filter. To
1489    filter the display, you can enter a display filter expression - not the
1490    name of a saved display filter - in the "Filter:" box at the bottom of
1491    the display, and type the key or press the "Apply" button (that does
1492    not require you to have a saved filter), or, if you want to use a saved
1493    filter, you can press the "Filter:" button, select the filter in the
1494    dialog box that pops up, and press the "OK" button.
1495
1496    Q 12.2: How can I search for, or filter, packets that have a particular
1497    string anywhere in them?
1498
1499    A: If you want to do this when capturing, you can't. That's a feature
1500    that would be hard to implement in capture filters without changes to
1501    the capture filter code, which, on many platforms, is in the OS kernel
1502    and, on other platforms, is in the libpcap library.
1503
1504    In releases prior to 0.9.14, you also can't search for, or filter,
1505    packets containing a particular string even after you've captured them.
1506
1507    In 0.9.14, you can search for, but not filter, packets that have a
1508    particular string; this has been added to the "Find Frame" dialog
1509    ("Find Frame" under the "Edit" menu, or control-F).
1510
1511    In 0.9.15 and later, you can search for those packets using either the
1512    mechanism introduced in 0.9.14 or using the new "contains" operator in
1513    filter expressions, which lets you search the entire packet or text
1514    string or byte string fields in the packet; the "contains" operator can
1515    also be used in expressions used to filter the display.
1516
1517    Q 12.3: How do I filter a capture to see traffic for virus XXX?
1518
1519    A: For some viruses/worms there might be a capture filter to recognize
1520    the virus traffic. Check the CaptureFilters page on the Wireshark Wiki
1521    to see if anybody's added such a filter.
1522
1523    Note that Wireshark was not designed to be an intrusion detection
1524    system; you might be able to use it as an IDS, but in most cases
1525    software designed to be an IDS, such as Snort or Prelude, will probably
1526    work better.
1527
1528    The Bleeding Edge of Snort has a collection of signatures for Snort to
1529    detect various viruses, worms, and the like.