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