Troubleshooting network problems can sometimes be a daunting task, especially when the problems being experienced are not shared among all computers on the network. For instance, we were recently helping a reader fix a problem where his Mac would not load certain items on Web pages, such as image thumbnails from sites like Google Images. The page would load fine; however, the images would display as a blank placeholder with a question mark. The odd part is, a secondary Windows machine on the same network would load the same images just fine. Hearing this, we began the troubleshooting.
There are several general areas to look at when troubleshooting browser problems: the browser itself, global resources, your computer's network settings, and your home network setup.
The first steps were to test the browser and software setup to see if a faulty cache, browser settings, or plug-in were the cause. To do this, you can use Safari's "Reset Safari" feature, but other browsers have. Additionally, you can try running the browser in another user account (create a new one if needed) to see if it runs faster or problem-free in that account. This will indicate if you need to focus more on the user library or at more global resources.
If the problem is shared among several user accounts, concentrate on the resources that are available to all user accounts, which mainly consist of the Internet Plug-Ins. These are located in the /Library/Internet Plug-Ins/ folder, and while you can remove them from this folder and try your browser again, an easy way to test this in Safari is to uncheck the "Enable plug-ins" option in Safari's "Security" preferences. After doing this, relaunch Safari and try the websites again.
Beyond settings and plug-ins, there may be a problem with the system's Webkit resources that Safari and other WebKit-based browsers use (i.e., Camino, and Chrome). Test the problem with a non-WebKit browser such as Firefox or Opera. If they work well, then you may benefit from running general maintenance routines on the system (clearing caches, and running a permissions fix), reapplying the latest Combo updater for your OS version, or at the very worse performing an archive and install of the OS (Snow Leopard's installer will do this automatically).
In this case, none of these approaches showed any benefit, so we moved on to testing the computer's network setup.
The computer's network configuration: Setup
There are multiple levels to a computer's network configuration, which include the port assignments and configuration, security services that interact with the data going through these ports, and the broader network setup. Since the problem happens only with the Mac, we focused on the Mac's settings by essentially reconfiguring the computer from scratch, which can be done by creating a new location that includes only the active network port.
To do this, go to the Network system preferences and in the "Locations" menu choose "Edit Locations." Then click the plus sign and give your location a new name. It will by default be populated with the physical ports on the computer (i.e., FireWire, Ethernet, and AirPort); but for now, remove the ports you are not using. When this is done, configure the remaining port with your network settings. Generally everything is automatically configured through the router's "DHCP" server, though you may need to provide a network name and password for wireless networks.
With the new network configuration now active and working, you can next test the DNS configuration. This is a common source of network slowdowns, as ISP-supplied DNS servers are sometimes not properly optimized. An easy way around this is to add some well-known public DNS servers that include those from Google and the OpenDNS project:
Google: 184.108.40.206; 220.127.116.11
OpenDNS: 18.104.22.168, 22.214.171.124
Keep in mind that in OS X 10.6 Apple has reworked the DNS server priority so that the ones which respond first will be given priority. As such, it may be beneficial to add all the DNS options to the list so your system has a number to work from.
With the DNS settings in place, the next step is to look at other network settings. Most home networks should not have proxy servers set up, so you should not have to supply any proxy settings. Additionally, running your network traffic through a proxy server may only slow the connection down further.
Unfortunately, in this case we were not able to fix the image loading problem by changing the computer's network settings.
The computer's network configuration: Security software
The next step is to look at security and other network software. While most network software will allow Web traffic through, there may be odd incompatibilities that could prevent the system from loading items from certain hosts. The easiest way to do this is to disable the software. Turn off any third-party firewalls, and also the built-in firewall. Keep in mind that this will make your system more open; however, for brief testing purposes you should be fine. Additionally, turn off any network monitoring or diagnostics utilities.
If you are connecting your Mac through an Ethernet port, you can turn off many third-party security tools by booting into Safe Mode (hold shift at boot-up). Unfortunately this will also disable Wi-Fi on many Mac models so it cannot be used when troubleshooting AirPort connections.
It is unlikely that a firewall on the computer will prevent specific Web data from getting through (especially an Application-based firewall like Apple's); however, it is a possibility. Unfortunately, again we were not able to fix the problem by turning off the computer's security software.
The home network
With all these options explored, the next step is to test for incompatibilities between the network hardware and your system. Sometimes routers are set up to be optimally compatible with Windows, which can adversely affect Macs and other operating systems on the network, especially if the router's firmware is buggy.
The easiest way to test networks is to put the system on another router. If you have a spare one, then try configuring it for use with your ISP and attach your Mac to it; however, you can also use a neighbor's Wi-Fi connection or one at a cafe (for laptop users) to see if the problem disappears. If so, then besides calling your router's manufacturer for support there are a few things you can try:
Disable security measures
Routers many times implement cheap security software that is not always compatible with computers or other network devices. Sometimes it is a matter of configuration errors, but other times it is just poorly written code. Try disabling the security features on your router, which can include firewalls, stealth mode, and other filters. Open it up as much as possible to see if the security features are impeding the Web traffic. As with the security software on your computer, keep in mind that doing this will make your network more vulnerable, so only do it temporarily.
If there are any firmware updates available for your router, apply them. Some routers have a built-in update function, but others will require you to check the router manufacturer's Web site for updates and either use a utility or the router's Web interface to apply the update.
Finally, with the latest software applied, do a factory reset of the router, which usually involves depressing a small reset switch for a few seconds (consult your manual). This should clear all logs, settings, and router tables, and allow you to essentially start over.
Hopefully these approaches can resolve the issue. In the case of the Mac not loading Google images, the problem wound up being an issue with the router's firewall that was identifying the image loading as a flood attack of sorts, and was blocking the network traffic. Changing the firewall's settings to be less strict was the solution.