
View SMTP or POP3 traffic, reading emails off the wire.
View Telnet sessions, see passwords, commands entered and responses. View full HTTP session, seeing all headers and data for both requests and responses. Here are a few example use cases: Troubleshooting Network ConnectivityĮxamination of Application Layer Sessions (even when encrypted by SSL/TLS see below) Wireshark can be useful for many different tasks, whether you are a network engineer, security professional or system administrator. If you want to filter out all packets containing IP datagrams to or from IP address 1.2.3.4, then the correct filter is !(ip.addr = 1.2.3.4) as it reads “show me all the packets for which it is not true that a field named ip.addr exists with a value of 1.2.3.4”, or in other words, “filter out all packets for which there are no occurrences of a field named ip.addr with the value 1.2.3.4”.Examples to Understand the Power of Wireshark As an IP datagram contains both a source and a destination address, the expression will evaluate to true whenever at least one of the two addresses differs from 1.2.3.4. The reason for this, is that the expression ip.addr != 1.2.3.4 must be read as “the packet contains a field named ip.addr with a value different from 1.2.3.4”. Instead, that expression will even be true for packets where either source or destination IP address equals 1.2.3.4. Unfortunately, this does not do the expected. Then they use ip.addr != 1.2.3.4 to see all packets not containing the IP address 1.2.3.4 in it.
Often people use a filter string to display something like ip.addr = 1.2.3.4 which will display all packets containing the IP address 1.2.3.4. Using the != operator on combined expressions like eth.addr, ip.addr, tcp.port, and udp.port will probably not work as expected. Wireshark allows you to string together single ranges in a comma separated list to form compound ranges as shown above.