call-back mini HOWTO
 Pawel Skonecki ([email protected])
 v1.1a, June 2000
 �|��F���J��G ([email protected])
 ���{���Fv1.1a-j 2000�N 8�� 3��

 ���̕����� Linux �V�X�e���ƃ��f����g���ăR�[���o�b�N(�܂�Ԃ��d�b)��
 �ݒ肷���@�ɂ‚��ďq�ׂĂ��܂��B Anna �̔E�ςɐ[�����ӂ��܂��B
 ______________________________________________________________________

 �ڎ�

 1. �͂��߂�
    1.1 ���ӌ�
    1.2 �z�t�ɂ‚���

 2. �菇
    2.1 PART I: ����Ńl�b�g�H
    2.2 PART II: ���f���ɂ‚���
    2.3 PART III Linux �ɓd�b�����
    2.4 PART IV  Linux ���d�b�����

 3. PART V �v��
 4. ���{���ɂ‚���

 ______________________________________________________________________

 1.  �͂��߂�

 1.1.  ���ӌ�

 ���̕����ɂ‚��Ă̂��ӌ���҂����Ă��܂��B���͂��̕�����쐬���邽��
 �ɁA�o���邾�����S�ɏ���W�߂�w�͂�܂����B�����ԈႢ��‚����
 ���Ƃ��͂ǂ������m�点���������B�񌾂����ӌ���}���܂��B���̂悤��
 �v�������̕������ɂ悢��̂ɂ��܂��B����ɓ�����̂͂��܂��܂���
 ���A�܂��͑S���̓�e�ɖڂ�ʂ���Ă���ɂ��Ă��������B

 1.2.  �z�t�ɂ‚���

 ���̕�����LDP (Linux Documentation Project)�̏�̂�ƂŔz�t�ł���
 ���B��������ł��Ȃ��Ȃ璘�҂ƘA������Ă��������B���̕����̓t
 ���[�ł��B

 2.  �菇

 2.1.  PART I: ����Ńl�b�g�H

 �قƂ�ǂ̐l�͎d����ŃC���^�[�l�b�g��g���Ă��܂��B�������A����ł���
 ���͎d����ȊO�̏ꏊ�ł��т��уl�b�g��K�v�Ƃ��邱�Ƃ�����܂��B�ݑ�
 �ł̍�Ƃ́A��Ђ���̍�Ƃ������オ��ɂȂ邩����܂���B��
 �Ƃ�悢����@�� Linux �̃T�[�o�ɃR�[���o�b�N�\�t�g�E�F�A��C���X�g
 �[�����邱�Ƃ��Ǝv���܂��B�R�[���o�b�N�́A��p���Е��S�Ƃ��A���X�g��
 ���d�b�ԍ��ɍă_�C�A���ł���悤�ɂ��܂��B�^�p���@��Љ�܂��傤�B��
 �f�����R�[���o�b�N���Ă�悢�Ƌ��‚���Ă���l�́A�܂� Linux �̃T�[�o
 �ɓd�b����ĔF�؂�󂯂܂��B���[�U���ł́A���f���� "���f����ؒf��
 ��" �Ƃ����ݒ�ɕύX���Ă����ƁA������ Linux �̓��[�U�ɓd�b��܂��B
 ���[�U�͍ēx�F�؂�󂯂܂��B�ڑ�����������ƃT�[�o�ɂ͉ۋ��������
 ���B���[�U�͐ڑ���J�n�����Ƃ������̗���𕥂��̂ł��B���‚���Ă��Ȃ�
 �l�����ɃR�[���o�b�N���g���Ȃ��悤�ɁA�R�[���o�b�N�v���O�����ɂ͓�x��
 �ƍ���lj��I�v�V����������܂��B�Г�l�b�g���[�N��C���^�[�l�b�g�����
 �ڑ������ɃA�N�Z�X�҂��ł��܂��B�R�[���o�b�N�͂ƂĂ�Z�ʂ�������
 ���B�ȉ��ALinux �V�X�e���ł̃R�[���o�b�N�T�[�o�̃R���t�B�O���[�V������
 ���J���A���g���̃R���s���[�^�ōēd�b�ڑ���ݒ肷���@��Љ�Ă���
 ���B

 2.2.  PART II: ���f���ɂ‚���

 �Ǘ��҂͂��܂��܂Ȏ�ނ̃��f����g��������܂����A���f����w������Ƃ�
 �́A�����‚��̒��ӎ�����Y��Ă͂����܂���B

 o  Linux �œ����Ȃ��̂ŁAWin-Modem �͔���Ȃ��B

    �󒍁FWin-Modem �� Linux ��ŕK���������Ȃ��킯�ł͂Ȃ��悤�ł�
    ���A Win-Modem �ŃR�[���o�b�N�����܂��������ǂ����͕s���ł��B The
    Winmodems-and-Linux HOWTO ��Modem-HOWTO �Ȃǂ�Q�l�ɂ��Ă��������B
    Modem HOWTO �� JF �ɘa�󂪂���܂��̂ŎQ�l�ɂ��Ă��������B Modem-
    HOWTO (�a��) <http://www.linux.or.jp/JF/JFdocs/Modem-HOWTO.html>

 o  �O�t�����f���͓����f���������B

 o  ISA �X���b�g�ɂ��������f����PCI �X���b�g�Ŏg����̂������߂�
    ���B (�����ʂ̂�̗p�� PCI �X���b�g��c���Ă������Ƃ��ł��܂�)

 o  Plug&Play ���f���͎g�p���Ȃ��B �����łɎg�p���Ă���Ȃ�A
    Plug&Play �I�v�V�����𗘗p���A�󂢂Ă��� com �|�[�g��Ƀ��f����ݒ�
    ���܂� (Plug&Play-HOWTO ��Q�Ƃ��Ă�������)�B

 �K�؂ȃ��f����肵����A�V�X�e���Ƀ��f����ݒ肵�Ȃ���΂Ȃ�܂���B
 ���f�����A�ǂ� com �|�[�g��ɂ��邩��`�F�b�N���܂��B���ꂩ��n�[�h
 �E�F�A�� /dev/modem �ɃV���{���b�N�����N����܂��B���Ƃ��΁A�Q�–ڂ�
 com �|�[�g�Ƀ��f�����‚Ȃ����Ă���Ȃ�A���̂悤�ɂ��܂��B

 ln -s /dev/cua1 /dev/modem

 �����N��m�F���Ă����܂��B

  lrwxrwxrwx 1 root uucp 9 Sep 19 19:10 /dev/modem -> /dev/cua1

 �ʂ� com �|�[�g��Ƀ��f�����‚Ȃ����Ă���Ȃ�A���f���f�o�C�X�� com �|
 �[�g�͎��̂悤�Ȋ֌W�ɂȂ��Ă��܂��B

  /dev/cua0 is com1

   /dev/cua1 is com2

   /dev/cua2 is com3

   /dev/cua3 is com4

 �V�����J�[�l���ł͎��̂悤�ɂȂ��Ă��܂��B

  /dev/ttyS0 is com1

   /dev/ttyS1 is com2

   /dev/ttyS2 is com3

   /dev/ttyS3 is com4

 minicom ��g���Đݒ��`�F�b�N���܂��B

 �󒍁Fkernel-2.2.x �� /usr/src/linux/Documentation/Changes �� General
 Information �Ɏ��̂悤�ȋL�q������܂��B /dev/ttyS* �Őݒ肵���ق�����
 ���ł��傤�B

 Also, please remember that cua* devices are now obsolete.  Switch to
 the corresponding ttyS* device instead (e.g., cua0 -> ttyS0, cua1 ->
 ttyS1, etc.).  cua* �f�o�C�X�͌��݂͎g���Ă��܂���B�����ɑΉ�����
 ttyS* �f�o�C�X�ɕύX���܂��B (���Ƃ��΁Acua0 �� ttyS0 �ɁAcua1 ��
 ttyS1 �̂悤�ɂȂ�܂��B)

 �܂� mgetty �̃p�b�P�[�W�� doc �̃f�B���N�g���� ttyS-cua.txt �Ƃ���
 �t�@�C�����Y�t����Ă���̂ŎQ�Ƃ��Ă��������B

 2.3.  PART III Linux �ɓd�b�����

 Linux ��ɃA�N�Z�X�”\�ȃR�[���o�b�N����ŏ��̎菇�́A�J�[�l���ɓK��
 �ȃp�����[�^��ݒ肷�邱�Ƃł��B�J�[�l���� ppp ���g�ݍ��܂�Ă��邩��
 ������`�F�b�N���܂��B���g���̃J�[�l���� ppp ���g�ݍ��܂�Ă��Ȃ��A��
 �邢�̓��W���[���ɂ�Ȃ��Ă��Ȃ��Ȃ�A�J�[�l����č\�z���Appp ��g�ݍ�
 �܂Ȃ���΂����܂���B���ڂ������� Kernel-HOWTO �ɂ���܂��B�ł���
 ���܂��ˁB�K�؂ȃJ�[�l����g���ł��ˁB����ł̓V�X�e���Ƀ\�t�g�E�F�A
 ��C���X�g�[�����܂��傤�B�R�[���o�b�N�v���O������ mgetty-sendfax ��
 ppp �̈ꕔ�ł��B���g���̃f�B�X�g���r���[�V�����ɂ��ׂĂ̂�̂������Ă�
 ��ł��傤�B�R�[���o�b�N�V�X�e���͓��F�؂�s���܂�����A�T�[�o���ł�
 ppp �𑖂点�郆�[�U����Ă����܂��B

 �� : /etc/passwd �Ɉȉ��̓�e��lj����܂��B

 pppuser:klkIOM89mn65H:230:PPP Dialin:/home/pppuser:/etc/ppp/ppplogin

 ���Ƀp�X���[�h��ύX���܂��B/etc/ppp/pap-secret �Ƀp�X���[�h�ɂ‚��Ă�
 ����lj����Ȃ���΂����܂���(�ڍׂ� man pppd �Ŋm�F���Ă�������)�B

 pppuser * password_for_pppuser *

 �󒍁F$ cat /etc/ppp/pap-secret �Ŋm�F���Ă����܂��B

 ���̃��[�U�͒ʏ�̃V�F������Ă��܂��� /etc/ppp/ppplogin �t�@�C��
 �ɑ��݂��܂��B���̃t�@�C���͎����ō쐬���܂��B���Ƃ��� vi ��g����
 /etc/ppp/ppplogin ��̂悤�ɕҏW���܂��B

   #!/bin/sh

   exec /usr/sbin/pppd -detach 192.168.1.1:192.168.1.2

 �A�h���X 192.168.1.1 �̓��f����ƒT�[�o�̃A�h���X�ŁA�A�h���X
 192.168.1.2 �͎����̃��f���Ɋ��蓖�Ă�A�h���X�ł��B���̃t�@�C���Ɏ��s
 �I�v�V�����𗧂Ă܂��B ppp �f�[������g���̂ŁA���̃f�[�����ɃI�v�V��
 ����ݒ肵�Ȃ��Ă͂����܂���B /etc/ppp/options �t�@�C����ҏW���܂��B

  netmask 255.255.255.0

   proxyarp

   lock

   crtscts

   modem

 Proxyarp �́A�T�[�o�ɂ��郂�f����ʂ��ăC���^�[�l�b�g�ɏo�čs�����Ƃ�
 �ł���̂ŁA��L�I�v�V�����ōł�d�v�Ȃ�̂ł��B���̑��̃I�v�V�����͂�
 �g���̃��f���̐���Ɏg���܂��B�I�v�V���� proxyarp ��g��Ȃ���΁A��
 �[�U�̓��[�J���l�b�g���[�N�ł�����Ƃ��ł��܂��B�ڍׂ� PPP-HOWTO ��I
 �����C���}�j���A���� pppd �𒲂ׂĂ��������B

 ���FARP [Address Resolution Protocol]

 ����ł̓T�[�o��̃��f����ݒ肵�܂��傤�B�T�[�o�N����ɐڑ���󂯓���
 �鏀����Ȃ���΂����܂���B /etc/inittab ��ҏW���A�Q�–ڂ� com �|
 �[�g��Ƀ��f������܂��B

   s1:2345:respawn:/sbin/mgetty ttyS1 -D /dev/ttyS1 vt100

 �P�–ڂ� com �|�[�g�ɑ΂��Ă͎��̂悤�ɂȂ�܂��B

   s0:2345:respawn:/sbin/mgetty ttyS1 -D /dev/ttyS1 vt100

 init q �𑗂�܂��B�L�^�ɂǂ�ȃG���[����o�Ȃ��Ȃ�A���ɐi�݂܂���
 ���B /etc/ppp �̃f�B���N�g���ɖ߂�A options.ttyS1 �Ƃ����t�@�C�����
 ��܂�(com1 �|�[�g�̃��f���ɂ� options.ttyS0 �ɂȂ�܂�)�B

 IP_local: IP_remote

 �����̃l�b�g�ł͎��̂悤�ɂ��Ă��܂��B

   192.168.1.1:192.168.1.2

 ����ɂ��邱�Ƃ�����܂��B /etc/mgetty+sendfax/login.config �Ƃ����t�@
 �C����`�F�b�N���܂��B��ԏd�v�Ȃ�͎̂��̍s�ł��B

  /AutoPPP/ - a_ppp /usr/sbin/pppd auth -chap +pap login detach kdebug 7 debug

 ���̍s�� #�}�[�N��‚��邱�Ƃ��ł��܂��B

 pppuser ��pppd ��ғ������A�C���^�[�t�F�[�X�Ƃ��ē����悤�ɂ��Ȃ����
 �Ȃ�܂��񂩂�A���̃R�}���h�ŁApppd �� suid ��ݒ肵�܂��B

  chmod u+s /usr/sbin/pppd

 �󒍁F$ ls /usr/sbin/pppd

 ��������΂��̂悤�ɂȂ�܂��B

   -rwsr-xr-x 1 root root 106892 Jan 11 1999 /usr/sbin/pppd

 ���̃T�[�o�ł� pppd �̍ċN����D�悳������ɖ�肪�������̂ŁA cron ��
 ������̂͂悢�l�����Ǝv���܂��B�T�[�o�̓��[�^�Ƃ��ē����܂��B IP
 forwarding ��g����悤�� /etc/rc.d/rc.local �Ɏ��̍s����܂��B

  echo "1" > /proc/sys/net/ipv4/ip_forward

 RedHat �̃��[�U�̏ꍇ�́A FORWARD_IPV4=false ���� FORWARD_IPV4=true ��
 /etc/sysconfig/network �t�@�C���ŕύX�ł��܂��B

 �F�؂̂��߂� Linux �ɓd�b����܂��B���̂��߂ɃX�N���v�g��g���܂��B
 MS Windows ��g���Ȃ�A"�ڑ��̂��ƂŒ[����Ăяo��" �̃I�v�V������}�[
 �N���Ă����܂��B���[�U�� pppuser �A�p�X���[�h�� pppuser �̃p�X���[�h��
 ���O�C�����܂��B���ׂĂ����܂������܂��悤�ɁB

 2.4.  PART IV  Linux ���d�b�����

 �������͂��ł� Linux �T�[�o �ɓd�b����邱�Ƃ��ł��܂��B���āALinux
 ���������ɓd�b�����Ԃł��B������Ƃł͂���܂���B�Q�‚̃t�@�C��
 ��ҏW���Ȃ��Ă͂����܂���B/etc/mgetty+sendfax/callback.conf�Ƃ���
 �t�@�C������A������ۂ̃t�@�C���ɂ��Ă����܂��B

 ���Ƀ��[�U�̓d�b�ԍ���o�^���܂��B�����قǐڑ��Ɏg�����d�b�ԍ������
 �݂܂��B���̂��߂� /etc/mgetty+sendfax/login.conf �Ɏ��̂悤�ȍs���
 �܂��B

 call - - /usr/sbin/callback - S 123456

 �d�b���񃆁[�U�̏ꍇ�͐ڑ��̊J�n��v�����܂��B
 /etc/mgetty+sendfax/login.conf �ɓo�^���ꂽ�d�b�ԍ� (��ł� 123456 ��
 ���Ă��܂�)�ɓd�b�����v���O�����𓮂��悤�ɂ��Ă����܂��B���̑���
 �[�U�������@�œo�^���܂��B�ǂ̂悤�ɓ����Ă���̂������܂��傤�B�T
 �[�o�ɓd�b�����ƁA�F�؂�󂯂܂��B�d�b�����Ɣ񃆁[�U�Ƃ��ă��O
 �C������̂ł��B�����̃R���s���[�^�̃X�N���v�g�����f����n���O�A�b�v��
 �܂��B���̂܂ܑҋ@����Ɛڑ��͐؂��܂��B����ƁA�R�[���o�b�N�v���O��
 �����N�����A�܂�Ԃ��Ăяo����󂯂܂��B�p�X���[�h��g���� pppuser ��
 ���čēx�F�؂����ƁA�d�b���‚Ȃ��� ppp ���m�����܂��B����ł��ׂĂ�
 ���B�ғ���Ԃ͂ƂĂ�P���ł��BMS Windows ��g���Ȃ�A���g���̓d�b��
 ���Ƀ_�C�A���A�b�v��C���X�g�[�����Ȃ���΂Ȃ�܂���B���f���v���p�e�B
 ��"�v���p�e�B- - ->�ڍ�- - -> �lj��I�v�V����" �Ɏ��̃��f���R�}���h��
 �����݂܂��B

 &c0s0=1

 ���f���v���p�e�B�̑���‚��d�b����܂��B��Ɏ��������@�Ń��O�C������
 ���BLinux ��g���Ȃ�X�N���v�g��g��Ȃ���΂����܂���BLinux �ł͂���
 ����ԗǂ��Ƃ����X�N���v�g��ЂƂ‚����񎦂���͓̂���ł��B�V�X�e��
 �ɂ����āAppp ��܂��ݒ肷�邱�Ƃ��܂��͏d�v�Ȃ��Ƃł��B(���Ɏ�����
 �X�N���v�g��g���� pppuser �Ƃ��ēd�b��邱�Ƃ��ł��܂�)�B���L�̃X�N
 ���v�g�́A A. Gozdz �ɂ��ď�����܂����B

 �����̃X�N���v�g�� Slackware �œ����܂��B

 ppp �f�[�����̃R���t�B�O���[�V�����t�@�C�� /etc/options (com2 �|�[�g��
 �‚Ȃ����Ă��郂�f���̗�)

  lock

   defaultroute

   noipdefault

   modem

   /dev/cua1

   33600

   crtscts

   debug

   passive

   asyncmap 0

 �ړI�ʂ̃X�N���v�g�ł��B

 o  /etc/ppp/ppp-call$)B

    #!/bin/bash

    teksta="Connection failed"

    tekstb="Probably, You will be connect"

    # /sbin/setserial /dev/cua1 spd_vhi

    killall -INT pppd 2>/dev/null

    rm -f /var/lock/LCK* /var/run/ppp*.pid

    (/usr/sbin/pppd -detach /dev/ttyS1 115200 \

    connect "/usr/sbin/chat -v -f /etc/ppp/pppcallback" &) || \

    (echo $teksta; ls marsss >/dev/null; exit 1)

    echo $tekstb

    exit 0

 o  /etc/ppp/pppcallbacks

    TIMEOUT 60

    ABORT 'ERROR'

    ABORT 'BUSY'

    ABORT 'NO ANSWER'

    ABORT 'NO DIALTONE'

    ABORT '\nVOICE\r'

    ABORT '\nRINGING\r\n\r\nRINGING\r'

    '
    TIMEOUT 75

    OK ATDT123456

    CONNECT ''

    ogin:-ogin: ppp_pseudouser

    TIMEOUT 180

    CONNECT ''

    TIMEOUT 20

    ogin:-ogin: pppuser

    sword:-sword password_for_pppuser

 o  ���� ppp-call ��s���܂��傤 :)

 ���̃X�N���v�g��LINUX RED HAT 6.x �ł��B

 o  /etc/ppp/options

    lock

    defaultroute

    noipdefault

    modem

    33600

    crtscts

    debug

    passive

    asyncmap 0

 o  /etc/ppp/pppcallback

    TIMEOUT 5

    ABORT 'ERROR'

    ABORT 'BUSY'

    ABORT 'NO ANSWER'

    ABORT 'NO DIALTONE'

    ABORT '\nVOICE\r'

    ABORT '\nRINGING\r\n\r\nRINGING\r'

    '
    TIMEOUT 40

    OK ATDT5376443 CONNECT ''

    ogin:-ogin: ppp-pseudo-user

    TIMEOUT 180

    CONNECT ''

    TIMEOUT 20

    ogin:-ogin: pppuser

    sword:-sword password_for_ppuser

 o  /usr/bin/ppp-call

    #!/bin/bash

    teksta="Connection failed"

    tekstb="Probably, You will be connect"

    # /sbin/setserial /dev/cua1 spd_vhi

    killall -INT pppd 2>/dev/null

    rm -f /var/lock/LCK* /var/run/ppp*.pid

    (/usr/sbin/pppd -detach call ppp_call &) || \

    (echo $teksta; ls marsss >/dev/null; exit 1)

    echo $tekstb

    exit 0

 o  ���� ppp-call ��s���܂��傤 :)

 M$ Windows ��g���Ȃ�ڑ��̂��߂Ɏ��̃X�N���v�g��g���܂��B���͂���
 �X�N���v�g�̃e�X�g��Ă��܂���(���̓^�[�~�i����g���Ă��܂�)���A����
 ������� Adrian Debkowski([email protected]) �ɐq�˂Ă��������B

  proc main

   delay 1

   waitfor "ogin:"

   transmit "call^M"

   waitfor "RING"

   transmit "ATA^M"

   waitfor "CONNECT"

   waitfor "ogin:"

   transmit "pppuser^M"

   waitfor "word:"

   transmit "ppp^M"

   endproc

 3.  PART V �v��

 �R�[���o�b�N�̃R���t�B�O���[�V�����͕��G�ł͂���܂���B��ԑ厖�Ȃ���
 �́ALinux ��� ppp �T�[�o�̓K�؂Ȑݒ�ł��B�T�[�o�ɃA�N�Z�X���Đݒ肷
 ���@�ɂ‚��Ă͎��ɂ͂킩��܂���B��L�̃R���t�B�O���[�V�����͉����
 �̃e�X�g�̌��ʊ������ꂽ��̂ł����A�ʂ̕��@�ł�ł��܂��B pppd �̃}
 �j���A���� NET4-HOWTO�A PPP-HOWTO �ȂNJ֘A�����ɖڂ�ʂ���邱�Ƃ��
 �߂��܂��B

 4.  ���{���ɂ‚���

 �|��Ɋւ��邲�ӌ��� JF �v���W�F�N�g <[email protected]> ���ɘA�����Ă���
 �����B

 �Z��:

 o  ����L�� <[email protected]>

 o  �R���`�V <[email protected]>

 o  ��X�ۉp <[email protected]>