=== Can you help me fill out this compliance form so that I can use Wireshark?
If you need help filling out individual items in the form, you’re certainly free to <<wheretogethelp,ask the community>> for help.
If you want someone within the project to fill out the form for you, we simply can’t help you.
Wireshark is developed by a team of volunteers, and while we try to make sure that it’s as easy as possible to obtain and use, filling out a form would mean taking precious time away from other aspects of the project.
=== Can you sign this legal agreement so that I can use Wireshark?
Probably not.
As with the previous question, we really do want you to be able to use Wireshark.
However, while we've been fortunate enough to have developers, educators, and networking experts volunteer their time, so far we haven't had any attorneys volunteer to review contracts for us pro bono.
Asking us to sign a contract is asking us to spend time reviewing that contract and/or paying for an attorney to do so that you can use Wireshark for free.
=== Does Wireshark work on older versions of Windows such as Windows 7?
Each major release branch of Wireshark supports the versions of Windows that are within their product lifecycle at the time of the “.0” release for that branch.
For example, Wireshark 3.2.0 was released in December 2019, shortly before Windows 7 reached the end of its extended support in January 2020. As a result, each of the Wireshark 3.2._x_ releases supports Windows 7, even after January 2020.
See the
link:https://www.wireshark.org/docs/wsug_html_chunked/ChIntroPlatforms.html[Microsoft Windows section of the User’s Guide]
If this is happening on Linux, it's likely due to missing development library packages.
For example, Debian and Ubuntu ship the GLib library in the libglib2.0-0 package, but ship its header files and other development assets in the libglib2.0-dev package.
We maintain setup scripts (_*-setup.sh_) for many major distributions in the _tools_ directory of the Wireshark sources that can install the required development packages for you.
This is almost certainly a problem with one or more of:
* the operating system you're using;
* the device driver for the interface you're using;
* the libpcap/Npcap library and, if this is Windows, the Npcap device
driver;
so:
* if you are using Windows, see https://nmap.org/npcap/[the Npcap
support page] - check the "Patches, Bug Reports, Questions, Suggestions,
etc" section;
* if you are using some Linux distribution, some version of BSD, or some
other UNIX-flavored OS, you should report the problem to the company or
organization that produces the OS (in the case of a Linux distribution,
report the problem to whoever produces the distribution).
=== Why does my machine crash or reset itself when I select "Start" from the "Capture" menu or select "Preferences" from the "Edit" menu?
Both of those operations cause Wireshark to try to build a list of
the interfaces that it can open; it does so by getting a list of
interfaces and trying to open them. There is probably an OS, driver, or,
for Windows, Npcap bug that causes the system to crash when this
happens; see the previous question.
== Capturing packets
[[promiscsniff]]
=== When I use Wireshark to capture packets, why do I see only packets to and from my machine, or not see all the traffic I'm expecting to see from or to the machine I'm trying to monitor?
This might be because the interface on which you're capturing is
plugged into an Ethernet or Token Ring switch; on a switched network,
unicast traffic between two ports will not necessarily appear on other
ports - only broadcast and multicast traffic will be sent to all ports.
Note that even if your machine is plugged into a hub, the "hub" may be
a switched hub, in which case you're still on a switched network.
Note also that on the Linksys Web site, they say that their
auto-sensing hubs "broadcast the 10Mb packets to the port that operate
at 10Mb only and broadcast the 100Mb packets to the ports that operate
at 100Mb only", which would indicate that if you sniff on a 10Mb port,
you will not see traffic coming sent to a 100Mb port, and _vice versa_.
This problem has also been reported for Netgear dual-speed hubs, and may
exist for other "auto-sensing" or "dual-speed" hubs.
Some switches have the ability to replicate all traffic on all ports to
a single port so that you can plug your analyzer into that single port
to sniff all traffic. You would have to check the documentation for the
switch to see if this is possible and, if so, to see how to do this. See
switches. (Note that it's a Wiki, so you can update or fix that
information, or add additional information on those switches or
information on new switches, yourself.)
Note also that many firewall/NAT boxes have a switch built into them;
this includes many of the "cable/DSL router" boxes. If you have a box of
that sort, that has a switch with some number of Ethernet ports into
which you plug machines on your network, and another Ethernet port used
to connect to a cable or DSL modem, you can, at least, sniff traffic
between the machines on your network and the Internet by plugging the
Ethernet port on the router going to the modem, the Ethernet port on the
modem, and the machine on which you're running Wireshark into a hub
(make sure it's not a switching hub, and that, if it's a dual-speed hub,
all three of those ports are running at the same speed.
If your machine is _not_ plugged into a switched network or a
dual-speed hub, or it is plugged into a switched network but the port is
set up to have all traffic replicated to it, the problem might be that
the network interface on which you're capturing doesn't support
"promiscuous" mode, or because your OS can't put the interface into
promiscuous mode. Normally, network interfaces supply to the host only:
* packets sent to one of that host's link-layer addresses;
* broadcast packets;
* multicast packets sent to a multicast address that the host has
configured the interface to accept.
Most network interfaces can also be put in "promiscuous" mode, in which
they supply to the host all network packets they see. Wireshark will try
to put the interface on which it's capturing into promiscuous mode
unless the "Capture packets in promiscuous mode" option is turned off in
the "Capture Options" dialog box, and TShark will try to put the
interface on which it's capturing into promiscuous mode unless the `-p`
option was specified. However, some network interfaces don't support
promiscuous mode, and some OSes might not allow interfaces to be put
into promiscuous mode.
If the interface is not running in promiscuous mode, it won't see any
traffic that isn't intended to be seen by your machine. It *will* see
broadcast packets, and multicast packets sent to a multicast MAC address
the interface is set up to receive.
You should ask the vendor of your network interface whether it supports
promiscuous mode. If it does, you should ask whoever supplied the driver
for the interface (the vendor, or the supplier of the OS you're running
on your machine) whether it supports promiscuous mode with that network
interface.
In the case of wireless LAN interfaces, it appears that, when those
interfaces are promiscuously sniffing, they're running in a
significantly different mode from the mode that they run in when they're
just acting as network interfaces (to the extent that it would be a
significant effort for those drivers to support for promiscuously
sniffing _and_ acting as regular network interfaces at the same time),
so it may be that Windows drivers for those interfaces don't support
promiscuous mode.
=== When I capture with Wireshark, why can't I see any TCP packets other than packets to and from my machine, even though another analyzer on the network sees those packets?
You're probably not seeing _any_ packets other than unicast packets
to or from your machine, and broadcast and multicast packets; a switch
will normally send to a port only unicast traffic sent to the MAC
address for the interface on that port, and broadcast and multicast
traffic - it won't send to that port unicast traffic sent to a MAC
address for some other interface - and a network interface not in
promiscuous mode will receive only unicast traffic sent to the MAC
address for that interface, broadcast traffic, and multicast traffic
sent to a multicast MAC address the interface is set up to receive.
TCP doesn't use broadcast or multicast, so you will only see your own
TCP traffic, but UDP services may use broadcast or multicast so you'll
see some UDP traffic - however, this is not a problem with TCP traffic,
it's a problem with unicast traffic, as you also won't see all UDP
traffic between other machines.
I.e., this is probably link:#promiscsniff[the same question as this
earlier one]; see the response to that question.
=== Why am I only seeing ARP packets when I try to capture traffic?
You're probably on a switched network, and running Wireshark on a
machine that's not sending traffic to the switch and not being sent any
traffic from other machines on the switch. ARP packets are often
broadcast packets, which are sent to all switch ports.
I.e., this is probably link:#promiscsniff[the same question as this
earlier one]; see the response to that question.
=== Why am I not seeing any traffic when I try to capture traffic?
Is the machine running Wireshark sending out any traffic on the
network interface on which you're capturing, or receiving any traffic on
that network, or is there any broadcast traffic on the network or
multicast traffic to a multicast group to which the machine running
Wireshark belongs?
If not, this may just be a problem with promiscuous sniffing, either
due to running on a switched network or a dual-speed hub, or due to
problems with the interface not supporting promiscuous mode; see the
response to link:#promiscsniff[this earlier question].
Otherwise, on Windows, see the response to link:#capprobwin[this
question] and, on a UNIX-flavored OS, see the response to
link:#capprobunix[this question].
=== How do I put an interface into promiscuous mode?
By not disabling promiscuous mode when running Wireshark or TShark.
Note, however, that:
* the form of promiscuous mode that libpcap (the library that programs
such as tcpdump, Wireshark, etc. use to do packet capture) turns on will
*not* necessarily be shown if you run `ifconfig` on the interface on a
UNIX system;
* some network interfaces might not support promiscuous mode, and some
drivers might not allow promiscuous mode to be turned on - see
link:#promiscsniff[this earlier question] for more information on that;
* the fact that you're not seeing any traffic, or are only seeing
broadcast traffic, or aren't seeing any non-broadcast traffic other than
traffic to or from the machine running Wireshark, does not mean that
promiscuous mode isn't on - see link:#promiscsniff[this earlier
question] for more information on that.
I.e., this is probably link:#promiscsniff[the same question as this
earlier one]; see the response to that question.
=== I can set a display filter just fine; why don't capture filters work?
Capture filters currently use a different syntax than display
filters. Here's the corresponding section from the
Server 2003, and `\Users\your login name\AppData\Local\Temp` on the main
system disk on Windows Vista and later, so the capture file will
probably be there. If you are capturing on a single interface, it will
have a name of the form,
`wireshark_<iface>_YYYYmmddHHMMSS_XXXXXX.<fmt>`, where <fmt> is the
capture file format (pcap or pcapng), and <iface> is the actual name of
the interface you are capturing on; otherwise, if you are capturing on
multiple interfaces, it will have a name of the form,
`wireshark_<N>_interfaces_YYYYmmddHHMMSS_XXXXXX.<fmt>`, where <N> is the
number of simultaneous interfaces you are capturing on. Please don't
send a trace file greater than 1 MB when compressed; instead, make it
available via FTP or HTTP, or say it's available but leave it up to a
developer to ask for it. If the trace file contains sensitive
information (e.g., passwords), then please do not send it.
== Capturing packets on Windows
[[capprobwin]]
=== I'm running Wireshark on Windows; why does some network interface on my machine not show up in the list of interfaces in the "Interface:" field in the dialog box popped up by "Capture->Start", and/or why does Wireshark give me an error if I try to capture on that interface?
lists to see if anybody happens to know about the problem and know a
workaround or fix for the problem. (Note that you will have to subscribe
to that list in order to be allowed to mail to it; see
https://nmap.org/npcap/[the Npcap support page] for information on the
mailing list.) In your mail, please give full details of the problem, as
described above, and also indicate that the problem occurs with WinDump,
not just with Wireshark.
=== I'm running Wireshark on Windows; why do no network interfaces show up in the list of interfaces in the "Interface:" field in the dialog box popped up by "Capture->Start"?
This is really link:#capprobwin[the same question as a previous one];
see the response to that question.
=== I'm running Wireshark on Windows; why am I not seeing any traffic being sent by the machine running Wireshark?
If you are running some form of VPN client software, it might be
causing this problem; people have seen this problem when they have Check
Point's VPN software installed on their machine. If that's the cause of
the problem, you will have to remove the VPN software in order to have
Wireshark (or any other application using Npcap) see outgoing packets;
unfortunately, neither we nor the Npcap developers know any way to make
Npcap and the VPN software work well together.
Also, some drivers for Windows (especially some wireless network
interface drivers) apparently do not, when running in promiscuous mode,
arrange that outgoing packets are delivered to the software that
requested that the interface run promiscuously; try turning promiscuous
mode off.
=== When I capture on Windows in promiscuous mode, I can see packets other than those sent to or from my machine; however, those packets show up with a "Short Frame" indication, unlike packets to or from my machine. What should I do to arrange that I see those packets in their entirety?
In at least some cases, this appears to be the result of PGPnet
running on the network interface on which you're capturing; turn it off
on that interface.
=== I'm trying to capture 802.11 traffic on Windows; why am I not seeing any packets?
At least some 802.11 card drivers on Windows appear not to see any
packets if they're running in promiscuous mode. Try turning promiscuous
mode off; you'll only be able to see packets sent by and received by
your machine, not third-party traffic, and it'll look like Ethernet
traffic and won't include any management or control frames, but that's a
list of cards supported with WinPcap] for information on support of
various adapters and drivers with WinPcap.
=== I'm trying to capture 802.11 traffic on Windows; why am I seeing packets received by the machine on which I'm capturing traffic, but not packets sent by that machine?
This appears to be another problem with promiscuous mode; try turning
it off.
=== I'm trying to capture Ethernet VLAN traffic on Windows, and I'm capturing on a "raw" Ethernet device rather than a "VLAN interface", so that I can see the VLAN headers; why am I seeing packets received by the machine on which I'm capturing traffic, but not packets sent by that machine?
The way the Windows networking code works probably means that packets
are sent on a "VLAN interface" rather than the "raw" device, so packets
sent by the machine will only be seen when you capture on the "VLAN
interface". If so, you will be unable to see outgoing packets when
capturing on the "raw" device, so you are stuck with a choice between
seeing VLAN headers and seeing outgoing packets.
== Capturing packets on UN*Xes
[[capprobunix]]
=== I'm running Wireshark on a UNIX-flavored OS; why does some network interface on my machine not show up in the list of interfaces in the "Interface:" field in the dialog box popped up by "Capture->Start", and/or why does Wireshark give me an error if I try to capture on that interface?
You may need to run Wireshark from an account with sufficient
privileges to capture packets, such as the super-user account, or may
need to give your account sufficient privileges to capture packets. Only
those interfaces that Wireshark can open for capturing show up in that
list; if you don't have sufficient privileges to capture on any
interfaces, no interfaces will show up in the list. See
mailing lists to see if anybody happens to know about the problem and
know a workaround or fix for the problem. In your mail, please give full
details of the problem, as described above, and also indicate that the
problem occurs with `tcpdump` not just with Wireshark.
=== I'm running Wireshark on a UNIX-flavored OS; why do no network interfaces show up in the list of interfaces in the "Interface:" field in the dialog box popped up by "Capture->Start"?
This is really link:#capprobunix[the same question as the previous
one]; see the response to that question.
=== I'm capturing packets on Linux; why do the time stamps have only 100ms resolution, rather than 1us resolution?
Wireshark gets time stamps from libpcap/Npcap, and libpcap/Npcap get
them from the OS kernel, so Wireshark - and any other program using
libpcap, such as tcpdump - is at the mercy of the time stamping code in
the OS for time stamps.
At least on x86-based machines, Linux can get high-resolution time
stamps on newer processors with the Time Stamp Counter (TSC) register;
for example, Intel x86 processors, starting with the Pentium Pro, and
including all x86 processors since then, have had a TSC, and other
vendors probably added the TSC at some point to their families of x86
processors. The Linux kernel must be configured with the CONFIG_X86_TSC
option enabled in order to use the TSC. Make sure this option is enabled
in your kernel.
In addition, some Linux distributions may have bugs in their versions
of the kernel that cause packets not to be given high-resolution time
stamps even if the TSC is enabled. See, for example, bug 61111 for Red
Hat Linux 7.2. If your distribution has a bug such as this, you may have
to run a standard kernel from kernel.org in order to get high-resolution
time stamps.
== Capturing packets on wireless LANs
=== How can I capture raw 802.11 frames, including non-data (management, beacon) frames?
That depends on the operating system on which you're running, and on
the 802.11 interface on which you're capturing.
This would probably require that you capture in promiscuous mode or in
the mode called "monitor mode" or "RFMON mode". On some platforms, or
with some cards, this might require that you capture in monitor mode -
promiscuous mode might not be sufficient. If you want to capture traffic
on networks other than the one with which you're associated, you will
have to capture in monitor mode.
Not all operating systems support capturing non-data packets and, even
on operating systems that do support it, not all drivers, and thus not
all interfaces, support it. Even on those that do, monitor mode might
not be supported by the operating system or by the drivers for all
interfaces.
*NOTE:* an interface running in monitor mode will, on most if not all
platforms, not be able to act as a regular network interface; putting it
into monitor mode will, in effect, take your machine off of whatever
network it's on as long as the interface is in monitor mode, allowing it
only to passively capture packets.
This means that you should disable name resolution when capturing in
monitor mode; otherwise, when Wireshark (or TShark, or tcpdump) tries to
display IP addresses as host names, it will probably block for a long
time trying to resolve the name because it will not be able to