This works...there is another thread with similar info, but this is more straightforward. This works for 3G/3Gs with 3.0/3.0.1...not sure about others.
If you have an iPhone 3G/3Gs and want to have MMS texting and internet tethering on it do the following...does not have to be jailbroken.
First, open Command Prompt on your PC from the 'accessories' tab...copy this string there...(you have t...o right click and paste into the CMD line as CTRL V wont work...you also cannot just type it in, it has to be pasted)...
"%ProgramFiles%\iTunes\iTunes.exe" /setPrefInt carrier-testing 1
Then go here and download this file to your desktop...you have to unzip it first.
Open iTunes and hold Shift(Option button for Mac) and the click on Update (the update button on your phones tab in iTunes) in itunes. When the popup window opens go to the dropdown box that you can choose your file type (it is set to look for an ipsw file by default). Change it to look for carrier update file .ipcc. Browse to the one you just downloaded (on desktop). click on Open(or double click it). it will update on your iPhone, it wont even go the Sync screen. When it is done, reboot your iphone (hold down power until it cycles off and then turn back on). Go to Messages. You should now have the camera icon by the enter text box and you can send pics via texts. Tethering will also be available in Settings, General, Network...turn it on and you can use your phone as a modem...