Well, it took me three days to do this, but finally figured out how to get an iPhone to use its internet connection over EDGE to be used with your laptop. Its convoluted because most phones allow what is called Bluetooth sharing and you are in. In the iPhone's case, it is more complicated as "Lifehacker":http://www.lifehacker.com.au/tips/2007/11/30/use_your_iphones_internet_conn.html explains. Here is the outline of what you have to do:
# Ziphone. Use this to jailbreak your phone. Then use installer to put in the openssh client and server
# Set you Macbook to create an adhoc network in System Preferences/Network
# Connect you iPhone to the network and note the IP address typically 169.254.x.y where x and y are randomly assigned.
# Now the magic, start Terminal on your Mac and type in _ssh -DN 9999 email@example.com
# Type in the password where the default is _alpine_ for iphone firmware 1.1.1 to 1.1.4
# The terminal session will then hang as it is running and that is good
# Go to System Preferences/Network/Advanced/Proxies and select SOCKS proxy and fill in localhost and socket 9999
# Now you should be able to browse, but DNS is broken, so you need to find AT&T's DNS servers
# Go back to Terminal and choose Shell/New Windows/Basic and then _ssh firstname.lastname@example.org_, type in alpine as password and then _cat resolv.conf and you will see two IP addresses which are the DNS Servers which are currently 172.16.8.223 and .224
# Go back to System preferences/Network/Advanced and type those into DNS/DNS Servers
It should work but slowly. Actually I haven't gotten the DNS to work quite right, so another workaround is that everytime you want to see something you your laptop, you have to type the domain into Safari on your iPhone. This caches the IP address and the laptop works. A little wierd but it functions.