If I am running dsniff on the same machine through which I connect to a sniffable service (smtp, web page login, ftp, etc.) and run it with:

dsniff -i eth0

and it responds with:

dsniff listening on eth0

shouldn't it pull out sniffable data without the need for MITM or Arp poisoning (I know this is not the standard method of using it, but I'm just testing).

But it doesn't pull out anything.

Must it always be run as a MITM or arp poisoning scenario? Can't seem to find an answer to that question.