우분투에서 블루투스 다이얼업 설정하기 Technortics

지금 내가 쓰는 노트북은 Lenovo X61T.
이것이 Wi-Fi 와 Bluetooth를 함께 지원해서 이전에 Vista로 사용할땐 편리하게 연결해서 사용했었다.
이게 우분투로 갈아타고 나서부터 설정하기 귀찮아서 냅두고 있다가 잠깐 짬이 난 김에 설정해봤다.

이제부터 설명하는 모든 내용은 Ubuntu Hardy Heron (8.04) 7/14 까지의 갱신본을 기준으로 한다.
사용한 휴대폰은 샘숭 SCH-W330(3G) 이며 통신사는 SKT이다.

1. Needs
 - Bluetooth 가능한 휴대폰
 - apt-get install bluez-utils 등등인데 보통 bluetooth 가 있는 시스템은 설치되어 있다.

2. Find Your device
hcitool scan
이 명령을 통해 다음과 유사한 결과를 얻을 수 있다.
00:1D:F6:xx:xx:xx    SCH-W330(53**)

3. Pairing
만약 Notification Area에 보이는 Bluetooth 아이콘을 통해 페어링을 설정했다면 건너뛰라.
가능하면 해당 툴을 통해 페어링 할 것을 권하며 굳이 Command Line 으로 하고싶으면 다음 명령을 따라가라
sudo hcitool cc <DEV-MAC-ADDRESS>
sudo hcitool auth <DEV-MAC-ADDRESS>

4. Configuring rfcomm device
Bluetooth를 통하여 핸드폰에 연결할 Dial-up Device 인 /dev/rfcomm0 를 설정하도록 한다.
우선 휴대폰에서 Dial-Up Networking을 지원하는지 찾아보자.
sdptool search DUN
이 명령어는 범위 내의 Bluetooth Device를 검색하여 DUN(Dial-up Networking)을 지원하는 장치를 찾아 세부내용을 표시한다.
Inquiring ...
Searching for DUN on 00:1D:F6:xx:xx:xx ...
Service Name: Dial-up networking
Service RecHandle: 0x10000
Service Class ID List:
  "Dialup Networking" (0x00001103)
Protocol Descriptor List:
  "L2CAP" (0x00000100)
  "RFCOMM" (0x00000003)
    Channel: 1
Profile Descriptor List:
  "Dialup Networking" (0x00001103)
    Version: 0x0100
여기서 주목할 것은 프로토콜 목록에서 "RFCOMM"이 있는가. 그렇다면 그 채널 번호는 무엇인가. 이다.
이 경우엔 확실히 RFCOMM이 있고 채널은 1번이다.

그렇다면 이제 /etc/bluetooth/rfcomm.conf 를 열어서 다음과 같이 편집한다.
rfcomm0 {
     ## 부팅시에 자동으로 /dev/rfcomm0 를 만들 것인지 여부이다.
     bind yes;
     ## 위에서 찾은 휴대폰의 Mac Address를 넣는다.
     device Mac-Address;
     ## 바로 위에서 언급한 RFCOMM의 채널 번호이다.
     channel Rfcomm-Channel;
     comment "Bluetooth PPP Connection";
}
이제 sudo /etc/init.d/bluetooth restart 를 실행하면 /dev/rfcomm0 가 만들어진다.

5. Configuring PPP
이제 Dial-up을 위해 PPP 프로파일을 만들어야 한다.
다음 두 파일을 만든다.
/etc/ppp/peers/BluetoothDialup
debug
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/BluetoothDialup"
usepeerdns
/dev/rfcomm0 115200
defaultroute
crtscts
lcp-echo-failure 0
  * 이 파일에서 제일 처음의 debug는 나중에 설정이 정상적으로 되면 제거해도 된다.

/etc/chatscripts/BluetoothDialup
TIMEOUT 35
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
'' \rAT
OK ATD*98#
CONNECT ""
  * 이 파일에서 각 통신사별로 설정이 달리 되게 된다. 지금은 SKT 3G(HSDPA)망이기 때문에 ATD*98을 사용했는데 EV-DO(2G)망이라면 아마도 ATD1501 일 것이다.
  * 나머지 통신사는 모른다. 정 알고싶으면 /var/log/debug나 /var/log/syslog 등을 잘 살펴보면 답이 있을지도 모른다.

6. Dial-up!
실제 전화를 연결하기 전에 확실히 해둘 것이 하나 있다.
이거 패킷당 요금이다. 죠낸 쳐비싸니까 알아서 쓰시라.
미리미리 Network Manager에서 다른 Wi-Fi나 기타 등등 죽여놔라. 엉키면 골아프다.
id명령어 때려서 현재 사용자가 dialout 그룹에 포함되어 있는지 확인해라.
포함 안되어 있으면 sudo adduser ID dialout 하고 로그옾/로그인 해라.

이제 전화걸자.
pon BluetoothDialup
아무런 메세지도 떨어지지 않겠지만 잘 된거 맞다.
아마 핸폰에서 바로 "접속을 허용합니까 어쩌구?" 라고 뜰 것이고. 거기서 허용해주면 HSDPA망에 연결을 시작한다.
그 연결이 완료되고 나서 PC에서 ifconfig로 확인하면 ppp0 장치를 볼 수 있을 것이고, ping으로 여기저기 때려보면 응답이 떨어질 것이다.
이 망의 품질은 당신이 있는 곳의 기지국 상황이나 전파수신감도에 의존하니까 그닥 좋은 속도를 기대하지는 말것.

이제 꺼보기도 하자.
poff BluetoothDialup
꺼진다. 네트웍 떨어진다.

더 이상의 자료가 필요한가?
한손엔 사전들고 구글링해보시길.
Google knows everything!


트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://cyberowl.egloos.com/tb/1977245 [도움말]

덧글

  • 이영철 2008/07/27 18:27 # 삭제 답글

    안녕하세요. 제가 지금 sch-w330(skt)를 쓰고 있습니다.
    노트북과 휴대폰으로 블루투스를 사용하여 인터넷연결을 하려고 벌써 1주일째 자료를 찾아보았는데요..
    도저히 연결이 되질 않습니다...
    dun지원되는지도 모르겠고요..
    연결 방법좀...출장나오는 회사가 보안이 상당히 심해서 인터넷을 쓰기가 힘듭니다..
    자료라도 전송하기 편하게 해보려고 하는건데..휴대폰이 잘 안되네요..
    방법좀 알려주세요.
  • 부엉 2008/07/28 13:15 #

    음. 일단 오트북의 OS를 알려주심이.. ^^
    윈도우 계열이라면, DUN설정하셔서 연결 가능합니다.
    연결할 번호는 *98이나 1501이고 로그인은 입력해야 하나, 실제 인증처리는 하지 않으니 그냥 아무값이나 넣으시면 됩니다.
    참. 그 이전에 페어링은 해야 할건데.. 음음 지금 Bluetooth 되는 윈도우 설치된 돗북이 근처에 없네요;
    자세한 방법은 까먹은지라.. ^^
덧글 입력 영역