现在的位置: 首页 > 综合 > 正文

wireshark抓取本地程序之间的封包

2013年12月02日 ⁄ 综合 ⁄ 共 4287字 ⁄ 字号 评论关闭
文章目录

Windows下传统的抓包工具如Wireshark/Ethereal不能对本地程序之间的网络通信抓包,如果即想要对本地通信进行抓包可如下设置

http://wiki.wireshark.org/CaptureSetup/Loopback详细介绍了如何操作但比较麻烦,其实只要最后一步就可以实现了

在命令行提示下面输入:
route add
192.168.10.10 mask 255.255.255.255 192.168.10.1
metric 1
就这么简单!其中192.168.10.10是自己的IP,192.168.10.1是自己的网关

Loopback capture setup

The following will explain capturing on loopback interfaces a bit.

If you are trying to capture traffic from a machine to itself, that traffic will not be sent over a real network interface, even if it's being sent to an address on one of the machine's network adapters. This means that you will not see it
if you are trying to capture on, for example, the interface device for the adapter to which the destination address is assigned. You will only see it if you capture on the "loopback interface", if there is such an interface and it is possible to capture on
it; see the next section for information on the platforms on which you can capture on the "loopback interface".

Supported Platforms

See
CaptureSetup/NetworkMedia
for Wireshark capturing support on various platforms. Summary: you can capture on the loopback interface on Linux, on various BSDs including Mac OS X, and on Digital/Tru64 UNIX, and you
might be able to do it on Irix and AIX, but you definitely cannot do so on Solaris, HP-UX, or Windows.

Windows

IP 127.0.0.1

You can't capture on the local loopback address 127.0.0.1!

IP other

You can add a virtual network card called Microsoft Loopback Adapter, but in most cases that might not give results as expected either.

This adapter is available from Microsoft:

... and is quite different than the ones available for various UN*X systems. This adapter is a virtual network adapter you can
add, but it will not work on the 127.0.0.1 IP addresses; it will take its own IP address. BTW: You can only add
one Loopback Adapter to the system!

/!\ Beware: Capturing
from this Loopback Adapter requires the
WinPcap
3.1 release, 3.1 beta versions won't work!

Let's suppose you have set the IP address of the loopback adapter to 10.0.0.10 and are capturing on that interface. If you ping to this 10.0.0.10 address the ping will get ping replies, but you won't see any of this traffic in Wireshark (much
like the 127.0.0.1 problem). If you ping on 10.0.0.11, you won't get ping replies as there is obviously no remote host, but you will see the corresponding ARP requests in Wireshark.

The only benefit I can see so far is if you use it with colinux (and probably other PC virtualization software) to capture the traffic between Windows and the virtual machine. -
UlfLamping

:) Recipe (to capture
traffic on ms loopback adapter / Windows XP): --- by mitra

1. go to MS Loopback adapter properties, set IP 10.0.0.10, MASK 255.255.255.0
2. ipconfig /all and look at the MAC-ID for your new adapter.
3. arp -s 10.0.0.10 <MAC-ID>
4. route add 10.0.0.10 10.0.0.10 mask 255.255.255.255
5. to test: "telnet 10.0.0.10"

{OK} I am now using
the loopback adapter to capture traffic that I source into a Dyanmips/Dynagen virtual router network. This is a potentially very useful tool/feature that I will be testing further in the weeks to come. As it stands, I can connect my loopback adapter to a virtual
router interface and capture ping, arp, etc. In the near future, I hope to tie a server w/ a loopback adapter to a virtual router and then capture a full client/server type of exchange across a Dynamips/Dynagen emulated network. -- Scott Vermillion

NOTE: To get to the Microsoft Loopback Adapter Properties: Start -> Settings -> Control Panel -> System -> Device Manager -> Network Adapters and right click Microsoft Loopback Adapter to select Properties. -- saran

Alternatives

A commercial network sniffer called CommView (from TamoSoft) allows to capture packets on the localhost network adapter but it dissects fewer protocols, so you can capture packets with CommView and save them into a file and open it with Wireshark.

An other alternative is to add a route to your local machine going through the network gateway:

route add <your_IP> mask 255.255.255.255 <the_gateway> metric 1

with <your_IP> being different from 127.0.0.1. It should (has to) be the result of
ipconfig command (ip address field) <the_gateway> has to be the default gateway field taken from
ipconfig /all result.

Doing so, every network traffic from your machine to itself will use the physical network interface, it will then go to the gateway, back to you. Therefor, you will see each packet twice, but it can be filtered on the view.

Be careful, since your machine will use the actual network to talk to itself, it may overload the network. It may be wise to remove the new route once you are done with the tests:

route delete <your_IP>

This is translated from French, based on the method described
here
.

为了您的安全,请只打开来源可靠的网址

打开网站    取消

来自:
http://hi.baidu.com/btb368/blog/item/098d36acfbc837014b36d6cd.html

抱歉!评论已关闭.