내장형  ISDN 카드



 

● 유리스텔에서 개발한 리눅스용 내장형 ISDN카드(모델명: Repid-128U)의 사양과 설치방법을
    소개한다.

● 네트워크 설정에 관한 기본적인 내용이 많이 들어있으므로 네트워크를 이해하는데 도움이 될
    것입니다.

    목차

    제품소개
    제품특징
    제품사양
    Rapid-128U 설치
            1) 설치준비
            2) Rapid-128U 카드설치
            3) LAN 환경설정
            4) 도메인(DNS)및 호스트 이름 설정
            5) 네임서버의 설정
            6) isdn 커널드라이브 컴파일 하기
            7) Rapid-128U의 PnP 설정
            8) ISDN script의 PnP 설정 변경
                ISDN PPP 데몬 실행
            1) 인터넷 사용자 계정 및 암호의 설정
            2) 인터넷 접속번호 지정 및 isdn 데몬의 실행
            3) 접속 해제
    IP Address 공유
    클라이언트 환경 설정
    사용상의 주의
    ISDN 카드의 사용 예

 

제품소개

    Rapid-128U 는 LAN 상의 여러 사용자가 한 개의 ISDN 회선으로 동시에 인터넷에 접속할 수 있도록 개발된 리눅스 OS 전용 ISDN 아답터 이다.

    Rapid-128U 는 다수의 사용자가 인터넷을 사용하는데 가장 경제적인 방법을 구현함과 동시에 저렴한 비용으로 고속의 인터넷 및 데이터 통신을 가능케 한 제품으로써, ISDN BRI(128Kbps)회선으로 무한대의 사용자를 접속시킬 수 있을 뿐만 아니라 공개 운영 체제인 리눅스의 모든 기능을 사용할 수 있으므로 자체 LAN망에서 파일서버, 프린터서버, FTP서버, Mail서버, DataBase서버, Proxy서버 그리고 차후 ISDN의 AO/DI 기능이 상용화되면 Web서버까지 소프트웨어 부가비용 없이 광범위하게 사용할 수 있다. 따라서 기존 윈도우NT 나 Unix등과 같은 상용 OS에서의 과다한 소프트웨어 비용을 절감할 수 있어 사무실, 학교, 연구소, 사설 BBS, 인터넷 사업자용 웹서버, 유통업, 호텔 ,레스토랑의 예약시스템 DBMS등으로 그 사용 범위가 점차 확대되고 있다.

    Rapid-128U 는 또한 기존 아날로그 모뎀의 데이터 전송속도의 3 ~ 5 배로 통신으로 인한 불필요한 시간소요를 줄여주며, 아날로그 통신에서의 가장 고민거리인 통신접속에러나 통신장애가 적으므로 쾌적한 통신환경을 제공해 준다.

 

제품의 특징

    1) 접속 사용자수 제한이 없다
    - 한 개의 ISDN 회선으로 동시에 여러 명이 데이터 통신을 할 수 있으며, 인터넷  ID 하나로 자체 LAN에 접속된 모든 사용자를 인터넷에 연결시켜준다.

    2) 접속 속도가 월등하다.
     - 다이얼링 기능이 매우 빠르므로 LAN상에서의 사용자가 인터넷 웹 브라우즈를 클릭함과 동시에 인터넷을 즐길 수 있다.(Auto Dial-Up mode와 자체 Proxy 설정하였을  경우)

     - 128Kbps의 안정된 속도로 전용선의 효과를 누리게 된다.

     - 리눅스 OS의 강력한 네트워킹 기능으로 최적의 네트워킹 상태를 설정할 수 있다.

    3) 다양한 기능으로 사용자 요구에 적합한 시스템 구축을 할 수 있다.
     - 자동 및 수동 다이얼 기능을 가지고 있어서 사용자가 예측할 수 없는 과다한 통신요금의 부담을 줄여주며 접속시간 설정을 자유자재로 조절할 수 있으므로 사용자 환경에 가장 적합한 환경을 .구축할 수 있다

     - 리눅스의 다양한 기능으로 LAN상의 각각의 사용자가 인터넷 웹 검색 과 PC통신을 동시에 할 수 있다. (텔넷, FTP, 메일검색도 동시에 가능하다.)

     - 관리자 기능으로 ISDN 회선의 접속상태 및 데이터 점유 폭(Bandwidth) 및 에러 내용을 확인 할 수 있으므로 유지보수에 획기적인 기능을 제공한다.

 

제품사양

 

 

 

Rapid-128U 설치

1) 설치 준비

    Rapid-128U를 설치하기 위한 시스템의 최소 사양

      CPU               : 팬티엄 150 MHz 이상
      Hard Disk        : 1.2 Gbytes 이상
      Memory 용량   : 32 Mbytes
      VGA card        : S3, Trident 96xx 와 동급(X-windows 지원 가능한 제품)
      확장슬롯          : ISA 슬롯 1개 이상
      Ethernet LAN Adapter    : 10 Mbps(NE2000호환)
      시스템 OS       : 리눅스(커널 2.0.35이상)

    본 설명서는 사용자가 리눅스 OS를 위의 시스템 사양에 맞게 설치하였다고 가정하며 리눅스 설치에 대해서는 리눅스 관련 문서를 참조하시기를 권고합니다.

2) Rapid-128U 카드 설치

    그림과 같이 Rapid-128U를 사용자 시스템의 전원을 끈 상태에서 적당한 ISA 슬롯에 안전하게 장착한 다음 리눅스 시스템을 부팅하신 후, 시스템 로긴을 한다.

      ALzzA Linux release 5.1-kr (PatchMan Forever)
      Kernel 2.0.35 on an i686
      login: root
      Password:
      Last login: Fri Feb 26 18:45:48 from test2
      [root@urix /root]#

3) LAN 환경 설정

    인터넷에 가상IP(IP Masquerade: NAT기능)를 사용하기위해 LAN device의 IP를 다음 중 하나를 사용하기를 권고 한다.(내부용 어드레스)

      - A class 일 경우
      10.0.0.0                        Netmask : 255.0.0.0

      - B class 일 경우
      172.16.0.0 ~ 172.31.0.0         Netmask : 255.255.0.0

      - C class 일 경우
      192.168.0.0 ~ 192.168.255.0     Netmask : 255.255.255.0

    사용자 LAN device의 ethernet 인터페이스 환경을 다음과 같이 설정해야한다.

      [root@urix /etc]# more /etc/sysconfig/network-scripts/ifcfg-eth0
      DEVICE=eth0
      IPADDR=210.111.208.254
      NETMASK=255.255.255.0
      ONBOOT=yes
      BOOTPROTO=none
      USERCTL=no
      BROADCAST=210.111.208.255
      NETWORK=210.111.208.0

    그림에서 굵은 글씨체가 사용자가 설정할 IP주소이며 사용자에 맞게 수정해야한다.

4) 도메인 이름(DNS) 및 호스트 이름 설정

    사용자 호스트와 도메인 이름을 IP 주소로 변환해주기 위해 다음과 같은 파일을 설정해 준다.

      [root@urix /etc]# /etc/resolv.conf
      search urixtel.co.kr
      nameserver 210.111.208.254

    여기서 도메인은 urixtel.co.kr 이며 이는 사용자 시스템의 초기 설정시 부여한 이름이므로 사용자의 도메인을 입력한다. 또한 네임서버의 IP 주소도 사용자의 네임서버의 IP 주소를 입력한다.

    그리고 호스트 이름과 로컬호스트 IP를 다음과 같이 설정 한다.

      [root@urix /etc]# more /etc/hosts
      127.0.0.1       localhost       loopback
      210.111.208.254 urix.urixtel.co.kr      urix

    호스트 환경 설정은 다음과 같다.

      [root@urix /etc]# more /etc/host.conf
      order hosts,bind
      multi on

5) 네임 서버의 설정

    네임서버의 설정을 위해 다음의 4개 파일을 수정한다.
    ※ 시스템에 따라 파일이 다를 수 있다.

      [root@urix /etc]# cd /var/named
      [root@urix named]# ls
      named.ca                named.hosts     named.local     named.rev

    다음은 named.hosts 파일의 내용이며 사용자는 사용자 호스트명 도메인 명 그리고 IP주소를 지정하면 됩니다.(굵은 글씨체가 사용자 입력 부분이다.)

      [root@urix named]# more named.hosts
      ; Authoritative data for Berkeley.EDU (ORIGIN assumed Berkeley.EDU)
      ;
      @               IN      SOA     urix.urixtel.co.kr. root.urix.urixtel.co.kr. (
      1998090501      ; Serial
      10800           ; Refresh 3 hours
      3600            ; Retry   1 hour
      3600000         ; Expire  1000 hours
      86400           ; Minimum 24 hours
      )
      IN      NS      urix.urixtel.co.kr.

      ; local mail is distributed on vlager
      IN      MX 10   urix
      ;
      ; loopback address

      localhost        IN     A         127.0.0.1
      ur       IN     CNAME     urix
      urix     IN     A         210.111.208.254

      ; urix Ethernet
      cache    IN     A         210.111.208.254
      www      IN     A         210.111.208.254

    여기서 사용자는 사용자의  도메인명을 urixtel.co.kr과 바꿔 쓰고 호스트명 urix를 사용자 호스트 명으로 바꿔 쓰면 된다. 로컬 호스트는 위의 내용 그대로 사용하며, 사용자의 호스트 별명(그림에서는 ur 임) 은 사용자 옵션이므로 필요할 경우에는 제외해도 상관없다. 사용자 호스트명에 해당하는 IP어드레스를 위의 그림과 같이 설정하고 향후 프록시나 웹서버를 설정하기위해 Cache 어드레스와 www 어드레스를 사용자 호스트 IP 주소로 입력한다.

    다음은 named.local 파일의 내용이며 방법은 위의 named.hosts 부분과 동일하다.

      [root@urix named]# more named.local
      @       IN      SOA     urix.urixtel.co.kr. root.urix.urixtel.co.kr.  (
                                          1997022700 ; Serial
                                          28800      ; Refresh
                                          14400      ; Retry
                                          3600000    ; Expire
                                          86400      ; Minimum
      )
      IN      NS      urix.urixtel.co.kr.
      1               IN      PTR     localhost.

    다음은 named.rev 파일의 내용이며 입력 방법은 사용자 호스트 IP 주소의 역순으로 IP주소의 맨 마지막 숫자를 기입하고 사용자 호스트 & 도메인 명을 입력 한다.

      [root@urix named]# more named.rev
      ;
      ;       @(#)named.rev   1.1     (Berkeley)      86/02/05
      ;

      @     IN    SOA    urix.urixtel.co.kr. root.urix.urixtel.co.kr. (
                                 1998090501   ; Serial
                                 10800        ; Refresh 3 hours
                                 3600         ; Retry   1 hour
                                 3600000      ; Expire  1000 hours
                                 86400        ; Minimum 24 hours
        )
              IN      NS      urix.urixtel.co.kr.
      ; RFC 1101 stuff
      ; real hosts
      254     IN      PTR     urix.urixtel.co.kr.

    다음은 named.ca가 있지만 이 파일은 수정할 필요가 없다.

    마지막으로 /etc/named.boot을 확인하도록 하며 만약 다음의 설정과 다를 경우 수정하도록 한다.

      [root@urix /etc]# more named.boot
      ;
      ; a caching only nameserver config
      ;
      directory                                   /var/named
      cache         .                            named.ca
      primary       urixtel.co.kr                  named.hosts
      primary       208.111.210.IN-ADDR.ARPA  named.rev
      primary         0.0.127.in-addr.arpa          named.local
      [root@urix /etc]#

    (위에서 urixtel.co.kr 과 208.111.210. 은 자신이 시스템에 맞게 수정해야 한다)

6) isdn 커널 드라이브 컴파일 하기

    isdn 커널 드라이브 모듈을 탑재하는 방법을 설명한다. 디스켓을 사용자 시스템의 플로피드라이브에 삽입하고 다음명령으로 사용자 시스템에 복사한다.

      [root@urix /etc]# cd /usr/src/redhat/RPMS/i386
      [root@urix i386]# mcopy a:isdn*
      [root@urix i386]# ls -l
      total 689
      -rw-r--r--   1 root     root       700656 Jan  2  1997 isdn4k-utils-9803020842-1
      .i386.rpm

    다음은 사용자 시스템에 복사된 isdn 커널 오브젝트를 사용자 시스템에 설치한다. 먼저 시스템에 복사된 isdn 커널 오브젝트 모듈이 설치될 파일들을 rpm 명령을 사용하여 확인을 하도록 한다.

      [root@urix i386]# rpm -qpl isdn4k-utils-9803020842-1.i386.rpm | more
      /etc/Idata
      /etc/isdn
      /etc/isdn/isdn.conf-
      /etc/ppp
      /etc/ppp/ioptions
      /etc/ppp/pap-secrets
      /etc/vboxd.conf
      /etc/vboxgetty.conf
      /sbin
      /sbin/netdown
      /sbin/netdown1
      /usr/X11R6/include/X11/bitmaps/netactive
      /usr/X11R6/include/X11/bitmaps/netactiveout
      /usr/X11R6/include/X11/bitmaps/netinactive
      /usr/X11R6/include/X11/bitmaps/netstart
      /usr/X11R6/include/X11/bitmaps/netstop
      /usr/X11R6/include/X11/bitmaps/netwaiting
      /usr/X11R6/lib/X11/app-defaults/XISDNLoad
      /usr/bin/autovbox
      /usr/bin/isdnrep
      /usr/bin/vbox

    이제 isdn커널 모듈을 위의 디렉토리에서 설치한다.

      [root@urix i386]# rpm -i isdn4k-utils-9803020842-1.i386.rpm
      [root@urix i386]#

7) Rapid-128U의 PnP 설정

    다음으로 Rapid-128U의 ISA PnP 설정을 위해 /etc/isapnp.conf 파일을 수정한다. 먼저 사용자 시스템의 PnP 디바이스를 찾기위해 다음 명령을 입력하고 그 출력 파일을 vi 에디터로 수정한다.

      [root@urix /root]# cd /etc
      [root@urix /etc]# pnpdump > /etc/example_pnp
      [root@urix /etc]# vi  /etc/example_pnp

    사용자 시스템의 PnP 자원이 /etc/example_pnp에 수록되어 있으면 이 샘플 파일의 다음 부분을 수정하도록 한다. 단 다음의 수정부분은 사용자 시스템의 다른 장치의 I/O 포트 및 IRQ와 충돌하지 않도록 사용자 시스템에 맞게 설정하여야 한다.

      ...중략
      (CONFIGURE SYG2000/11 (LD 0
      ...중략
      #       Start dependent functions: priority functional
      #       Logical device decodes 16 bit IO address lines
      #             Minimum IO base address 0x1500
      #             Maximum IO base address 0x17c0
      #             IO base alignment 64 bytes
      #             Number of IO addresses required: 32
      (IO 0 (BASE 0x1500))    * 참고 : I/O포트 = 0x1500
      #       Logical device decodes 16 bit IO address lines
      #             Minimum IO base address 0x1100
      #             Maximum IO base address 0x13c0
      #             IO base alignment 64 bytes
      #             Number of IO addresses required: 64

      (IO 1 (BASE 0x1100))    ※ 참고 : I/O포트 = 0x1100
      #       IRQ 3, 4, 5, 9, 10, 11, 12 or 15.
      #             High true, edge sensitive interrupt (by default)
      (INT 0 (IRQ 3 (MODE +E)))     ※ 참고 : IRQ = 3

      #     End dependent functions
      #     Vendor defined tag:  84 0d 00 00 00 00 00 00 00 00 00 00 00 00
      #     Vendor defined tag:  84 06 00 00 00 00 00
      #     Vendor defined tag:  84 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4f
      #     Vendor defined tag:  84 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      (ACT Y)         ※ 참고 : 반드시 ‘#’를 제거하십시요
      ))
      # End tag... Checksum 0x00 (OK)

      # Returns all cards to the “Wait for Key” state
      (WAITFORKEY)

    위의 예에서는 Rapid-128U를 I/O 포트 0x1500, 0x1100 번지에, 그리고 IRQ 를 ‘3’으로 설정한 예이다.

    다음으로 이 샘플파일을 다음과 같이 ISA PnP 환경설정 파일로 이름을 변경한다. 참고로 현재의 isapnp.conf을 먼저 다른 이름으로 복사해 놓도록 하여 향후 이전 환경이 필요할 때 참고하도록.

      [root@urix /etc]# cp /etc/isapnp.conf /etc/isapnp.org
      [root@urix /etc]# cp /etc/example_pnp /etc/isapnp.conf

8) ISDN script의 PnP 설정 변경

    이제 PnP 환경설정 파일을 변경하였으므로 ISDN 쉘 스크립트를 다음과 같이 수정한다. Isdn4linux 커널모듈이 제대로 설치가 되었다면 isdn 구동 쉘 스크립트가 설치된 디렉토리 /usr/sbin 로 이동하여 isdn 쉘 스크립트를 수정한다.
    다음은 isdn shell script의 리스트 이다.

      [root@urix sbin]# more isdn
      #!/bin/sh
      #
      # BE SURE TO EDIT THIS FILE BEFORE USING IT !!!!!
      # this is an example script to use with modules
      #
      # don’t forget to edit the files
      #     /etc/ppp/pap-secrets or
      #     /etc/ppp/chap-secrets
      #
      test -f /usr/sbin/isdnctrl || exit 0

      LOCAL_NUMBER=”0”                        # 032 = area code for inchon
      REMOTE_NUMBER1=`/usr/sbin/it INCOMMING_NUM` #Incomming NUM
      REMOTE_NUMBER2=`/usr/sbin/it OUTGOING_NUM`      #Outgoing NUM
      LOCAL_IP=`/usr/sbin/it LOCAL_ADD`
      REMOTE_IP=`/usr/sbin/it REMOTE_ADD`
      LOCAL_IP2=`/usr/sbin/it LO_ADDRESS`
      REMOTE_IP2=`/usr/sbin/it RE_ADDRESS`
      IPF=`/usr/sbin/it IPF`
      ID=`/usr/sbin/it ID`
      TIME=`/usr/sbin/it TIME`
      SP=`/usr/sbin/it SPEED`
      SP=`/usr/sbin/it SPEED`
      DEVICE=”ippp0”
      DEVICE1=”ippp1”
      RE=`ps |cut -c 21-25 |grep xinit`
      case “$1” in
      start)
              # additional for channel bundling:
              #       DEVICE1=”ippp1”
              VERSION=`cat /proc/version | awk ‘{ print $3 }’ `
              # when setting the environment variable MODPATH you 

           # can omit the full path.

              SYSPATH=”/sbin/”

              # load VJ-compression module
              # if VJ compression is compiled into kernel .. you can omit this
              #$SYSPATH\/insmod /lib/modules/$VERSION\/net/slhc.o

              # load isdn4linux and teles driver
              # if these modules are compiled into kernel -> remove this lines
         $SYSPATH\/modprobe hisax type=4 protocol=2 irq=3 io0=0x1500 io1=0x1100
      #  $SYSPATH\/modprobe hisax type=4 protocol=2 irq=10 io0=0x580 io1=0x180
      #  $SYSPATH\/modprobe hisax type=4 protocol=2 irq=10 io0=0x580 io1=0x180
              /usr/sbin/isdnctrl addif  $DEVICE     # Create new interface ‘DEVICE’
      # Set incoming phone-number
              /usr/sbin/isdnctrl addphone $DEVICE in $REMOTE_NUMBER1  
      # Set outgoung phone-number
      /usr/sbin/isdnctrl addphone $DEVICE out $REMOTE_NUMBER2  
      # Set local EAZ/usr/sbin/isdnctrl eaz $DEVICE $LOCAL_NUMBER
      # for sync PPP: set Level 2 to HDLC/usr/sbin/isdnctrl l2_prot $DEVICE hdlc      
      # not really necessary, ‘trans’ is default/usr/sbin/isdnctrl

       l3_prot $DEVICE trans     
      # encap the IP Pakets in PPP frames
      /usr/sbin/isdnctrl encap $DEVICE syncppp     
      # Hangup-Timeout is 600 sec.
      /usr/sbin/isdnctrl huptimeout $DEVICE $TIME    
      # Hangup before next Charge-Info
      /usr/sbin/isdnctrl chargehup $DEVICE off     
      # Accept only configured phone-number
      /usr/sbin/isdnctrl secure $DEVICE on         
      # additional for channel bundling
      # /usr/sbin/isdnctrl addif  $DEVICE1      # Create new interface ‘DEVICE’
      # Create new slave interface ‘DEVICE1’
      /usr/sbin/isdnctrl addslave $DEVICE $DEVICE1  
      # Set incoming phone-number
      /usr/sbin/isdnctrl addphone $DEVICE1 in $REMOTE_NUMBER1  
      # Set outgoing phone-number
      /usr/sbin/isdnctrl addphone $DEVICE1 out $REMOTE_NUMBER2   

      # Set local EAZ ..
      /usr/sbin/isdnctrl eaz $DEVICE1 $LOCAL_NUMBER             
      # for sync PPP: set Level2 to HDLC
      /usr/sbin/isdnctrl l2_prot $DEVICE1 hdlc
      # not really necessary, ‘trans’ is default
      /usr/sbin/isdnctrl l3_prot $DEVICE1 trans     
      # encap the IP Pakets in PPP frames
      /usr/sbin/isdnctrl encap $DEVICE1 syncppp     
      # Hangup-Timeout is 600 sec.
      /usr/sbin/isdnctrl huptimeout $DEVICE1 $TIME    
      # Hangup before next Charge-Info
      /usr/sbin/isdnctrl chargehup $DEVICE1 off     
      # Accept only configured phone-number
      /usr/sbin/isdnctrl secure $DEVICE1 on
      /sbin/ifconfig $DEVICE $LOCAL_IP pointopoint $REMOTE_IP metric 1
      #      /sbin/ifconfig $DEVICE1 $LOCAL_IP2 pointopoint $REMOTE_IP2 metric 1
      ##     /sbin/route add default $DEVICE
      /sbin/ipfwadm -F -p deny
      /sbi

      n/ipfwadm -F -a m -S $IPF/24 -D 0.0.0.0/0
      # /sbin/ifconfig $DEVICE $LOCAL_IP pointopoint $REMOTE_IP -arp -broadcast
      # /sbin/route add
      # start the (new) deamon:
      # -----------------------
      # ‘user myusername’ : set username to get the right password from the
      #    pap/chap-secrets file(s)
      # ipcp-accept-local ipcp-accept-remote : accept every IP address
      # -vjccomp -ac -pc  : _my_ remote side doesn’t support this, so disable it
      # -bsdcomp : i4l-syncPPP driver doesn’t support bsd-compression
      # debug    :  enable debugging, WARNING: ipppd will also log your password
      # useifip  : get IP address information form the network interface
      # /dev/ippp0 /dev/ippp1 /dev/ippp2 : connect to 3 devices for max.
      #     three connections at the same time
      /usr/sbin/ipppd user $ID \
      ipcp-accept-local ipcp-accept-remote \

                      -vj \
                      -vjccomp \

                       -ac \
                      -pc \
                      -detach \
                      -bsdcomp \
                      mru 1524 \
                      mtu 1500 \
                      useifip \
                      debug \
                      papcrypt \
                      login \
                      netmask 0.0.0.0 \
                      +mp \
                      defaultroute \
                      /dev/ippp0 /dev/ippp1 &
      if test “$RE” = “xinit” ; then
                      /usr/bin/xmonisdn &
                      /usr/bin/xisdnload_$SP &
              fi
              #       /sbin/isdnctrl dial ippp0
                      #/sbin/isdnctrl addlink ippp0
              ;;
      stop)
              echo “Stop ISDN......”
              ifconfig $DEVICE down
              isdnctrl delif $DEVI

      CE
              killall -9 ipppd
              killall -9 xmonisdn
              killall -9 xisdnload_64
              killall -9 xisdnload_128
              killall -9 xisdnload_auto
              /sbin/ipfwadm -F -f
              ;;
      restart)
              echo “Restart ISDN........”
              isdn stop
              killall -9 xmonisdn

              killall -9 xisdnload_64
              killall -9 xisdnload_128
              killall -9 xisdnload_auto
              /sbin/ipfwadm -F -f
              ;;
      restart)
              echo “Restart ISDN........”
              isdn stop
              isdn start
              ;;
      down)
              echo “Down ISDN...........”
              isdn stop
              rmmod hisax
              rmmod isdn
              ;;
      *)
              echo “Usage: mppp {start|stop|restart|down}”
              exit 1
      esac

      exit 0

    그림에서 굵은 글씨체가 Rapid-128U의 io어드레스 및 irq 번호이며 pnp 설정파일에서 지정한 값으로 수정한다.

    위의 쉘 스크립트를 수정한 후 Rapid-128U의 자원을 리눅스 PnP 자원에 업데이트하기위해 다음과 같이 isapnp명령을 실행 한다.

      [root@urix /etc]# isapnp /etc/isapnp.conf
      Board 1 has Identity 17 00 00 00 0b 00 20 27 4f:  SYG2000 Serial No 11 [checksum
       17]
      [root@urix /etc]#

    이로써 Rapid-128U의 I/O, IRQ 설정은 완료 되었으며 이제부터 isdn 커널 드라이브는 Rapid-128U 의 자원과 인터페이스되어 isdn 드라이브를 구동할 수 있다.

 

ISDN PPP 데몬 실행

1) 인터넷 사용자 계정 및 암호의 설정

    사용자가 인터넷 서비스 업체의 사용자 ID 와 Password를 다음의 파일에 지정한다.

      [root@urix sbin]# cd /etc/ppp
      [root@urix ppp]# more pap-secrets
      # Secrets for authentication using PAP
      # client                server  secret  IP addresses
      urixtel         *       urix0100                

    그림에서 urixtel은 사용자 계정(ID)이고 urix0100은 사용자의 암호이며 이 부분을 사용자의 ID, Password로 변경합니다.(위의 경우는 ISP가 PAP를 사용자 인증에 사용하는 경우이다. ISP가 CHAP를 쓴다면 chap-secrets를 써야한다)

2) 인터넷 접속번호의 지정 및 isdn 대몬의 실행(인터넷에 접속 방법)

    사용자의 ID와 암호를 위 1)과 같이 정확하게 입력하였다면 이제 리눅스의 X-윈도우를 실행하여 isdn ppp 대몬을 구동한다. 먼저 startx 명령을 사용하여 X-윈도우를 실행한다.

      [root@urix ppp]# startx

    이제 사용자 시스템은 리눅스 X-윈도우 창이 열리고 시스템 관리 터미널 창에 다음 명령을 실행한다.

      [root@urix ppp]# confisdn

    시스템 윈도우에 다음과 같은 confisdn 작업 윈도우가 생성되면 사용자의 ID와 인터넷 서비스 업체의 ISDN 접속 전화번호를 입력한다.

      Your ID = urixtel
      Remote Phone Number = 01414 (이 전화번호는 코넷의 ISDN 접속번호 임)

    여기서 Hangup-Timeout은 isdn 데몬이 실행되어 인터넷 서비스 업체의 서버에 전화 접속이 되어 LAN상에서 데이터 패킷이 없는 Idle 상태에서 리눅스 서버가 ISDN회선과 접속을 유지하는 최대 시간으로 단위는 초이다.. 여기서 만약 LAN상의 사용자가 이 시간 내에 패킷을 발생하면(웹 서치 등) 리눅스 서버는 그 패킷을 ISP에게 보내기위해 계속 접속상태를 유지한다.(Auto-dialing Mode)
    또한 이 값을 0으로 지정하게 되면 리눅스 서버는 계속 인터넷 서버와 접속상태를 유지하게 된다.(leased Mode)

    그림 confisdn 윈도우

    다음으로 Speed-64-128 옵션은 사용자가 인터넷 접속 속도를 지정하는 항목으로 64로 지정하면 64Kbps로 인터넷과 접속되며 이는 ISDN의 B챤넬 1개를 점유한다. 이 값을 128로 설정하면 2개의 B 챤넬을 점유하게 되고 데이터 전송속도는 128Kbps로 된다. 사용자가 128로 지정하였을 때 리눅스 서버는 LAN상의 데이터 패킷의 양에 따라 자동으로 다음 챤넬을 다이얼링 한다.

    위의 각 옵션을 입력하고 나면 Save 버턴을 누른다. 이제 ISDN ppp 데몬이 실행되면서 인터넷과 접속하기 위해 다음과 같은 실행 절차를 수행한다.

        [root@urix ppp]# confisdn
      ippp0 added
      EAZ/MSN for ippp0 is 0
      Layer-2-Protocol for ippp0 is hdlc
      Layer-3-Protocol for ippp0 is trans
      Encapsulation for ippp0 is syncppp
      Hangup-Timeout for ippp0 is 300 sec.
      Charge-Hangup for ippp0 is off
      Security for ippp0 is on
      ippp1 added as slave to ippp0
      EAZ/MSN for ippp1 is 0
      Layer-2-Protocol for ippp1 is hdlc
      Layer-3-Protocol for ippp1 is trans
      Encapsulation for ippp1 is syncppp
      Hangup-Timeout for ippp1 is 300 sec.
      Charge-Hangup for ippp1 is off
      Security for ippp1 is on
      [root@urix ppp]#

    시스템 관리 터미널 창에서 위 그림과 같이 데몬이 실행되면 다음과 같은 isdn 접속상태 모니터 창과 다이얼링 창 2개가  생성된다.
    그림 ISDN 상태 모니터 창
    그림 ISDN 상태 다이얼 창

    위의 그림은 isdn 대몬이 실행되어 실제 인터넷 서버와 인증절차를 거쳐 PPP 접속이 이루어진 상태를 나타내고 있다. 그림에서 ISDN상태 모니터 창의 색이 녹색이면 인터넷 서버와 접속이 종료된 상태를 나타낸다.

    관리자 터미널 창에서 isdn start 명령을 실행하면 이전에 confisdn으로 설정한 값으로 바로 인터넷에 접속을 시도하고 위의 아이콘 창들이 나타나게 된디.

3) 접속 해제

    사용자가 인터넷 접속을 해제하는 방법은 다음 2가지 방법이 있다.

    * Isdn 다이얼 창을 왼쪽 마우스 버턴으로 클릭
    * 관리 터미널에 isdn down명령을 실행

    isdn 다이얼 창을 클릭하면 ppp데몬은 계속 실행하고 단지 인터넷 서버와 ISDN 접속만 해제한다. 이 모드에서는 LAN상의 사용자가 패킷을 발생(웹 탐색등)시키면 자동으로 인터넷 서버와 접속절차를 수행한다.

    사용자가 isdn down명령을 실행하면 리눅스 서버의 isdn ppp 대몬을 제거하고 인터넷 서버와 완전히 접속을 해제한다.

 

IP Address 공유

    사용자의 리눅스 서버와 같은 LAN에 연결된 클라이언트 (리눅스와 같은 LAN에 연결된 PC)는  리눅스에 할당된 IP Address를 공유해서 인터넷을 사용하므로 리눅스에는 IP Masquerade나 Proxy Server를 설정해주어야한다. 이부분은 설명이 복잡하므로 IP Masqueradesms 리눅스 월드 98년 1월호의 “IP masquerade” 기사를 참조하기 바란다. Proxy Server에 관한 글은 98년 9월호의 “리눅스 웹사이트 입문” 글을 참조하기 바란다.

    이 경우 리눅스는 두개의 인터네이스를 갖는데 한 개는 ISDN 포트 다른 하나는 이더넷포트이다. 따라서 리눅스의 이더넷 카드에는 위에서 지적한 내부용 어드레스(192.168.1.X)중 하나를 할당한다. 보통은 192.168.1.1을 사용한다.
    다른 피시들은 위의 리눅스와 중복되지않는 다른 주소를 쓰면 된다.

 

클라이언트 환경 설정

    각각의 클라이언트 PC는 리눅스 서버의 이더넷 카드 주소(192.168.1.1)을 디폴트게이트웨이로 지정해야한다. 그리고 네임서버 주소는 리눅스에 네임서버가 설치되어 있다면 192.168.1.1을 지정하고 리눅스에 네임서버가 없으면 ISP의 네임서버 주소를 지정하면 된다.

    그외의 지정 방법은 랜에서 전용선으로 인터넷을 사용하는 경우와 같다.

 

ISDN 카드 사용시의 주의점

    아직 국내의 ISP들은 ISDN 전용선 서비스를 제공하고 있지 않으므로 리눅스에서 ISDN 카드를 써서 인터넷을 사용하면 일반 음성전화 요금과 동일한 요금을 부담해야 한다. 그리고 128k로 연결하면 전화선 두개를 사용하는 요금 즉 3분당 100원을 부담해야 한다. (이 요금은 인터넷 사용료와는 별개다) 또한 ISDN 연결시는 고정 IP를 받지 못하므로 리눅스에 서버를 구축할 수 없다는 문제점이 있다. 하지만 올 6월 경에는 ISDN 전용선이 도입돼므로 그때는 고정 IP를 받아서 웹서버나 메일서버를 리눅스에 구축해 128k 속도로 사용자에게 서비스 할수 있게 된다.

 

ISDN 카드의 사용 예

    내장 ISDN 카드는 16비트 카드이므로 슬롯이 있을 경우 4개 정도를 리눅스에 꼽아 BBS를 운영하는데 사용할수 있다. 이 경우는 모뎀보다 2배 이상 빠른 속도로 서비스를 제공할수 있다. 또 원격지에서 큰 파일을 송수신할 필요가 있을때도 이 카드를 쓸수 있고 먼거리의 지사에서 본사의 랜에 있는 유닉스 시스템에 접속할 경우도 사용할수 있다. 즉 모뎀을 쓰자니  속도가 느리고 전용선(56k 또는 128k)을 쓰자니 장비값 및 월 회선비가 너무 많이 든다면 리눅스에 ISDN 카드를 쓰는 걸 검토해 봄즉 하다.

    즉 시내의 두사무소를  하루 120분씩 ISDN으로 128k 연결을 하면 월 전화료는 월 12만원이다.(120분/3분 * 100원 * 30일) 이때는 128K 시내 전용선의 월 사용료 13만원보다 더 경제적이다. ISDN은 접속속도가 빠르므로 전용선보다 크게 불편하지도 않으므로 검토할 만한 방안이다.

 

편집자 주)

    이글은 URIX-TEL에서 제공한 자료를 기초로 리눅스 월드 편집부에서 편집하였습니다. 리눅스 월드는 상기 ISDN 카드의 성능이나 위에 적은 기능의 이상 유무에 대해서는  어떠한 평가나 보증을 하지 않습니다.




▲ top

home으로...