Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Security Software

What Network Sniffing Tools Do You Use? 539

network-nose asks: "I work as a Network Administrator in a 500 user manufacturing facility in southeastern Wisconsin. My job is to keep the company running as close to 100% of the time as possible while trying not to spend any money on up to date hardware and software. As of late, we have been having quite a few network problems that can only really be resolved by sniffing packets. I am wondering what tools the rest of you network guys and gals out there use in a corporate environment for analyzing packets. Of course, the more reasonbly priced the better, but I know you usually get what you pay for."
This discussion has been archived. No new comments can be posted.

What Network Sniffing Tools Do You Use?

Comments Filter:
  • Ethereal (Score:4, Informative)

    by Anonymous Coward on Wednesday April 07, 2004 @11:39PM (#8800166)
    That's it.
    • Re:Ethereal (Score:5, Informative)

      by G27 Radio ( 78394 ) on Wednesday April 07, 2004 @11:44PM (#8800210)
      Ethereal is my favorite. tcpdump is ok for quickly figuring out where packets are coming from, but Ethereal makes things a lot easier beyond that. For example, the ability to follow TCP streams is great for diagnosing problems. It works great in Linux and Windows, however I haven't tried it on other platforms.
      • Re:Ethereal (Score:5, Informative)

        by interiot ( 50685 ) on Thursday April 08, 2004 @12:13AM (#8800411) Homepage
        Tcpdump is definitely complementary to ethereal:
        • it's what runs underneath ethereal, so it's good to be aware of it
        • its filtering syntax is extremely flexible
        • it's lightweight and only needs text or file output, so you could run it on an iPaq or whatnot
        • you can record streams with tcpdump, move the log to another machine, and load it into ethereal [google.com] to do the packet analysis / stream reconstruction at a later point.
        • in library form (aka libpcap), lots of languages can hook to it, so you can easily do on-the-fly custom statistics calculations, instead of eating IO and disk space writing a huge log out and only processing it later. For example, even Perl + Net::Pcap [cpan.org] running on a pentium machine is fast enough to keep up with a T3.
        • Re:Ethereal (Score:5, Informative)

          by ComputerSlicer23 ( 516509 ) on Thursday April 08, 2004 @12:28AM (#8800483)
          Unless I missed something, Ethereal and tcpdump use the same library (libpcap), but tcpdump isn't the "underneath" ethereal. Ethereal is very good at breaking down any Ethernet Frame, where as TCP dump as far as I know, only deals with TCP/UDP/IP packets.

          Ethereal is my tool of choice. However, if you have a Linux router, there are a number of interesting tools you can use to monitor stuff that is crossing your routing points.

          iptraf is pretty interesting. If you can get that installed on critical points in your network you can watch traffic flows, and see who the major badwidth hogs are, and what services they are using. The one truely annoying this is that if you run it via an SSH session, it constantly counts SSH traffic it is generating. I wish it did a better job of accumulating UDP totals for me.

          Kirby

          • Re:Ethereal (Score:5, Informative)

            by CvD ( 94050 ) on Thursday April 08, 2004 @02:30AM (#8800939) Homepage Journal
            As far as I know you can install a filter on SSH traffic with iptraf. So it won't show up any more in any rates or tallies. The filter setup is a little obscure, but it seems to work.

            Cheers.
          • Re:Ethereal (Score:5, Informative)

            by Guy Harris ( 3803 ) <guy@alum.mit.edu> on Thursday April 08, 2004 @03:11AM (#8801083)
            Unless I missed something, Ethereal and tcpdump use the same library (libpcap)

            True.

            ...but tcpdump isn't the "underneath" Ethereal.

            True.

            Ethereal is very good at breaking down any Ethernet frame, where as TCP dump, as far as I know, only deals with TCP/UDP/IP packets.

            Ethereal has dissectors for more protocols than tcpdump does; however, tcpdump has dissectors for more than just TCP/UDP/IP (some protocols atop them, such as NFS, as well as non-IP-based protocols, including 802.11 management frames).

          • Re:Ethereal (Score:4, Informative)

            by rob_kg ( 768576 ) on Thursday April 08, 2004 @03:35AM (#8801144)
            Yep,

            tcpdump is good for two things:

            1) doing some fast checking of what's going.. small jobs
            2) reading the source to see how to use libpcap.. case example (people who made tcpdump also made libpcap)

            So which one is better.. the one with the more features (ethereal) or tcpdump? Depends on the situation..
      • Re:Ethereal (Score:5, Interesting)

        by MrBlue VT ( 245806 ) on Thursday April 08, 2004 @12:15AM (#8800425) Homepage
        I agree, Ethereal is a godsend. Made it easy to reverse engineer a protocol I needed to replicate in one of my projects.

        Only feature I wish it had would be the ability to ARP poison switches. Etherape has this ability and it is nice for listening on unmanaged switches.

        Otherwise, ethereal is a great product. Nice filtering and easy to follow streams. It also will do a lot of legwork for you and figure out what higher level protocol is being used over TCP.
      • Re:Ethereal (Score:4, Insightful)

        by bee-yotch ( 323219 ) on Thursday April 08, 2004 @12:25AM (#8800466) Homepage
        They're both free too. I'm honestly a little surprised that a network admin (as the author claims to be) would post this question.

        Although I've never used ethereal on windows, it works great on linux. And you can even use tethereal in your scripts since it's the command line based version of ethereal.
        • Re:Ethereal (Score:5, Insightful)

          by ComaVN ( 325750 ) on Thursday April 08, 2004 @01:48AM (#8800764)
          I'm honestly a little surprised that a network admin (as the author claims to be) would post this question.

          I'm not. It's not like you need to know the secret handshake before you can become a network administrator. In a lot of places, it just means you're the guy who knows the most about it.
          • Re:Ethereal (Score:5, Funny)

            by whookey ( 102450 ) on Thursday April 08, 2004 @03:13AM (#8801089)
            It's not like you need to know the secret handshake before you can become a network administrator.

            Actually, you do [homebrew.net].
          • Re:Ethereal (Score:5, Interesting)

            by necronom426 ( 755113 ) on Thursday April 08, 2004 @05:20AM (#8801469)
            Agreed.

            My first job was to look after a Novell server and a network of 30+ machines with no training apart from what I could pick up along the way and from my experience with PC's. Another job I was looking after a Unix box for the first time and didn't know how to do much.

            Recently I got a free label printing program from a web site for my Mother to use at work (she was hand writing 100's of addresses on envelopes that were printed from a computer!) The "computer guy" at the company said they couldn't do labels (even though they use Word) so I go her this free one. I had to explain to him how to find a directory on the PC! They do have a network and the main computer guy who set it up was in another country, but they had put this other person in charge of the PC's and he didn't know anything about them. Another time I had to tell him how to find the size of a hard drive...
        • Re:Ethereal (Score:3, Interesting)

          by lanswitch ( 705539 )
          I used ethereal on linux, windows 98, 2000 and xp pro. it works equally well on all platforms. libpcap for windows is called winpcap.
      • "Sniffing" for HTTP (Score:5, Interesting)

        by jtheory ( 626492 ) on Thursday April 08, 2004 @01:48AM (#8800760) Homepage Journal
        I used Ethereal for a while, sniffing simple HTTP traffic, sorting out cookie issues and so on (I'm not a netadmin -- mostly web app development)... and it was darned handy.

        Of course, when I found the live http headers plugin [mozdev.org] for Mozilla it was exactly what I needed -- just the headers, scrolling by realtime, and no more sniffing needed.

        Yeah, this is slightly OT (which may be good in a discussion that seems to be a long string of ethereal links, all +5) -- but I wanted to point out to those people out there who think they "need a sniffer" -- unless you're a network admin, you probably don't.

        [Plus the Futurama quotes in the /. headers are entertaining]
        • by PaschalNee ( 451912 ) <pnee@nosPam.toombeola.com> on Thursday April 08, 2004 @04:08AM (#8801255) Homepage
          unless you're a network admin, you probably don't.

          Agree with the above. Sniffing will also not get you anywhere if you are trying to see what happening on a https stream as all you'll see is the encrypted traffic.

          If you are stuck with IE as a browser for whatever reasons there are two tool comparable to live http headers plugin for Mozilla.
          • HTTP Watch [simtec.ltd.uk] - used it and love it. Also the company are open to product improvement suggestions
          • HTTPLook [httpsniffer.com] - Have not used it myself but have customers who have
    • Re:Ethereal (Score:3, Interesting)

      by Anonymous Coward
      Also, when in the initial grip of a spreading Windows worm or what have you, I have a curious attachment to running tethereal in a window (rxvt say). It's surprising how much sense you can make out of what flies by, and you can scroll back and/or pause the flow as necessary to record individual IPs or the like. Ethereal provides the same data, but don't knock the immediacy of the text-only version. To say nothing of remote administration.

    • Re:Ethereal (Score:3, Informative)

      by Anonymous Coward
      I use pflog on my openbsd box. I am not too smart when it comes to this kinda stuff so I installed hatchet [dixongroup.net] and it is working like a charm.
    • Re:Ethereal (Score:3, Informative)

      by Mr Pippin ( 659094 )
      Agreed. However, this mostly depends on you having at least some managed switches that can do port mirroring. Of course, that assumes you are using switches.
    • Link (Score:5, Informative)

      by kuwan ( 443684 ) on Thursday April 08, 2004 @12:14AM (#8800419) Homepage
      Here's a link. [ethereal.com]

      I haven't used it for a while (College) but it was the most impressive tool I've ever used for Network Sniffing. It's available for pretty much every major platform.
    • Driftnet! (Score:3, Informative)

      by Nailer ( 69468 )
      Cause its fun! [ex-parrot.com]

      Red Hat / Fedora packages at Dag's apt repository [wieers.com]
    • Re:Ethereal (Score:4, Informative)

      by wellard1981 ( 699843 ) on Thursday April 08, 2004 @02:59AM (#8801044)
      Another tool that compliments Ethereal, is EtherApe [sourceforge.net]. It's a graphical network monitor that tells you what's talking to what. Useful to find out what's sucking up most of the bandwidth.
    • RMON (Score:5, Informative)

      by rikboven ( 74223 ) on Thursday April 08, 2004 @04:52AM (#8801397) Homepage
      Ethereal is a really nice application. However, it has it's limits.

      RMON (see RFC 3577) or Remote Monitoring is a set of SNMP MIBs which you allow you to gather traffic information (including packet captures) from network elements itself. You do not need to have a computer to run ethereal, snoop or tcpdump.

      The switch/router/probe will collect the info for you, automatically.

      Virtually all switches support (mini-)RMON. Furthermore you have (full) RMON probes which you can install at various places in the network.

      The flexibility of RMON probes is much larger then ethereal. However, I often use ethereal to look at the packet captured using RMON.

      Some info:
      http://www.ietf.org/html.charters/rmonmib-c harter. html
      http://www.cisco.com/univercd/cc/td/doc/cisi ntwk/i to_doc/rmon.htm

      my 2 cents

      Rik
    • Re:Ethereal (Score:3, Insightful)

      by Malc ( 1751 )
      Ethereal is excellent. Under Windows it doesn't work with dial-up adapters, which means it's useless if you're trying to inspect stuff you're sending over PPTP VPN tunnel. That's not really Ethereal's fault though - it's pcap stuff and issues caused by Windows itself. The UI sucks big time though.

      MSFT had me download a time limited version of Netmon, which has more features than the version that ships with Windows NT/2000 Server. It seemed to be way better than Ethereal. But beggars can't be choosers
  • Hrm... (Score:3, Funny)

    by Smitedogg ( 527493 ) on Wednesday April 07, 2004 @11:40PM (#8800180) Homepage

    My job is to keep the company running as close to 100% of the time as possible while trying not to spend any money on up to date hardware and software

    Are you trying to steal my job?
  • Sniffing Tools... (Score:5, Informative)

    by danielrm26 ( 567852 ) * on Wednesday April 07, 2004 @11:40PM (#8800181) Homepage
    I tend to use tcpdump when I am watching a box using a specific filter and expecting very little traffic, i.e. when I want to know if a certain host is communicating on some arbitrary port or protocol. Ethereal I use when I want to capture tons of data and sift through it later (although you can do this with tcpdump and import it into ethereal as well).

    Tcpdump is generally considered the superior learning tool, while ethereal is considered the more refined choice. In other words, ethereal does a lot of the work for you, while you are getting pretty raw stuff when you use tcpdump.

    In general, tcpdump and ethereal are the tools of choice if you don't have tons of money to spend. Fancy looking enterprise applications essentially do the same thing as the apps mentioned above -- they just add a nice GUI to the mix.
    • Re:Sniffing Tools... (Score:3, Informative)

      by AftanGustur ( 7715 )

      I tend to use tcpdump when I am watching a box using a specific filter and expecting very little traffic,

      Having a fancy machine with X running isn't always an option. We have a old 200Mhz Celeron machine attached to our 8Mb Internet link (With a Network interface that doesn't have a IP) and that machine can captured whatever traffic I am looking for with just tcpdump.

      There are options to exclude and include whatever traffic you want..

      For example, we had a problem with a governament agency in Canada

  • Ethereal (Score:5, Informative)

    by stevens ( 84346 ) on Wednesday April 07, 2004 @11:41PM (#8800182) Homepage
  • Ethereal. (Score:5, Informative)

    by Shoten ( 260439 ) on Wednesday April 07, 2004 @11:41PM (#8800183)
    I've used Sniffer Pro, Observer Pro, and Ethereal, and I always, ALWAYS prefer Ethereal. It's free, it's open source, and it's hands down the best of the lot. Sniffer Pro may have the pretty gauges and the map that shows what's talking to what (utterly useless, IMHO), and Observer Pro comes with buttloads of tools for things like SNMP configuration and whatnot, but as a sniffer, nothing has ever beated Ethereal in ease of use, capability, or packet decodes.
    • Re:Ethereal. (Score:4, Informative)

      by XaXXon ( 202882 ) <xaxxon.gmail@com> on Wednesday April 07, 2004 @11:45PM (#8800215) Homepage
      Etherape [sourceforge.net]is a free pretty picture of who's talking to whom and what language (protocol) they're talking.

      Works great.
      • Re:Ethereal. (Score:5, Informative)

        by interiot ( 50685 ) on Wednesday April 07, 2004 @11:59PM (#8800327) Homepage
        The best text version of etherape is iftop [ex-parrot.com], in case you don't have X handy (or if you just have a spare dumb terminal and want your pad to look more geeky).

        The best web-based version is ntop [ntop.org], which is another one of those "Oh my god, this is SOOO cool" tools, similar to ethereal. It lets you drill-down through a fair bit of data, and pages load fast and it's virtually real-time, so you can bang on the reload key and see a similar sort of data that etherape/iftop would give you. It has a daemon piece and a CGI piece, so installing it via a package (eg. apt-get install ntop [google.com]) may be much prefered to installing it by hand.

  • Ethereal! (Score:3, Informative)

    by FsG ( 648587 ) on Wednesday April 07, 2004 @11:42PM (#8800192)
    Ethereal! [ethereal.com] It's a very high-end multi-platform sniffer with numerous features, as well as excellent GUI and command-line interfaces that are a joy to use. It has all the features you'd expect in high-end commercial network sniffers, and it's free!
  • zasniff (Score:3, Informative)

    by Hemos on ( 468214 ) on Wednesday April 07, 2004 @11:42PM (#8800195)
    Two college kids wrote an interesting interpretive packet sniffer called ZAsniffer (I gather the Z and A are from their respective last names).

    I found it to be quite nice for monitoring telnet usage and I use it a lot.
  • by Fallen Kell ( 165468 ) on Wednesday April 07, 2004 @11:43PM (#8800198)
    Personally I prefer Solaris's snoop. Linux has built in sniffers as well. And they are free (as in GPL).
  • by ObviousGuy ( 578567 ) <ObviousGuy@hotmail.com> on Wednesday April 07, 2004 @11:45PM (#8800213) Homepage Journal
    What kinds of problems can only be figured out by sniffing packets? Rogue programs? Unauthorized porn downloads? Illegal P2P activity?

    On a properly configured network, where are the points of failure that can't be figured out with any other method besides packet sniffing? If these problems exist, would it be worthwhile to incorporate functionality directly into the networking software to watch for these problems and fix them automatically?
    • by timmarhy ( 659436 ) on Wednesday April 07, 2004 @11:52PM (#8800277)
      i find packet sniffing to be the fastest way to find problems. I just use tcpdump and take a look at the traffic. look at applications does you know good since they never tell you exactly what they are sending out. using tcpdump i found a major issue in one of our applications ( was reading a database table in an infinte loop) this had gone unoticed for years, and no one ever though why the network was so so congested
    • by realdpk ( 116490 ) on Thursday April 08, 2004 @12:07AM (#8800378) Homepage Journal
      It can come in handy when you're trying to track down a problem with a piece of closed-source software, and the developers are no help. Or a piece of open-source software that is bugging out with certain input from certain IPs.

      Sometimes it's not practical to hack sniffing in to the application, when you can just do 'tcpdump -Xns 16384' any time.
    • the guy mentions that he works for a manufacturing plant. Who knows what CNC mills a EFDs pass accross the network. He's probably debugging the controller software for various equipment that they have.
    • One case I solved was when a client couldn't talk to the server. Ran snoop (a packet sniffer that comes with IRIX) to see what the network traffic looked like. Turned out the client was being DoSed by multicast traffic. Stopped the box spewing the multicast, and everything was fixed. Not sure how I would've figured that out without the sniffer.

      I could give dozens of other examples, but others have already done that. Let's just say I'm sort of a sniffer zealot. Any time I'm seeing network strangeness

    • Most things can be diagnosed in other ways, but a good packet sniffer can make it easy to check a whole bunch of things at once. For example, you plug in a computer and try to print to the network printer. Nothing happens. There are about a dozen things that could be wrong with your configuration, and they're all in different places, and not necessarily easy to see at a glance whether they're right. With a packet sniffer, you can see pretty trivially where things went wrong, even if it's something complicat
    • by blate ( 532322 ) on Thursday April 08, 2004 @02:27AM (#8800925)
      I'm not a net. admin either, I'm a software engineer.

      When you're writing network software, or software that uses the network, you often run into wierd and hard-to-debug problems. The task of finding the cause of these bugs if often expedited by looking at the packets on the wire.

      For example, you think you're sending a particular pattern of bits (1's and 0's) -- that's what you think you coded in your program. But for some reason, the other end doesn't understand your packets. You could put a bunch of debugging statements in your program, recompile, and hope you can see the problem, or, you can simply sniff the packets and see what's really going out on the wire.

      As another person mentioned, sniffing is also useful for reverse-engineering closed-source software that uses the network. That's how those guys implimented clients for AIM -- they just figured out what messages to send back and forth. (Sadly, AOHell decided to change the protocol every 2 minutes so the open-source clients don't work very well.)

      As far as security, sniffing or analyzing traffic is one of best tools available to see what's passing through your network. It's analagous to the security cameras in the local stop-and-rob (gas station) or in a casino -- they let the security guys watch what's going on, review it after the fact, and find/identify the bad guys.
  • sniffing, etc. (Score:5, Informative)

    by bendsley ( 217788 ) <moc]tod[eibaolf]ta[darb> on Wednesday April 07, 2004 @11:45PM (#8800214) Homepage
    Hands down, Fluke.

    http://www.flukenetworks.com/us/default.htm
  • Great tools. (Score:5, Informative)

    by bwhaley ( 410361 ) <bwhaley@[ ]il.com ['gma' in gap]> on Wednesday April 07, 2004 @11:46PM (#8800231)
    Ahh, the staples of my diet. What my roommates don't know won't hurt 'em ;-)
  • Simple.... (Score:4, Funny)

    by QuasiCoLtd ( 727325 ) on Wednesday April 07, 2004 @11:48PM (#8800241)
    .....an Oscilliscope. Read the bits off the wire. You'd be suprised what an Oscilliscope in the hands of a VERY well trained person can accomplish.
  • I use ettercap (Score:5, Informative)

    by weekendwarrior1980 ( 768311 ) on Wednesday April 07, 2004 @11:48PM (#8800246) Homepage
    From their website:
    Cool Features: Characters injection in an established connection : you can inject character to server (emulating commands) or to client (emulating replies) maintaining the connection alive !!
    SSH1 support : you can sniff User and Pass, and even the data of an SSH1 connection. ettercap is the first software capable to sniff an SSH connection in FULL-DUPLEX
    HTTPS support : you can sniff http SSL secured data... and even if the connection is made through a PROXY
    Remote traffic through GRE tunnel: you can sniff remote traffic through a GRE tunnel from a remote cisco router and make mitm attack on it
    PPTP broker: you can perform man in the middle attack against PPTP tunnels
    Plug-ins support : You can create your own plugin using the ettercap's API. List of available plugins
    Password collector for : TELNET, FTP, POP, RLOGIN, SSH1, ICQ, SMB, MySQL, HTTP, NNTP, X11, NAPSTER, IRC, RIP, BGP, SOCKS 5, IMAP 4, VNC, LDAP, NFS, SNMP, HALF LIFE, QUAKE 3, MSN, YMSG (other protocols coming soon...)
    Paket filtering/dropping: You can set up a filter that search for a particular string (even hex) in the TCP or UDP payload and replace it with yours or drop the entire packet.
    OS fingerprint: you can fingerprint the OS of the victim host and even its network adapter
    Kill a connection: from the connections list you can kill all the connections you want
    Passive scanning of the LAN: you can retrive infos about: hosts in the lan, open ports, services version, type of the host (gateway, router or simple host) and extimated distance in hop.
    Check for other poisoners: ettercap has the ability to actively or passively find other poisoners on the LAN
    Bind sniffed data to a local port: you can connect to that port with a client and decode unknown portocols or inject data to it (only in arp based mode)
    Port Stealing: a new method to sniff on switched LAN without ARP poisoning...
    http://ettercap.sourceforge.net/
  • Fluke meters (Score:4, Informative)

    by grub ( 11606 ) <slashdot@grub.net> on Wednesday April 07, 2004 @11:48PM (#8800249) Homepage Journal

    we have been having quite a few network problems that can only really be resolved by sniffing packets.

    By "packets" I hope you mean "Ethernet frames". Looking only at layer 3+ information can be useless for many network problems. Anyhow, brain dump:

    Do your switches and LAN router(s) have statistic counters (# of frames of various sizes, undersided/oversized frames, flooded frames, deferred frames, etc)?

    If you don't have a LAN router for 500 users: why?

    What's the most amount of hops (switches) your packets will travel from one end of the LAN to the other? Any more than 3 and you should be putting a LAN router in there (ideally)

    Do you have hubs? If so, destroy them all right now. Hubs are pure, unadulterated evil.

    My point of that is simple: not all LAN problems are computer problems. Looking at the IP traffic doesn't always cut it. Re: the subject: At my workplace we have a nice LAN meter from Fluke [fluke.com]. They aren't cheap but if you have that many users your company should damn well pay for the right tools for you to do your job.

    • Re:Fluke meters (Score:3, Insightful)

      by blate ( 532322 )
      >> Hubs are pure, unadulterated evil.

      I disagree. They're great for sniffing packets. If you've got an ethernet-connected device that doesn't have a sniffer onboard, and you want to see what the heck it's doing, a hub is a handy tool to have on your shelf. I use them quite often to intercept traffic while debugging software and hardware at work.

      They also allow you to run a trace on a separate machine, so as not to interfere with the unit-under-test.

      Yes, you could use a monitor-port, but that assumes
  • by The AtomicPunk ( 450829 ) on Wednesday April 07, 2004 @11:49PM (#8800258)
    Like everybody else has said, you have those two, you're covered.

    However, I find myself frequently using tcpdump to capture data, then downloading it and analyzing it in Ethereal on my workstation later.

    tcpdump -w myfile.dump -s 2000
    • by Autonin ( 322765 ) on Thursday April 08, 2004 @12:14AM (#8800418)
      Actually -s 0 is better.

      10/100BaseT Ethernet, which pretty much everyone uses these days, is limited to 1500 snaplen. But the good old FDDI was a whopping 4500!

      With -s 0, it basically means "All" - you don't have to think about what transmission medium you're using.

      I also usually name my packet captures with extention *.pcap, and just make Ethereal be the default *.pcap file handler.

      I'll also use tcpdump to whittle my pcaps down. Say I capture for a long time and end up with a 500MB+ pcap. Opening this in most any workstation with Ethereal will cause you to wait awhile, and could actually crash your box (yay for WinXP pre-fetch!).

      So when I've found a particular port or host I want to extract from a stream to make the pcap more managable, I'll do something like this:

      tcpdump -s 0 -r infile.pcap -w outfile.pcap host x.x.x.x and port xxx

      Sometimes, I'll use tethereal instead to go a little deeper. tethereal is ***SLOW*** compared to tcpdump, but the granularity is worth it sometimes. Just set it going, and go get a coffee or something.

      When examining a capture of some malware trying to spread, often times it will SYN several hundred machines without getting a reply. Trolling through these can be a pain. But by using tethereal, you can make what I call "Jesus" pcaps (no SYN's). To make it complete, I also filter RST's like so:

      tethereal -r infile.pcap -w outfile -R "tcp.flags.syn==0 && tcp.flags.reset==0"

      There is a way to do this in tcpdump, but it's much more complicated. Besides, you need the break anyway, right? :)

  • by Lord Kano ( 13027 ) on Wednesday April 07, 2004 @11:49PM (#8800259) Homepage Journal
    Of course, the more reasonbly priced the better, but I know you usually get what you pay for.

    This is Slashdot, you'll lose an eye here faster than you will in a barfight for saying that free (beer and speech) GNU/Linux isn't better than costly (money and your soul) Windows!

    LK
    • Ironically, computer programs are the one area in life where free things are often better than expensive alternatives. Best server OS? BSD. Best Web server? Apache. It has something to do with Eric Raymond's theory of programming culture as a gift-based society where members grow in stature based on what they freely give to the community.

      It has something to do with Native Americans and Potlatch dinners and stuff, but to be honest it was years ago when he explained it to me and I was half-drunk at the

  • dsniff, ntop (Score:5, Informative)

    by bahamat ( 187909 ) on Wednesday April 07, 2004 @11:49PM (#8800264) Homepage
    Don't forget the eternally useful.
  • Argus (Score:5, Informative)

    by Squeamish Ossifrage ( 3451 ) * on Wednesday April 07, 2004 @11:50PM (#8800267) Homepage Journal
    I was recently clued-in to the existence of Argus [qosient.com].

    It's really good for summarizing flow information in quasi-realtime, so it fills the niche of being more detailed than NetFlow, but more big-picture than tcpdump or ethereal.
    • Re:Argus (Score:4, Informative)

      by 2starr ( 202647 ) on Thursday April 08, 2004 @01:27AM (#8800664) Homepage
      Take a look at NEXVU [nexvu.com]. It also does flow correlation in quasi-realtime, but is probably a good bit friendly to use. It's got some nice network overview views that make finding a lot of problems pretty trivial. Some nice reports too.

      It's not open source or free, but is a really useful tool at work, IMHO.

  • by MavEtJu ( 241979 ) <[gro.ujtevam] [ta] [todhsals]> on Wednesday April 07, 2004 @11:51PM (#8800273) Homepage
    As of late, we have been having quite a few network problems that can only really be resolved by sniffing packets.

    What kind of problems are you talking about? On ethernet level? On IP level? On application level?

    They all have different approaches, and all have different tools.
  • ngrep (Score:3, Informative)

    by G27 Radio ( 78394 ) on Wednesday April 07, 2004 @11:52PM (#8800279)
    ngrep is pretty handy if you like grep and want to scan network traffic. from their website: [sourceforge.net]

    ngrep strives to provide most of GNU grep's common features, applying them to the network layer. ngrep is a pcap-aware tool that will allow you to specify extended regular or hexadecimal expressions to match against data payloads of packets. It currently recognizes TCP, UDP and ICMP across Ethernet, PPP, SLIP, FDDI, Token Ring and null interfaces, and understands bpf filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.


  • by LinuxParanoid ( 64467 ) * on Wednesday April 07, 2004 @11:52PM (#8800284) Homepage Journal
    I use tcpdump UNIX-side, and Ethereal Windows-side. Personally? I find Ethereal hard to use, but it gets the job done. I've traced down bugs in OpenBSD TCP stacks with it on my production servers. I've tried half a dozen other packages but they didn't add enough value to make them worth trying to hit my boss up for cash.

    To install Ethereal, you will need to download and install the low-level WinPcap [polito.it] driver.

    And you may find the Ethereal packet analysis plug-in Packetyzer [networkchemistry.com] helpful; sometimes reading raw logs gets a bit annoying.

    --LP
  • My tools (Score:4, Funny)

    by skraps ( 650379 ) on Wednesday April 07, 2004 @11:53PM (#8800289)
    I sniff with Olfactory 1.0.
  • Sniffer Pro (Score:5, Informative)

    by fishwaldo ( 14980 ) <justin@NoSpaM.dynam.ac> on Wednesday April 07, 2004 @11:55PM (#8800302) Homepage
    While it probably does suit the poster, I have to say for network diagnostics, Sniffer Pro is awesome. With the right network cards, it goes right down to the network layer, pulling out collision stats etc, and can even go and setup your switches for monitoring using rmon.
    Got wan problems, Sniffer can work with a Y cable and hardware decoder to watch your WAN.
    They even have long term trending and reporting tools. Its maybe the one tool that Network Associates does right.

    Ethereal and TCPDump are good for protocol analysis, but most network problems I've delt with are not really at the application layer, but more the pysical layer. (Dodgy Network Cards, Flat network designs with hundreds of hosts, causing your collision rate to go through the roof etc)

    The other thing that I like about sniffer, is its made for people that might not have degree's in network analysis. Its got that Expert System. It will throw at you all the errors it finds, and is good enough to tell you what those errors means.

    Lastly, The export feature is great. Does my boss want to know what is the biggest talker on the network, Let sniffer run for a few hours, export to excell, and I can give him the top 10/20/50, I can break it down further by protocol or application, and can even tell him who the partners are.

    I know there are other tools out there that can do all this, (ntop, ethereal, tcpdump, rrd's) but thats exactly my point. They are different tools, they don't work together, and imho, none of them are true network diagnostic tools.

    I'm Ex NAI employee btw, so maybe a bit biased, but I still use Sniffer (legit copies) to this day. There are only a few reasons why I still have a windows drive for my laptop, and Sniffer is no. 1)
  • my tools.... (Score:3, Informative)

    by discogravy ( 455376 ) on Wednesday April 07, 2004 @11:55PM (#8800309) Homepage
    dsniff [monkey.org] and ethereal. If you're talking windows, just install cygwin and you'll be able to build all your own tools from source. doesn't get cheaper than Free.
  • by billstewart ( 78916 ) on Wednesday April 07, 2004 @11:57PM (#8800318) Journal
    One of the common network administration problems that software tools aren't very good at is finding where wires go when they're behind furniture or walls. Wires are pretty much like string, and my cats like to chase string, so I send them out to chase the wires, listen for the thumping noises, and see where the cat comes out. Doesn't work every time, and sometimes they'd rather chase mice than wires, but one of my cats really like chomping on RJ45 jacks, so if I suspect that a problem is related to an unplugged RJ45, he's the one for the job.
  • by honold ( 152273 ) on Wednesday April 07, 2004 @11:59PM (#8800335)
    analyzer [polito.it] is a native win32 app that is directly associated with winpcap [polito.it], the packet capture architecture on which most win32 sniffing-type freeware depends.
  • snort (Score:5, Informative)

    by circletimessquare ( 444983 ) <circletimessquar ... m minus language> on Thursday April 08, 2004 @12:02AM (#8800354) Homepage Journal
    http://www.snort.org/
  • Packetyzer (Score:4, Informative)

    by ktakki ( 64573 ) on Thursday April 08, 2004 @12:02AM (#8800359) Homepage Journal
    I use tcpdump on Mac OS X and Linux/Unix, but when I'm at a client site and all I have is my WinXP laptop, Packetyzer [networkchemistry.com] is my sniffer of choice. One of my cow-orkers swears by Ethereal [ethereal.com], but it's all good.

    k.
  • by porky_pig_jr ( 129948 ) on Thursday April 08, 2004 @12:11AM (#8800401)
    I'm sure you are going to get plenty of responses like 'Snoop', 'Tcpdump', 'Ethereal', etc. The problem is that those tools are sniffers, and you have to perform quite extensive analysis to figure out what's wrong with network, just from the packet trace. Been there, done that.

    A classic 'Sniffer' from Network General (which is currently 'Network Associates' attempts to perform some rudimentary analysis (which is called 'Expert whatever ...). It does some interesting analysis, if you can get it - get it!

    If you are interested in pin-pointing the reason why some distributed applicaiton doesn't run well on your network, by all means get OPNET Application Doctor. it is fairly expensive tool, but this is probably the best you can get. Used it and love it.
  • by MajorDick ( 735308 ) on Thursday April 08, 2004 @12:11AM (#8800402)
    Well I use my own special homemade Network sniffer, let me explain it, its a BIG Rubber nose on a BIG Stick with cat 5 hanging out the nostrils. It works GREAT Walk into someones office with that and they start rambling about all the programs they are running , have run, could run, and want to run, MOST likley out of fear of what you are going to do with the rubber nose on the stick, or maybe just because they are scared someone actually spent the time and built it.
  • Along similar lines (Score:5, Interesting)

    by lewko ( 195646 ) on Thursday April 08, 2004 @12:11AM (#8800404) Homepage
    Although only useful for fun, and not serious network analysis, have a play with Etherpeg [etherpeg.org]

    EtherPEG works by capturing unencrypted TCP packets off your local network, collecting packets into groups based on TCP connection (determined from source IP address, destination IP address, source TCP port and destination TCP port), reassembling those packets into order based on TCP sequence number, and then scanning the resulting data for byte sequences that suggest the presence of JPEG or GIF data.

    Or in other words, fire it up, plug in a data projector and watch everyone's porn. Interesting side-effect: It makes (most) people a lot more careful what they browse if they know the results will be displayed for everyone's amusement. Mercifully, it's also a lot less likely these days to see The Goatse flying across the screen.

  • LanScaper (Score:5, Informative)

    by torklugnutz ( 212328 ) on Thursday April 08, 2004 @12:25AM (#8800465) Homepage
    I would advise you to get a LanScaper from Test-Um Inc. [test-um.com] Retail is $419, shopping on Froogle will save you $70 or so. Anyway, the benefit of this device is that it will tell you all sorts of things about your infrastructure that any OS based tool will not. A defective cable, for instance, might work 80% of the time, maybe even more, but will lead to corrupt data (which is messy when you're dealing with some big database or something). This tool will weed out bad cables and links pretty quick. You can also find out length of runs, do pings, and many many other things. Totally worth its' weight in gold. (Which is about what it costs)
  • by jafo ( 11982 ) on Thursday April 08, 2004 @12:36AM (#8800519) Homepage
    I haven't worked with it yet, but I keep threatening to set up Argus [qosient.com]. Argus is nice because it logs packet headers so it can answer questions like "How long was it taking to get SYN ACKs back last Friday between 5:02 and 5:05am", "What was all this traffic yesterday morning at 8am", etc.

    SmokePing, which uses rrdtool as a backend, is a great tool for graphically displaying ping informaiton.

    Netsaint is very good for monitoring systems and networks and letting you know ASAP when there's a problem. It can also use rrdtool to generate graphs of packet loss and ping latency.

    All of the above are things that will give you current as well as historic information. Current information is good, but historic information is incredibly important. Trending is the obvious thing, allowing you to predict future use to some extent. More importantly, it lets you examine things that happened recently but aren't currently happening, and to see recurring issues.

    Recently, our local Internet cooperative was having problems where one of the upstream connections was going into very high packet loss and dropping it's BGP peer. We keep fairly high resolution traffic statistics through ganglia, another rrdtool based network system. That along with the RRD CGI grapher allowed us to create custom graphs of traffic with very high resolution, for days and weeks past, overlaying multiple sources.

    Once we did that, it became obvious that every time we ran into these problems, one of our members was hitting the line somewhat hard. It wasn't hard enough that it pegged the line from a bandwidth standpoint, but it apparently was hard enough that it caused some part of the network to experience extremely high packet loss.

    That was definitely a case where having the right tool allowed us to track down a fairly hard to see problem. Because our line was not at all saturated, we spent a lot of time looking for things like bad cables, ports with lots of accumulating errors, etc...

    Sean

  • options (Score:4, Informative)

    by Wouter Van Hemel ( 411877 ) on Thursday April 08, 2004 @01:03AM (#8800592) Homepage

    hunt (sniffer, spoofer, ... perhaps more handy in blackhat situations or to sniff ascii services)
    tcpdump (simple packet dumper)
    netwatch (console tool to monitor connections etc)
    ethereal (graphical traffic analyser - pretty easy to use)
    snort (IDS, probably better for aimed searching)

    ... and whatever firewall-software you use - it probably has LOG'ing targets, which might be handy if you know what you are looking for.

    These are the programs I have used in the past (and some others like netcat and netgrep, but these probably don't come in handy for what you want to do). Be careful that whatever daemon you run, doesn't get you into trouble - although these are security-programs, they occasionally have security bugs themselves. It would feel stupid to be compromised because of the very program that's supposed to aid in fighting hackers.

    Also remember some of these tools can fill up your drives in seconds, if you're not careful. I once had that problem, due to a typo, and it took a few days before I realised. Ofcourse, you miss anything you would want to have logged during that time...

    I don't really know any commercial tools. And I don't think I'll ever need one... Unix/Linux systems have lots of net tools, it's probably one of the best represented categories.

  • Sniffing (Score:3, Funny)

    by JWSmythe ( 446288 ) * <jwsmythe@nospam.jwsmythe.com> on Thursday April 08, 2004 @01:43AM (#8800737) Homepage Journal
    Actually, you sound like a kid who just got a job at a company who has 500+ employees, and wants to sniff their traffic.

    You'll learn and get caught. But who am I to stop you from a life experience. :)

    ethereal is great. It's proven to be lots of fun. :) tethereal is great too (comes with Ethereal). tcpdump is the grand-daddy of all packet sniffers, so it's kinda handy to know how to use it.

    For wireless, I use Wellenreiter and Kismet.

    Sitting in a major Las Vegas hotel, only a few floors up from the casino, I turned on my laptop, hoping to find an access point I could get online with (damned hotel didn't provide Internet access). I heard two AP's, and caught a couple IP's going by. I assigned myself an IP which appeared to not be used, and fired up ethereal.

    I saw text for several of the casino machines going by. It was the text to be updated to the displays, including windows paths to where the files originated from (I believe). It was all in plain text. I noted down what I saw for a few minutes, shut down the laptop, and proceeded to lose for the rest of the night in the casino. Hey, that's what Vegas is for, right? :)

    After I got home, I dug around for something resembling an admin contact at the casino, and advised him of what I saw. It would have probably been pretty easy to push my own updates to the machines. What would I say though?

    "Gambing is an addiction, quit now."
    "This game is rigged, move on."
    "This is the droid you are looking for."
    "With a 97% chance of losing, did you really want to play this game?"

    or, I guess

    "I'm a spiffy keen elite haxor type person, props to my homeyz" haha

  • by blate ( 532322 ) on Thursday April 08, 2004 @02:16AM (#8800882)
    I guess I'm oldschool, but I still use tcpdump for most day-to-day things. It's handy, it's fast, and it runs on just about every OS (including Windows (google for windump)). The output is ugly, but once you get used to it, you hardly notice.

    When I really need to analyze a stream or set of streams, or I'm going to be staring at packets for more than about 10 minutes, I switch to ethereal. Again, it's free, runs on most OS's (including Windows, again), and the GUI is a little clunky, but quite usable. As several people have mentioned, the capture filter syntax is identical to tcpdump. The display filter syntax is different and I find is a little tricky to get right, so I try to prefilter (or filter with tcpdump beforehand) as much as possible.

    One handy feature is the ability to analyze certain types of streams, such as a TCP session (filter out the whole session and see all the data in one window) and SIP (analyze jitter, loss, extract audio session, etc.). It's also open-source, so if it doesn't understand some kind of traffic, you can write your own extension. I haven't had to do this yet, but I know people who have, and it seems easy enough for a compitent programmer.

    My employer has a site license for WildPackets Etherpeek (it comes in several versions... I think we have one of the higher-end ones). Frankly, it's prettier than ethereal, but, at least for the debugging I do, provides very little extra functionality. The capture filters are embedded in a GUI which I find makes it hard to see how they're configured.

    Etherpeek is pretty and may be easier for novices to use. But I wouldn't waste the money unless it has some quirky feature you just can't live without.

    Something to keep in mind: often, the place where you capture packets is not where you'd like to analyze them. For example, I've had situations where I needed to sniff traffic on a remote server -- I had ssh access to the server (and root, of course :) ), but couldn't/didn't want to install all kinds of GUI tools, etc. This is where tcpdump really shines. You can capture to a binary file and read the file with tcpdump, ethereal, Etherpeek, and many other packages. As long as you can get the file off the machine, you can analyze the data.

    There are also handy tools for managing and analyzing tcpdump files, such as tcpslice, which breaks up large dumps by time, date, etc.; there is a tool that "anonomizes" (sp?) packets so that you can analyze streams without violating anyone's privacy (this is largely for academic use, but if, for example, you wanted to do some kind of traffic analysis on your uplink, you could do so without ruffling as many feathers).

    Finally, note that tcpdump will sniff on pretty much any interface that supports libpcap. Tools like Etherpeek only talk to certain (ethernet) adapters, for example. Caveat emptor.

    Bottom line: pick the right tool for the job :)
  • Pay for? (Score:3, Insightful)

    by IWannaBeAnAC ( 653701 ) on Thursday April 08, 2004 @04:32AM (#8801339)
    ... the more reasonbly priced the better, but I know you usually get what you pay for.

    What a stupid thing to say, on Slashdot of all places!

  • by Serveert ( 102805 ) on Thursday April 08, 2004 @04:54AM (#8801402)


    http://www.cs.columbia.edu/~hgs/internet/tools.h tm l

    iftop - ncurses
    iptraf - ncurses
    tcpflow - reconstruct into file per tcp conn
    ettercap - ncurses, kill conn, drill down on connection, ssh 1 attack, etc
    ssldump - http://www.rtfm.com/ssldump/
    etherape - graphical view of net
    ntop - web based network monitoring
    ethereal - GUI - based sniffer, gets all protocols.
    mtr - monitor hops
    trafshow - nice ncurses sorted list of top bandwith hogs
    http://www.mirrors.wiretapped.net/security/network -monitoring/trafshow/
  • by Anonymous Coward on Thursday April 08, 2004 @05:15AM (#8801457)
    A favorite security tools survey was conducted at the Nmap-hackers mailling list. Many of the mentioned tools are listed in order of popularity (with links and a short description)

    see http://www.insecure.org/tools.html

    Paul
  • snoopy (Score:3, Informative)

    by DrSkwid ( 118965 ) on Thursday April 08, 2004 @05:22AM (#8801478) Journal

    snoopy [bell-labs.com]

"If it ain't broke, don't fix it." - Bert Lantz

Working...