전용선에서 pppd 설정


리눅스 월드 편집부

 

 

이글은 http://www.sput.dsl.nl/~rob 에 있는 Rob van der Putten 의 글을 기초로 편집하였다.

1. 전용선이란 ?
2. 전제
3. 모뎀
4. 모뎀 조정
5. 시험
6. 모뎀 명령어
7. pppd


1. 전용선이란 ?

전화국이나 다른 기관으로부터 빌린 두 지점을 연결하는 고정된 영구적인 라인을 말한다. 선은 와선 케이블(twisted cable), 동축케이블, FDDI 등을 말하며 트랜스포머, 증폭기, 재생기 등을 포함한다.

여기서는 2선식 와선(twisted pair) 전용선에서 모뎀과 pppd를 셋업하는 방법을 다룬다.

2. 전제

리눅스에 이미 pppd가 설치되어 있어야 한다. minicom 같은 모뎀을 조정할 수 있는 프로그램을 갖고 있어야 한다.

3. 모뎀

전용선은 전화교환기에 연결되어있지 않으므로 직류 전원이나 다이얼톤, 통화중 신호, 링 시그널을 제공하지 않 는다. 따라서 모뎀이 이 모든걸 해결해야 한다.

당신은 2개의 동일한 외장형 전용선 모뎀을 갖고 있어야하며 이모뎀은 덤브 모드( dumb mode)를 지원해야 한다.


주 : 덤브 모드란 스마트모드와 대비되는 개념으로 우리가 흔히 다이얼업 모뎀에서 AT 명령으로 모뎀 셋팅을 바꿀 수 있는 것을 스마트 모드라하는데 비해 덤브 모드에서는 모뎀 명령으로 모뎀 셋팅을 바꿀 수 없다.

※ 다른 필요 사항
- 2개의 RS-232 케이블
- RS-232 테스트 플럭
- 2 RJ-11 코드 (한쪽은 전용선에 연결됨)
- AT 명령에 대한 기본적 이해

▲ top

4. 모뎀 조정

모뎀을 최고 속도로 조정해야 한다. 즉 모뎀의 시리얼 포트 측 속도를 모뎀의 선로속도가 14.4k 라면 57600, 모뎀이 28.8k 속도 이상이면 115200으로 조정한다. 우리가 흔히 33.6k 나 56k 모뎀이라 부를 때 이는 선로속도를 말한다. 선로속도가 모뎀의 전송 속도에 가장 큰 영향을 주기 때문이다.
일단 모뎀이 덤브 모드로 들어가면 이 속도를 유지한다. 통신프로그램을 이용하여 모뎀을 다음과 같이 조정한다.


주 : 여기에 적용되는 모뎀은 스마트모드와 덤브 모드를 동시에 지원하는 모뎀이다.
스마트 모드 상태에서 통신프로그램으로 모뎀에 명령을 주고 덤브 모드로 바꾸면 이 값은 모뎀을 하드웨어적으로 리셋하기전까지 유지한다. 이 두 모드를 동시에 지원하는 모뎀으로 대표적인건 USRobotics Courier 모뎀이다.

- 고정 시리얼포트 속도(즉 선로속도와 무관하게 시리얼포트 속도를 고정)
- 하드웨어 플로우컨트롤(RTS/CTS 라 함) - X-on/X-off를 사용하면 안됨
- 8비트, 패리티 없음, 1 스톱비트
- 모뎀은 선로의 실제 상태를 반영해야 한다(&C1)
- 모뎀은 DCD 상태를 무시해선 안된다.(&D2 혹은 &D3)

at&v 또는 atix 명령으로 구성을 확인한다.
이제 모뎀을 덤브 모드로 전환하는 방법을 알아야 한다. 또 이 모드에서 빠져 나오는 방법도 알아야 한다. 왜냐하면 모뎀 셋팅은 스마트모드에서만 변경할 수 있기 때문 이다.

이제 모뎀을 다음과 같이 조정한다.

- DTR 이 off시 모뎀 리셋(보통 &d3) - 이는 사용자가 모뎀 사용을 끝내면 즉 통신 프로그램을 종료하면 DTR 신호가 off 된다. 이때 모뎀이 연결을 끊고 모뎀 설정값을 원래대로 되돌리라는 의미이다. 그래야만 다음 사용시 연결에 지장이 없다.
- 전용선모드(&L1 혹은 &L2) -
- 원격지모뎀은 자동응답(so=1) 로칼모뎀은 오리지네이트(s0=0)
- 무응답모드(모뎀은 결과부호를 보내지 않는다)
- 덤브 모드(\D1 또는 %D1 일부모뎀은 점퍼를 사용한다.) - 이명령이 입력되면 모뎀은 AT 명령을 받지 않으므로 맨 나중 실행할것.
이제 &W 명령으로 값을 저장한다.

5. 시험

이제 시험할 차례다. 두 대의 피시에 RS-232 케이블로 모뎀을 연결하고 두 모뎀은 전화선과 RJ-11 콘넥터로 연결한다. 잠시 후 두 모뎀은 자동으로 연결된다. 양쪽에 minicom 같은 통신프로그램을 사용하여 시리얼포트속도를 맞추면 한쪽에서 키보드를 입력하면 다른 쪽 화면에 나타난다. (줄 바뀜 등이 안 맞으면 한쪽은 반 이중모드(half duflex)로 바꾼다.) rj-11 콘넥터를 뺀 후 다시 잇는다. 또 모뎀 스위치를 끈 후 다시 켠다. rs-232 케이블 연결을 끊었다 다시 이어본다. 어느 경우든 모뎀은 재 연결을 시도한다. ESC 캐릭터(+++)를 무시하는지 테스트 해보라. 필요시 ESC 캐릭터를 무시하도록 모뎀을 조정하라.


6. 모뎀 명령어

- Hi - Tech 모뎀의 예
로칼 - ATL1&C1&D3&L2%D1&W&W1
원격 - ATM0&C1&D3&L2%D1S0 = 1&W&W1

▲ top

7. pppd


전용선에서는 ppp 연결시 login 을 할 필요가 없으므로 mgetty를 사용하지 않으며 접속을 통제할 사용자 계정도 필요없다. 이 연결은 마치 두 대의 피시를 널 모뎀 케이블로 연결하는거와 같다.
연결에서 유의할 사항은 아래와 같다.

- 시스템을 부팅 후 pppd는 RS-232포트의 DTR을 on 해야 한다. 그리고 DCD가 on으로 바뀐 후 연결을 시도해야 한다.

- 원격 시스템이 꺼져있으면 pppd는 원격 시스템이 올라올 때까지 기다려야 한다.

- 연결이 성립된 후 끊기면 pppd는 모뎀을 리셋해야 한다.(이는 DTR을 off 한 후 다시 on 하면 된다. )

- 만약 pppd 프로세스가 죽으면 감시 프로세스가 pppd를 재실행해야 한다.

7.1 구성

모뎀이 com2에 연결되 있다면 로칼 시스템의 /etc/ppp/options.ttyS1은 아래와 같다.
crtscts
mru 576
mtu 576
passive
Local ip : remote ip
-chap
modem
-pap
persist

원격시스템은 아래와 같다.

crtscts
mru 576
mtu 576
passive
Remote ip : local ip
-chap
modem
-pap
persist

persist 옵션은 회선 절단시 pppd 프로세스를 계속 유지시켜준다.

7.2 스크립트

데비안의 경우라면 /etc/init.d/network 에서 아래의 스크립트를 실행한다. 이 스크립트는 리모트와의 연결여부를 체크한후 30초를 기다려서 ppp 연결을 시도한다. 이는 부팅 후 com 포트를 구성하도록 기다리는 시간이다.

#!/bin/bash
sleep 30
while true
do
if ! ( /sbin/ifconfig | grep remote_sddr > /dev/null)
then
/usr/local/sbin/Prem_host.sh &
fi
sleep 300
done

local 시스템을 통해 리모트 시스템이 인터넷을 사용한다면 리모트의 pppd 옵션에 defaultroute 옵션을 넣으면 된다. 또는 리모트의 /etc/ppp/ip-up 스크립트에 아래처럼 넣을수도 있다.

#!/bin/bash
case $2 in
/dev/ttyS1)
/sbin/route add -net 0.0.0.0 gw remote_ip netmask 0.0.0.0
;;
esac

리모트가 로칼을 통해 인터넷을 사용한다면 쉬운 방법은 로칼의 pppd 옵션에 proxyarp 옵션을 넣고 리모트에는 defaultroute 옵션을 넣는다. 단 proxyarp는 로칼이 랜에 연결돼 있어야 사용 가능하다.

pppd를 실행하는 스크립트(위에서 Prem_host.sh )는 아래와 같다.

#!/bin/bash
(/usr/sbin/pppd /dev/ttyS1 115200 crtscts local_ip:remote_ip persist) &


주석 :
우리나라의 기업에서 전용선 모뎀으로 통신망을 구성하는 경우가 많은데 거의 대부분이 9600bps 나 19200bps 선로속도를 지원하는 덤브(dumb) 모드 전용선모뎀을 쓰고 있다. 이 모뎀은 데이터 압축기능이 없어( 즉 시리얼 포트 속도와 선로 속도가 같다) 실제 전송 속도도 9600bps 또는 19200bps이다. 그리고 값도 거의 40-50만원 선이다. 또 일부는 2선식이 아닌 4선식이다. 그러나 위에 소개하는 스마트 및 덤브 겸용 전용선 모뎀은 선로 속도가 33.6k이고 모뎀에 V.42bis 데이터 압축 기능이 있어 실제 전송속도는 최고 115.2k 까지 가능하다.(즉 33.6k 모뎀에서는 시리얼포트 속도를 115200bps로 맞춘다) 값도 30만원 이내이다.(우리나라에도 이 모뎀이 정식으로 수입되고 있다)

결국 국내 기업들이 쓰는 전용선 모뎀은 속도가 스마트 및 덤브 겸용 전용선 모뎀의 1/4 수준이면서도 모뎀 값은 더 비싼 기이한 현상을 보이고 있다. 또 4선식을 쓴다면 통신비도 2배가 더 든다. 아직 국내 모뎀 업체들은 데이터 압축이 지원되는 스마트 및 덤브 겸용 전용선 모뎀을 생산하지 못하고 있다. 국내 모뎀 업체들도 국내의 좁은 시장을 두고 경쟁할게 아니라 세계 시장에서 경쟁할 수 있는 우수한 제품을 생산할 수 있도록 기술 개발에 힘써야 하겠다.

 

▲ top

 

home으로...