Инсталляция Linux и первые шаги

         

Использование dip


dip может упростить процесс соединения со SLIP-сервером,

войти и настроить SLIP-устройства. Если только у вас не

выделенная линия для SLIP-сервера, dip - это то, что вам надо.

Для использования dip вы должны написать "сценарий болтовни"

(``chat script''), который содержит перечень команд, используемых

для связи со SLIP-сервером при входе в систему. Эти команды могут

автоматически посылать ваши имя/пароль серверу, а также получать

информацию о вашем IP адресе с сервера.

Вот пример такого сценария для использования с сервером

динамических IP адресов. Для статических серверов вам потребуется

в начале сценария установить значения переменных $local

и $remote.

В соответствии с вашими локальным IP адресом и адресом сервера



соответственно. Более детальную информацию можно получить в

Руководстве на dip.

main:

# Set Maximum Transfer Unit. This is the maximum size of packets

# transmitted on the SLIP device. Many SLIP servers use either

# 1500 or 1006; check with your network admins when in doubt.

get $mtu 1500

# Make the SLIP route the default route on your system.

default

# Set the desired serial port and speed.

port cua03

speed 38400

# Reset the modem and terminal line. If this causes trouble

# for you, comment it out.

reset

# Prepare for dialing. Replace the following with your

# modem initialization string.

send AT&C1&D2\\N3&Q5%M3%C1N1W1L1S48=7\r

wait OK 2

if $errlvl != 0 goto error

# Dial the SLIP server

dial 2546000

if $errlvl != 0 goto error

wait CONNECT 60

if $errlvl != 0 goto error

# We are connected. Login to the system.

login:

sleep 3

send \r\n\r\n

# Wait for the login prompt

wait login: 10

if $errlvl != 0 goto error

# Send your username

send USERNAME\n

# Wait for password prompt

wait ord: 5

if $errlvl != 0 goto error

# Send password.

send PASSWORD\n

# Wait for SLIP server ready prompt

wait annex: 30

if $errlvl != 0 goto error

# Send commands to SLIP server to initate connection.

send slip\n


wait Annex 30

# Get the remote IP address from the SLIP server. The

# `get...remote' command reads text in the form xxx.xxx.xxx.xxx,

# and assigns it to the variable given as the second argument

# (here, $remote).

get $remote remote

if $errlvl != 0 goto error

wait Your 30

# Get local IP address from SLIP server, assign to variable

# $local.

get $local remote

if $errlvl != 0 goto error

# Fire up the SLIP connection

done:

print CONNECTED to $remote at $rmtip

print GATEWAY address $rmtip

print LOCAL address $local

mode SLIP

goto exit

error:

print SLIP to $remote failed.

exit:

dip автоматически выполняет команды ifconfig и

route,

базирующиеся на значениях переменных

$local и $remote. Здесь этим

переменным присваиваются значения с использованием удаленных

команд get..., которые получают текст со SLIP-сервера и

присваивают его названной переменной.

Если команды ifconfig и route, которые

выполняет для вас dip

не работают, вы можете либо выполнить правильные команды в

сценарии shell после выполнения dip, либо модифицировать исходник

для самого dip. Выполнение dip с опцией

-v будет выдавать

отладочную информацию в процессе установления связи, что должно

помочь в определении ошибок в работе. Теперь, для того, чтобы

выполнить dip и открыть SLIP-соединение вы можете использовать

команду, вроде:

/etc/dip/dip -v /etc/dip/mychat 2>&1

Где различные dip-файлы и сценарий болтовни (mychat.dip)

помещены в /etc/dip. Вышеприведенное обсуждение должно быть

достаточным для вашего хорошего самочувствия на славном пути в

сетевое сообщество через Ethernet или SLIP. И вновь мы

настоятельно рекомендуем заглянуть в книгу по TCP/IP, особенно,

если ваша сеть имеет специфику в маршрутизации, отличающую ее от

рассмотренных здесь.


Содержание раздела