How can I sniff local traffic - windows

I have WAR app A that calls app B. I want to sniff traffic between them. How can I do it? OS: Windows

Wireshark (http://www.wireshark.org/) is a useful tool for sniffing network packets. I had this kind of problem yesterday (although it was between a windows app and a device on the network). I had never used Wireshark before then, but I was able to use it and read through the data in a matter of minutes. I haven't tried it between two apps on the same machine, however.

Related

How to connect remotely from Windows to Mac from LAN

Basically what I want to do is write iOS code on Xcode from my Windows PC which is connected to my Macbookpro. I tried a lot of applications for this and most of them connect through the internet and have screen action delays. Some of the other applications have a problem with sending mac commands from my windows keyboard.
So:
- Fast LAN connection
- Ability to pass mac shortcuts
- Responsive
- Hopefully free
- Hopefully copy paste data between computers
to state the obvious,so we are on the same page. the LAN is your Local Area Network, and the parameters of your LAN are defined by the Coverage area of your Modem's Wifi Range and the amount of Ethernet Hard Wire Connections, if you are trying to connect to a Mac on your LAN From a Windows Machine on the same LAN, That is not referred to as REMOTE CONNECTION, That is referred to as LOCAL NETWORKING, Connecting Remotely, or Remote Connection is when you connect From a Remote LAN or one that is not Your Personal LAN, and you use that LAN to Connect to a Computer on your LAN, that's remote connection, Hence, your connecting remotely, so.. Are you using Your LAN to achieve this and your having lag issues, or a you trying to do it remotely, if your trying to Remote Connect and your having trouble with Software, because i know it can be a pain, You should have mentioned what you have already tried, But.. Windows Remote Desktop Connection is buggy, i wouldn't recommend it, the way to go use to be TeamViewer as a free solution, then they Stopped the Free thing and started charging, Other Options were CrossLoop, it's good, but sometimes slow, Try if you haven't already, Most of the Good option are Paid, i rate Bomgar to be the highest, because your accessing Remotely via way of a Remote Box that is not technically inside the parameters of your LAN, hence more secure. LogMeIn is a good one
but as far as free is concerned, and to get the results you want, there is not much out there, obviously the idea is that they want you to buy the full versions, i'll do some research for you, but.. is it possible for you to provide a list of what you have already experimented with thus far, so i don't double handle. thanks

Hiding monitor from windows, working with it from my app only

I need to use a monitor as a "private" device for my special application, I want to use it as a flashlight of a sort and draw special patterns on it in full screen. I don't want this monitor to be recognized by OS (Windows 7) as a usual monitor. I.e. user should not be able to move mouse to that monitor, or change its resolution, or run screensaver on it or whatever. But I want to be able to interact with it from my application. Monitor is plugged using an HDMI cable to a video card (most probably nVidia).
What is the simplest way to do this? All solutions are appreciated, including purchasing additional adapters or simple video cards, or any other special devices. The only solution I could imagine for now is to plug the monitor to another computer, run a daemon on that computer, connect it to my computer via ethernet or whatever, communicate with that daemon from my computer. It is pretty ugly and require additional computer. But I need to solve this problem.
To do this, detach the monitor from the desktop. Detaching a monitor from the desktop prevents Windows from using it for normal UI.
Sample code for attaching and detaching monitors is in this KB article. Once you've done that, you can use the monitor as an independent display.
Building upon your own idea of using an external PC, and Mark's comment on using a VM as this "external" device:
You could buy an external USB-to-VGA video adapter like one of these, approx. USD40:
http://www.newegg.com/USB-Display-Adapters/SubCategory/ID-3046
Almost every VM software supports some kind of USB passthrough. VirtualBox is a great example.
Only the VM sees the USB device, the host ignores it completely.
So the steps would be:
Buy said USB-to-VGA adapter.
Configure slim a virtual machine and cook up a little utility to receive the images to show on he screen by network.
Configure VirtualBox to connect the USB-to-VGA adapter directly to the virtual machine.
Here is another simple solution to monitor you application.
Your app should provide an API monitor service, served as HTTP on any port you want (for example http://{userip}:{port}/{appname}/monitor).
Your app monitors itself, keeping monitoring data in memory, in a local file or a database, hidden from the user. The monitor API serves this data to any device you want that has a browser (tablet, phone, netbook, android mini-PC, low cost linux device, any PC or any OS... from the internet, your LAN or direct connection to the PC hosting the app).
Pros:
Data to monitor is collected (and served) within your app : only one executable
Display can be done remotely : from anywhere !
Access security easily done using standard HTTP authentication mecanisms
You can monitor several applications (ie several monitoring URLs)
You are free to use any browser to monitor (even a local window browser on the same PC for testing purposes)
Monitor from any hardware and OS you want
Simple and flexible !
Cons:
There is few, but tell me...
Choosing this solution depends on what kind of data you need to monitor (text, images, video...), and also on what is the refresh rate you expect depending on your system network configuration.
Hope it helps :)

Spying on a USB connection on Windows?

I have an Arduino application talking over USB to an application on Windows 8 using the MAVLINK protocol. The connection appears as COM3.
Is there a Windows application that can spy on this connection and display the traffic going in both directions? Raw bytes are fine, I don't need the protocol decoded.
You could log serial port activity using Portmon. (Edit: You need to first connect to the local computer via the Computer menu, and you must start capture on the port before a program opens it.)
You may not want to log USB traffic. Such a log would include a lot of extra information relating to the USB to serial adapter which is providing COM3. Portmon would only give you the bytes transferred over COM3, and the Mavlink protocol is entirely contained within that data stream. If you're sure you want to log all USB traffic to and from that device, then I recommend SnoopyPro. In Windows 7, you need to run it as administrator.
If you can use Windows XP in your environment, USB sniff should work for you. If you need something more powerful (and are willing to pay a fee for it) then USBLyzer might be a viable option.
The answer is SnoopyPro, and you can download it at:
SnoopyPro Sourceforge
This tool allows you to get USB information and also USB communication data. I used it in the past to know how a USB device worked in order to do its driver on Linux. I used this tool as a sniffer.
Basically, SnoopyPro allows you to intercept, display, record and analyze the USB protocol and all transferred data between any USB device connected to your PC and applications. It can be successfully used in application development, USB device driver or hardware development and offers the powerful platform for effective coding, testing and optimization.

Best way for a Mac application to talk to Windows applications

I need to write an app on Mac OS X that would send remote command to Windows applications to perform some tasks. The computers will be sitting on the same subnet and the Mac and Windows computers all have a fixed IP.
The data sent over really are just some string or boolean parameters so that the Windows app can perform specific tasks.
Someone will be writing the Windows app and I will be writing the Mac app.
I can find in the developer's doc about Mac to Mac communication, but nothing about what I need.
What's the best way to achieve this? What protocol is best suited for this?
Take a look at the Bonjour SDk for Mac and Windows: http://developer.apple.com/opensource/
There are (at least) two separate problems here:
#1 is how you discover the other app. Bonjour is one possibility, as is a local broadcast, as is explicitly configuring the hostname of the peer
#2 is how you talk to the other machine once you find it. For that part, I would suggest:
a) use TCP instead of UDP (in most cases), so you don't have to worry about retransmissions & sequencing
b) rather than inventing your own client-server protocol on top of TCP, use an existing one. I hear there's something called "HTTP" that's starting to catch on...
Could you just use UDP to broadcast a message out to the network? Your apps (regardless of whether they are running on Mac or Windows) can listen for the message and process them as needed.

Debugging Windows Phone 7 device traffic with Fiddler

I followed all the steps from the article but when I try to hit the server from my windows phone it says there is a dns error.
Article for reference.
http://blogs.msdn.com/b/fiddler/archive/2011/01/09/debugging-windows-phone-7-device-traffic-with-fiddler.aspx
How do I know my windows phone is using my local LAN WIFI as opposed to ATT cellular?
Personally, I use Netmon 2.3 for network traffic information from WP7. Fiddler didn't support WP7 up until recently and Netmon/Wireshark did, so I just stick with those.
Using Netmon 2.3, while your device is connected to Zune/WPConnect, you'd be able to see all WP7 device transport on the ZuneComm process. Netmon isn't as user-friendly as Fiddler, but it's fairly darn specific and easy.
You could turn on flight mode and then turn wifi back on.
Or you could take the sim out.
Either of those ways will ensure you're not using the cellular network.
I used the IP address instead of dns and it worked.

Resources