For those of you using iPhones on cellular networks that do not include unlimited data access, you probably want to disable Internet access through your service provider’s network, and use only wifi for Internet access. In the first generation iPhone, you could disable cellular Internet access by changing the APN (access point name) in the Settings utility on the phone. In the new iPhone 2.0, however, Apple gave service providers the ability to disable this setting. If the carrier chooses to do that, you will automatically connect to the Internet through their network and incur their data access fees, and there is no built-in way to turn it off. Sneaky, and evil.
Fortunately for customers of underhanded carriers that disabled the APN option in the iPhone Settings, Apple has provided the iPhone Configuration Utility, which allows one to customize the APN. For your convenience, I’ve created a basic configuration profile that does just one thing: sets the APN to “NULL”, so that your phone won’t be able to use your cellular provider’s Internet service. Here it is. Note: do not rename it to end with .txt. It should end with “.mobileconfig”.
Use a computer to e-mail it to yourself, as an attachment. If you are using Microsoft IE (Windows), download this zipped version, since IE seems to mangle the original file. You’ll have to unzip the file before e-mailing it to yourself. Alternatively you can get a better web browser here.
To install it on your phone, simply open the email on your iPhone. When you click on the attachment in the email, it will prompt you about applying the new configuration, and warn you about no trusted signature (I didn’t pay Verisign). Once the profile is installed, it won’t be possible for your iPhone to use your carrier’s network for Internet access. If you wish to re-enable cellular data access, all you need to do is open Settings -> General -> Profile, and remove the profile. The phone might require a reboot after removing the profile.