Work demands mean that when out and about I may have an urgent need to hook my laptop to an internet connection. Wifi is all very well, but sometimes you need to fall back on the resources of a mobile phone network.
You can use Bluetooth or a USB lead to connect the phone to the laptop. In either case, you then proceed by setting up a dial-up connection. I use KPPP.
If you have a USB lead for the phone, you can use that. Plug it in, and the phone will ask if you want File Transfer or Phone. Choose Phone. You should then find a USB serial connection /dev/ttyACM0.
I have a small USB Bluetooth dongle. If I plug that into the laptop, Debian does its stuff and kbluetooth appears. You'll need to get the phone and the laptop talking over Bluetooth; 'pair' them if you haven't before. I won't cover this here.
The next step is to find your phone's address. Enable Bluetooth on your phone, and then:
$ hcitool scan Scanning … 00:vv:ww:xx:yy:zz K550i
Hopefully you'll see a line ending K550i. That's your phone address - the address is the sequence of 6 colon-separated hex number pairs.
The Bluetooth RFCOMM facility is the one we use to connect for dial-up networking. But we need to find which channel to use.
$ sdptool browse 00:vv:ww:xx:yy:zz
You'll get a lot of output. Browse through it looking for the section Dial-up Networking. In the subsection Protocol Descriptor List you'll find an entry for RFCOMM with an associated channel number. Note that number!
Now edit /etc/bluetooth/rfcomm.conf. Here we are creating an /dev/rfcomm0 device and typing it to the phone.
rfcomm0 {
device 00:xx:ww:xx:yy:zz;
channel 2;
comment 'Mobile DUN';
}
You can then use device /dev/rfcomm0 in KPPP. You'll need to
$ /etc/init.d/bluetooth restart
to pick up the new channel.