Sometime last week I stopped getting internet connectivity through my cell provider.
I made the mistake of calling them. Between navigating their voice menu system, and talking to first tier help, waiting while they talked to second tier help, I only lost about 30 minutes of my time.
However, they told me that the problem was the bluetooth connection to my phone.
The problem *really* was that pppd was looking for an IP address in the 10.x.x.x range, and my provider had stopped NATing those. This took me about 20 minutes to fix.
Although I probably didn't have to do this, I created a new GPRS CID (Connection IDentifier) on my phone from the data provided by "Opera":http://www.opera.com/products/mobile/docs/connect/ . This site will spit out the APN, username, and password settings you need to set to establish a GPRS connection with a wide variety of international providers.
There are a million different gprs configurations for linux pppd out there. Here is another.
Here is the "peers" file:
/dev/rfcomm0
115200
defaultroute
usepeerdns
nodetach
crtscts
lock
noauth
local
debug
lcp-echo-failure 4
lcp-echo-interval 65535
connect "/usr/sbin/chat -v -f /etc/ppp/chat_scripts/gprs-connect-chat"
disconnect "/usr/sbin/chat -v -f /etc/ppp/chat_scripts/gprs-disconnect-chat"
Here is the connect script.
TIMEOUT 10
ECHO ON
ABORT 'BUSY'
ABORT 'ERROR'
ABORT 'NO ANSWER'
SAY "Resetting phone...\n"
"" 'ATZ'
OK 'ATE1V1'
ABORT 'NO CARRIER'
OK 'ATD*99***4#' # the '4' is for CID 4 on the phone
SAY "Waiting for connect...\n"
CONNECT ""
And here is the disconnect script
"" "\K"
"" "+++ATH"
SAY "GPRS disconnected"