On 2009-12-04, dkraut wrote:
I've been asked to find out if Wireshark has the ability to determine the
active number of connections at a given time? For example, If I perform
a capture of all traffic to/from our DB server from 3pm to 4pm, is there
anyway to tell how many active connections there were to the DB IP address
at 3pm, 3:15pm, 3:30pm, etc.?
Wireshark can't do this, but you can simply run the capture file through
Ostermann's tcptrace <http://www.tcptrace.org/> to produce a graph of
the number of open connections over time. The options would be something
like this:
$ tcptrace -n -xtraffic' -i5 -p1-1023 -C -O' capture_file
The -x invokes the "traffic" module of tcptrace, and that module's
options must be enclosed in quotes as shown so that they do not get
interpreted as options of tcptrace itself. In combination with xplot
<http://www.xplot.org/>, tcptrace is a fantastic tool for TCP analysis
and produces much better time-sequence graphs than Wireshark, amongst
other things.
The problem we're trying to solve here is that there appear to be far too
many connections to this server at certain times during the day and the
server admins believe that someone is attacking the server in someway and
have asked me to investigate for any anomalies
Half-open connections can also be graphed (with -H) and this might show
up the specific times of server overload quite well. tcptrace's traffic
module has usage help available by typing:
$ tcptrace -hxargs
Module traffic:
usage:
-xtraffic"[ARGS]" print info about overall traffic
module argument format:
-iS set statistics interval to S (float)
seconds, default 15.0
-pP include information on port P
-pP1-P2 include information on ports in
the range [P1-P2]
-p-P exclude information on port P
-p-P1-P2 exclude information on ports in the
range [P1-P2]
-pSPEC,SPEC commas chain together specs
-G generate all graphs
-A generate the 'active connections' graph
-B generate the 'bytes per second' graph
-C generate the 'opens and closes' graph
-H generate the 'halfopen connections' graph
-K generate the 'pure acKs/second' graph
-L generate the 'losses per second' graph
-O generate the 'open connections' graph
-I generate the 'instantaneous open
connections' graph
-P generate the 'packets per second' graph
-Q generate the 'idle (Quiet) connections'
graph
-R[MIN[-MAX]]generate the 'round trip time' graph
with args, ignore samples outside
MIN to MAX (in ms)
-T generate the 'total data' graph
-D[SECS] generate the 'long duration connection'
graph
default definition of 'long' is 60 seconds
-d enable local debugging in this module
Examples
-xtraffic" -p23" only port 23
-xtraffic" -p1-1023" only ports 1-1023
-xtraffic"-p1-1023,-10-20 -L -O" only ports 1-1023,
but exclude ports 10-20
With no ports specification, all ports are gathered.
With ANY spec, all ports are initially EXCLUDED
--
James Taylor