I am trying to setup a Filter (so my log files aren't massive) that will capture only incoming traffic. I have looked on http://wiki.wireshark.org/CaptureFilters but so far have been unable to find a way to do this. Does anyone know how?

Just as a side question, when logging to multiple files in Wireshark, can you view full packet information at a later time?

  • Side answer: As long as you dump out full frames (which is the default) you can view full packets at a later time. Commented Jan 9, 2012 at 23:00

5 Answers 5


you would want to only capture traffic that is destined for your host's IP:

dst host <your Ip>

Sorry, read that as display filter. the above has been corrected for CAPTURE filter syntax.

  • This would be perfect except our machines have large blocks of IP's assigned to them, and the traffic could be targetted at any of these. Commented Jan 9, 2012 at 18:25

Your request to capture only incoming traffic leads to some ambiguity. The word incoming may has at least two different meanings in networking.

The first meaning packets received by a particular interface/device is relatively simple. The answer Jeff provides is what you want. You basically just need to filter for packets which have an IP or MAC address that matches your network interface.

There is another common usage of incoming in networking as it relates to statefull firewalls. This usually all activity traffic initiated by a remote system. If this is what you actually want. All connections initiated by a remote system, and all packets related to those connections, then I believe you are out of luck. The last time I looked PCAP had no stateful matching ability at all. So if that is what you are looking for, then I believe you are pretty much out of luck.

  • 1
    There may be a way, at least for TCP connections: Find packets with SYN flag, without ACK flag, with the local machine's IP address as destination. Save those and then follow the TCP stream for each of them. Commented Feb 17, 2015 at 11:16

Because tcpdump filters are the capture filters, and can be passed through tshark or tcpdump as well to avoid running a GUI just for capture if you're reviewing later

[tcpdump] ether dst $YOUR_MAC_ADDRESS should cover most of what you want.

[tcpdump] ether src not $YOUR_MAC_ADDRESS would be broader. You may some DHCP stuff from your machine in there as well, but it ought not be very major.

Yes, you can save packets and inspect them in the future just as in live mode.

  • This may be the right answer if he is defining incoming as 'received', and not like how you would define it on a stateful firewall.
    – Zoredache
    Commented Jan 9, 2012 at 17:54
  • This sounds like it will be perfect. A lot of our machines are getting hit with a DDoS thanks to a program released that takes advantage of an exploit in some game servers (turns them into ddos zombies). Thanks! Commented Jan 9, 2012 at 18:13
  • Actually one other question. I have tried both of these in the Capture Filter (GUI Application) and could get neither to work. I get an "unknown ether host" error when I use "ether dst 2F178581-F429-4AD8-AC39-CD8785651EDB" Commented Jan 9, 2012 at 18:23
  • That isn't an ethernet mac address
    – Zoredache
    Commented Jan 9, 2012 at 18:33
  • @BrettPowell On windows, use the "phsysical address" field from ipconfig /all Commented Jan 9, 2012 at 19:05

You can use a capture filter with a network address instead of your machine's single IP such as "dst net". This would capture any packets being sent to through

Alternatively, you can use tshark to post-filter a capture file using -r ORIGINAL_FILE -w NEW_FILE -Y "display filters". In the display filters you would use "ip.dst==" to get the same data set as with the capture filter above.


Please stop this madness. It's very impractical to list the local host's mac/IP address every time you need this feature (not to mention the cases where these details can change while running the dump), and the pcap library has this facility already. You just have to use 'inbound' in the filter, and you'll only see the received packets on the interface, simple as that.

  • The PCAP docs say that only works for certain link layers, like Linux cooked Commented Sep 2, 2015 at 16:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .