[Coral-dev] Combining destination IPs with destination Ports
Faisal Khan
khan7 at llnl.gov
Fri Jul 16 17:09:24 PDT 2010
Thanks Jeff,
This looks like a simple solution, keying on the column number(s) in the
table. I guess it would be nice if CoralReef also has such a
flexibility. One can then combine the keys in the way they want, instead
of relying on using the explicitly declared keys, only some of which are
implemented. I understand that this may have some performance
implications but then cant we have both explicit as well as user
selected key implementations.
Faisal
On 7/16/2010 3:00 PM, Jeff Terrell wrote:
> D'oh...one correction below.
>
> On Fri, Jul 16, 2010 at 5:58 PM, Jeff Terrell<jeff.terrell at acm.org> wrote:
>
>> On Fri, Jul 16, 2010 at 4:36 PM, Faisal Khan<khan7 at llnl.gov> wrote:
>>
>>> I am having this problem and was hoping someone can point me in the
>>> right direction. Basically, I want to list destination IPs that have
>>> highest number of ports accessed in a trace.
>>>
>> Hi Faisal,
>>
>> I'm not sure how you would solve the problem using CoralReef
>> command-line tools, but my first thought is always to use standard
>> Unix command-line tools. Something like this:
>>
>> $ tcpdump -nnttr file.pcap 'tcp or udp' |
>> cut -d' ' -f5 | # select only the 5th word, the destination IP.port field
>> cut -d: -f1 | # strip off the trailing ':' character (not strictly necessary)
>> sort -u | # sort and remove duplicate IP.port combinations
>> cut -d. -f1-4 | # strip off the port field
>> uniq -c | # count how many occurrences of each IP
>> sort -n | # sort by number of occurrences of each IP
>>
> That last line should be:
>
> sort -n # sort by number of occurrences of each IP
>
> (i.e. without the trailing "|")
>
>
>> The idea is that you get all unique destination IP.port combinations,
>> and then remove the port field, and count how many of each destination
>> IP there is. It might take some thinking to wrap your head around
>> that logic, but I'm pretty sure it is correct.
>>
>> One other subtlety: you should set the LC_ALL environmental variable
>> to C (e.g. "export LC_ALL=C" on the command line). Otherwise, the
>> 'sort' command sometimes tries to be too clever, converting IP
>> addresses to numbers and thinking that "1.2.3.45" and "1.2.34.5" are
>> equal.
>>
>> Hope this helps,
>> -Jeff T.
>>
More information about the Coral-dev
mailing list