Допустим, WireShark установлен на компьютере A. Допустим, я просматриваю видео Youtube на компьютере B.
Может ли WireShark увидеть, что делает компьютер B?
В общем, нет, Wireshark не распознает этот трафик. ErikA объясняет, почему.
Однако ... если ваша сеть поддерживает это, сама сеть может показывать компьютеру A трафик для компьютера B, и оттуда Wireshark может его захватить. Есть несколько способов добраться туда.
ARP Spoofing - это единственный способ для компьютера без особых сетевых привилегий прослушивать трафик другого сетевого узла, и это зависит от того, защищает ли сетевой коммутатор от такого рода действий. Просто установить Wireshark недостаточно, необходимо предпринять некоторые другие действия. В противном случае это произойдет только тогда, когда сеть явно настроена так, чтобы это произошло.
Если вы находитесь в коммутируемой сети (что весьма вероятно), и если компьютер A не используется в качестве маршрута по умолчанию для компьютера B (маловероятно), то нет, компьютер A не сможет видеть пакеты, предназначенные для компьютера B.
Как намекал Фарсикер, раньше вы могли. Десять лет назад во многих сетях использовались концентраторы, которые были похожи на коммутаторы, но тупее, поскольку они отражали каждый пакет на каждый порт вместо того, чтобы выяснять, куда каждый пакет должен пойти, и отправлять его только туда. До этого в некоторых сетях использовался коаксиальный Ethernet с общим кабелем (без концентратора или коммутатора), который транслировала и слушала каждая станция.
В обеих вышеупомянутых ситуациях машина с Ethereal (старое название Wireshark) действительно могла отслеживать всю сеть.
Хотя в наши дни такая ситуация применима к очень немногим сетям, я упоминаю ее для контекста и для понимания того, почему идея использования Wireshark для слежки за другими все еще находится в головах многих людей.
Пит
Если мы все равно упоминаем злые методы: при перегрузке некоторых неуправляемых коммутаторов таблица CAM предположительно может работать, и это задокументировано где-то в tcpdump docs IIRC.