Configuring Charles for DNS Spoofing
Charles is fairly easy to setup; you only need to make two changes to get it ready for use. By default, Charles will only allow local HTTP requests to be proxied. However, if you click on the Charles -> Preferences -> Access Control, you can add in your local network or PSP IP address to allow other clients on your LAN to use the proxy server as well. Figure 1 provides an example of two possible entries. As illustrated, you can either hard code the specific IP address of your PSP, or just specify the entire local subnet.
Figure 1: Charles Access Control
The second change you have to make to Charles deals with the actual DNS spoofing. Basically, Charles will monitor the incoming HTTP request, and if it detects that the domain is pointing to a specified value, it will replace the requested domain name with the entry of your choice. To set this up, simply click on the Charles menu -> Preferences -> DNS Spoof and enter your values. Note that you will need to point to a valid web server. However, this really should not be an obstacle for many. You can even point Charles back to your own computer if you have a web server installed locally. Figure 2 illustrates our setting.
Figure 2: DNS Spoofing in Charles
With these two settings made, you only need to know the local IP address of your computer and the port number used by Charles. To find the IP, go to Start -> Run. Type 'cmd' and then type 'ipconfig' at the command prompt. The default port for Charles is 8888, but this can be changed under the Charles menu -> Preferences -> Settings window.