What is the best way to track a application's internet communication? I've used Fiddler2 with Internet Explorer in the past (with great success on SSL tests). But I'm not finding a easy way to track all the communication between a specific windows program, and the sockets it creates with the operating system Windows 7, 64 bit.
Fiddler would work great, unfortunately, this program would require me to setup a proxy. I'm not sure how to do that for the program I'm trying to read all the communication from. And I'm pretty sure then I'd get the "bucket" for every socket connected to my machine, which would be difficult to filter I believe.
Netstat seems to only give the remote locations being accessed, and not much else.
I'd give Port Reporter a try for this.
Related
I have script which uses mircrosoft's UIAutomation to automate an application. The script is inside a VPS running Windows Server 2012. The script works perfectly while I am connected to the VPS via Remote Desktop (RDP).
When I am not connected, the script seems to be stuck on SetFocus for a object... which leads me to believe that the script needs a Display/Screen/Session in order to work... but I am not sure if it is possible to do it while I am not connected to the VPS.
I can see 2 possible solutions here, either modify the script in someway to work in this environment or make the VPS have a virtual desktop while I am not connected (this solution might be more related to Server Fault rather than StackOverflow).
I am very confused, thanks for the help in advance :)
I managed to workaround the issue by actually connecting to the server to itself (to 127.0.0.1) via RDP so that it will always have an active RDP session for the automation script to run.
I am not happy with the results but it works... I cannot give clear instructions on how you would need to modify the settings in Windows to allow RDP connections from self, it was a one big trial and error process, I have to modify some policies in the Group Policy Editor and then some stuff that I don't remember.
There is another downside to this, a Windows server will allow 2 simultaneous connections to it but by using this method we are reserving a slot so only 1 connection at a given time is possible, something to be aware of.
Does visual studio open any ports?
I know it runs its own web-server (or IIS). The reason I ask is that I just went to steve gibson's "probe my ports" site, and it indicated that my computer responds to 'pings', which is says is a bad thing, because it tells potential hackers where my computer is.
To disable PING you should block incoming ICMP packets on your firewall. However the gibson test might as well be for your router and not your computer since they use the IP you use to reach their site.
PING just tells if the computer is up and reachable from the internet. It doesn't tell anybody where your computer is. A simple traceroute might point to your current internet provider which is close enough to know where your computer is and there is no way to block that. You can check for open ports using nmap from another machine or an online service like gibsons or http://www.websitepulse.com/help/testtools.portscan-test.html.
Let's say I am developing a program that needs a bit more power than a netbook can provide and I have a good computer at home connected to the internet.
Is there any easy way to code in the netbook while I'm not at home and then when building, making it go and run on the computer at home?
I know running programs on other computers isn't a problem, but I'd like to know if it is possible to have an easy experience (it's still possible to debug, etc).
Thanks
It is definitely possible for Java code and Eclipse. But there are issues as well.
It helps a great deal if you have a fixed IP.
You need to open up ports on your firewall to be able to
copy your code into your PC
remote debug and upload your application
The last step will create issues with security that you need to address. I use ssh and public/private key to secure my connections.
In general, what you are asking is not much different to releasing a code to a server and debugging it. And normally servers sit somewhere on the internet or cloud.
This is not yet particularly programing related but, I am very interested in how Vista and XP resolve network names in a home LAN situation.
With Windows 2000, network name resolution was either done via the netbeui protocol - tcp/ip networks needes a wins server. XP and Vista no longer install netbeui by default, so its entirely unclear to me how PCs on a lan are meant to find each other.
One part of the puzzle's solution seems to be, IF there is a router appliance on the network that is configured as a DHCP server (and, as a result, a DNS server) then DNS queries of PC names tend to resolve.
In the more isolated case - a couple of XP and Vista PCs connected to an ethernet hub, configured to talk only tcp/ip - what services and what protocols are involved in name resolution and broadcasting?
It's been a while since I've had to deal with this sort of thing professionally, so I doubt I could give you an accurate off-the-cuff answer, but I'll say this: If you have access to a network similar to the one you are interested in, I highly recommend you install Wireshark or a similar tool on one of the machines involved and simply observe the traffic on the network in question. It's very easy to do and yields reliable information about a particular configuration very quickly, even when reality differs significantly from what one might reasonably expect. I've often been really surprised by some of the things I've seen, especially when it comes to name resolution.
Generating name lookup traffic is simplicity itself -- in fact, Wireshark itself might try to look up names in order to include them in its output, unless you ask it not to, so you might not need to take any explicit action at all, depending. Do remember to watch out for caches and switches.
Old question but for completion:
In peer networks (i.e. no Active Directory, WINS servers, etc.):
Windows Vista and above use Link-local Multicast Name Resolution(LLMNR), with fall back to NetBios over TCP/IP broadcast, which is what Windows XP uses.
It looks like Peer Name Resolution Protocol is being used with Vista and XP.
Peer Name Resolution Protocol
http://technet.microsoft.com/en-us/library/bb726971.aspx
People Near Me
http://technet.microsoft.com/en-us/library/bb726969.aspx
Edit: After doing a little bit more digging after Chris's comment, here is a link on how Windows XP Professional resolves names:
http://technet.microsoft.com/en-us/library/bb457118.aspx#ECAA
What tool would you recommend to monitor the connectivity status of a machine, this is if a given machine it is able to connect to some web servers over time. It should be able to log the status.
There is a long list of freeware at http://ping-monitors.qarchive.org/
I tend to use Nagios and OpenNMS to monitor large batches of servers (and in the Unix environment, not windows). However, some pure windows-only shops I've worked with have really liked using What's Up Gold. Alternately, a combination of a quick perl script, the LWP library from CPAN and the scheduled task manager would probably do the trick too.
When we had to do something similar, we just mocked up some VBS script to attempt to connec to the machines we needed to log. Obviously behind the firewall, on the same domain. Dumped the logs into Excel. Quick and dirty for some network diagnostics, but not a long term solution.