Установил я ДВА модема на dial-in сервер и такая проблема, когда позвонили на один, то на нем все работает нормально, но стоит позвонить на второй, то как только на втором запускается pppd, так сразу модем бросает трубку. Что сделать, чтобы было все ок?
Посмотри какая скорость стоит на первом модеме и такую выставь на второй модем. Второй модем бросает трубу через несоответствие скоростей.
>Посмотри какая скорость стоит на первом
>модеме и такую выставь на
>второй модем. Второй модем бросает
>трубу через несоответствие скоростей.что-то новенькое...
типа я не могу иметь для одного модема DTE=57600
а для другого DTE=38400[linux4u]~ > grep mgetty /etc/inittab
S0:234:respawn:/usr/sbin/mgetty -n1 -s57600 -D ttyS0
S1:234:respawn:/usr/sbin/mgetty -n1 -s57600 -D ttyS1
S4:234:respawn:/usr/sbin/mgetty -n1 -s38400 -D ttyS4
S5:234:respawn:/usr/sbin/mgetty -n1 -s38400 -D ttyS5
S6:234:respwan:/usr/sbin/mgetty -n1 -s38400 -D ttyS6
[linux4u]~ >и ведь работает ;)
PS. Чтобы получить более точный ответ, нужно ясно
и точно сформулировать вопрос и показать настройки
Настрой модем на использование фиксированной скорости работы порт <-> модем, открой на нужной
скорости порт, проинициализируй модем и сохрани
настройки в его профиле, и эту скорость используй
в mgetty для открытия порта
Почему идет речь о скорости при которой был инициализирован модем, потому что есть модемы, которые не работают на скорости, отличной от скорости инициализации
>PS. Чтобы получить более точный ответ,
>нужно ясно
>и точно сформулировать вопрос и показать
>настройки
>Настрой модем на использование фиксированной скорости работы порт <-> модем, открой на нужной
>скорости порт, проинициализируй модем и сохрани
>
>настройки в его профиле, и эту
>скорость используй
>в mgetty для открытия порта
> Почему идет речь о скорости
>при которой был инициализирован модем,
>потому что есть модемы, которые
>не работают на скорости, отличной
>от скорости инициализацииУ меня все настроено нормально, поотдельности же все работает нормально - звоню и на один модем, и на другой. А вот два человека сразу на два модема позвонить не могут - pppd откидывает ;(
Вот что пропесочено в ppp.conf:
--------------------------default: set device /dev/cuaa1
set log Phase Chat LCP IPCP CCP tun command
set speed 115200
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CON...(строчка длинная)set timeout 120
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
add default HISADDR
enable dnsset device /dev/cuaa0
set log Phase Chat LCP IPCP CCP tun command
set speed 115200
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CON...(строчка длинная)set timeout 120
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
add default HISADDR
enable dnspapchap:
set phone PHONE_NUM
set authname USERNAME
set authkey PASSWORD
--------------------------
И еще, что забыл упомянуть - система FreeBSD 4.1
Модемы Курьеры 33600, скорости портов 57600
>Посмотри какая скорость стоит на первом
>модеме и такую выставь на
>второй модем. Второй модем бросает
>трубу через несоответствие скоростей.Нет, проблема на в этом. Вероятно, я плохо пояснил что происходит. У меня два модема для входящих звонков, но система позволяет запускаться pppd только одному звонящему на модемный пул. Второй, кто звонит на второй модем, при занятом первом, откидывается модемом сразу как запускается pppd. То есть, имея две входящие линии, одновременно можно работать только на одной.
Так для входящих звонков используют ttyd0, ttyd1....А для Александерса
Если у тебя на модеме будет стоять 57600 а на порте 38400 то ты фиг сконектишся
>Так для входящих звонков используют ttyd0,
>ttyd1....
>
>
>
>А для АлександерсаSorry не для Александерса а для lavra
>
>Если у тебя на модеме будет
>стоять 57600 а на порте
>38400 то ты фиг сконектишся
>
>>Так для входящих звонков используют ttyd0,
>>ttyd1....
>>
>>
>>
>>А для АлександерсаА для Александра, внимательно посмотреть настройки
PPP, возможно что-то с proxy-arp, возможно другие проблемы ppp (в нем до сих пор делают правки)почитай http://www.nitek.ru/~igor/
>Sorry не для Александерса а для
>lavra
>>
>>Если у тебя на модеме будет
>>стоять 57600 а на порте
>>38400 то ты фиг сконектишся
>>различаешь DTE и DCE?
ответь себе на вопросы:
"Если у тебя на модеме будет стоять 57600" - что сие означает?
"а на порте 38400 то ты фиг сконектишся" - что сие означает?
для ясности: найди в настройках модема регистр или команду которая либо выравнивает скорости DTE и DCE, либо позволяет работать при жестко-фиксированной скорости DTE port <-> modem
независимо от скорости DCE modem <-> modemДля тех кто в танке (Linux или FreeBSD - не играет рояли, это на предмет того что там у меня фик будет работать):
[linux4u]~ > grep mgetty /etc/inittab
S0:234:respawn:/usr/sbin/mgetty -n1 -s57600 -D ttyS0
S1:234:respawn:/usr/sbin/mgetty -n1 -s57600 -D ttyS1
S4:234:respawn:/usr/sbin/mgetty -n1 -s38400 -D ttyS4
S5:234:respawn:/usr/sbin/mgetty -n1 -s38400 -D ttyS5
S6:234:respwan:/usr/sbin/mgetty -n1 -s38400 -D ttyS6
[linux4u]~ >ppdxxx ttyS5 31200/ARQ/V34/LA Tue Apr 9 13:00 - 13:01 (00:00)
ppdxxx ttyS5 28800/ARQ/V34/LA Tue Apr 9 12:49 - 13:00 (00:10)
ppdyyy ttyS0 28800/ARQ/V34/LA Tue Apr 9 12:03 - 12:03 (00:00)
ppdyyy ttyS5 28800/ARQ/V34/LA Tue Apr 9 12:02 - 12:03 (00:00)
ppdyyy ttyS0 28800/ARQ/V34/LA Tue Apr 9 12:01 - 12:02 (00:00)
ppdbbb ttyS0 19200/ARQ/V34/LA Tue Apr 9 11:51 - 11:55 (00:03)
ppdaaa ttyS4 14400/ARQ/V32/LA Tue Apr 9 11:39 - 13:22 (01:43)
ppdccc ttyS1 33600/ARQ/V34/LA Tue Apr 9 11:19 - 14:02 (02:43)
ppdyyy ttyS5 28800/ARQ/V34/LA Tue Apr 9 11:02 - 12:01 (00:59)
ppdaaa ttyS0 28800/ARQ/V34/LA Tue Apr 9 10:55 - 11:38 (00:42)
ppdxxx ttyS1 21600/ARQ/V34/LA Tue Apr 9 10:55 - 11:06 (00:11)
ppdxxx ttyS1 26400/ARQ/V34/LA Tue Apr 9 10:08 - 10:29 (00:20)
ppdddd pts/6 lx000h.jinr.dubn Tue Apr 9 09:55 - 10:02 (00:07)
ppdyyy ttyS5 26400/ARQ/V34/LA Tue Apr 9 09:44 - 10:04 (00:20)
ppdyyy ttyS0 21600/ARQ/V34/LA Tue Apr 9 09:43 - 09:43 (00:00)
ppdyyy ttyS5 26400/ARQ/V34/LA Tue Apr 9 09:43 - 09:43 (00:00)
ppdyyy ttyS5 26400/ARQ/V34/LA Tue Apr 9 09:42 - 09:42 (00:00)
ppdyyy ttyS0 28800/ARQ/V34/LA Tue Apr 9 09:42 - 09:42 (00:00)
ppdyyy ttyS0 28800/ARQ/V34/LA Tue Apr 9 09:41 - 09:41 (00:00)
ppdzzz ttyS1 21600/ARQ/V34/LA Tue Apr 9 09:36 - 10:02 (00:26)
ppdxxx ttyS4 28800/ARQ/V34/LA Tue Apr 9 09:34 - 09:42 (00:07)
ppdzzz ttyS1 21600/ARQ/V34/LA Tue Apr 9 09:32 - 09:35 (00:02)ttys:
# Serial terminals
# The 'dialup' keyword identifies dialin lines to login, fingerd etc.
ttyd0 "/usr/libexec/getty std.38400" dialup on secure
ttyd1 "/usr/libexec/getty std.38400" dialup on secure
ttyd2 "/usr/libexec/getty std.9600" dialup off secure
ttyd3 "/usr/libexec/getty std.9600" dialup off secure
ttyd4 "/usr/libexec/getty std.57600" dialup on secure
ttyd5 "/usr/libexec/getty std.57600" dialup on secure
ttyd6 "/usr/libexec/getty std.57600" dialup on secure
ttyd7 "/usr/libexec/getty std.57600" dialup on secure
ttyd8 "/usr/libexec/getty std.57600" dialup on secure
ttyd9 "/usr/libexec/getty std.57600" dialup on secure
ttyda "/usr/libexec/getty std.38400" dialup on secure
ttydb "/usr/libexec/getty std.38400" dialup on secure
# Pseudo terminals
lavr какие у тебя модемы?
Если Courier то плз покажи ati4 и ati5 на модемах которые на ttyS0 и ttyS4
>lavr какие у тебя модемы?
>Если Courier то плз покажи ati4
>и ati5 на модемах которые
>на ttyS0 и ttyS4Шпрот, думаю принципиальной рояли нет, что
одни, что другие настраивать:
(вот старые zyxel'я и telebit'ы имели особенность
работать с портом которая использовалась при
инициализации и записи профиля)linux4u:~ # cu -s38400 -l/dev/ttyS6
Connected.
ati4
USRobotics Sportster Voice 33600 Fax Settings...B0 E1 F1 M0 Q0 V1 X4 Y0
BAUD=38400 PARITY=N WORDLEN=8
DIAL=PULSE ON HOOK&A3 &B1 &C1 &D3 &G0 &H1 &I0 &K2
&M5 &N0 &P0 &R1 &S0 &T5 &U0 &Y1S00=000 S01=000 S02=043 S03=013 S04=010 S05=008 S06=002
S07=060 S08=002 S09=006 S10=014 S11=070 S12=050 S13=000
S15=000 S16=000 S18=000 S19=000 S21=010 S22=017 S23=019
S25=005 S27=000 S28=008 S29=020 S30=000 S31=128 S32=002
S33=000 S34=000 S36=014 S38=000 S39=000 S41=000
LAST DIALED #:OK
ats0?
000OK
ats4?
010OK
>linux4u:~ # cu -s38400 -l/dev/ttyS6
А ты попробуй cu -s115200 -l/dev/ttyS6
а опосля коннекта набрать at&w и дозвонись на ttyS6
>>linux4u:~ # cu -s38400 -l/dev/ttyS6
>А ты попробуй cu -s115200 -l/dev/ttyS6
>
>а опосля коннекта набрать at&w и
>дозвонись на ttyS6никаких проблем.
ps. было черным по-белому написано, существует
ряд модемов, которые требуют открытия порта на
той скорости, которая была при инициализации.
таких ну очень мало и было ну очень давно, ни
с одним USR у меня такого не было.pps. может быть какая-нить кривая самопальная
прошивка (любят разные а-ля русские прошивки в
usr'ы вдувать) Ни один нормальный человек, такие
модемы на DIAL-IN не поставит. На dial-out - ради
бога, на dial-in - нафик все эти самтресты, все
это лет пять-семь назад пройдено.На предмет DTE-DCE, если хочется выравнивания скоростей (интересно кому оно надо), достаточно
сделать переход DTE:для getty/mgetty достаточно настроить
переходы в gettydefs или mgettydefs, пример
из RH /etc/gettydefs:# 230400 autobauding Modem entry with hard flow control
230400# B230400 CS8 CRTSCTS # B230400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #115
200115200# B115200 CS8 CRTSCTS # B115200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #576
0057600# B57600 CS8 CRTSCTS # B57600 SANE -ISTRIP HUPCL CRTSCTS #@S login: #38400
38400# B38400 CS8 CRTSCTS # B38400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #19200
19200# B19200 CS8 CRTSCTS # B19200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #9600
9600# B9600 CS8 CRTSCTS # B9600 SANE -ISTRIP HUPCL CRTSCTS #@S login: #2400
2400# B2400 CS8 CRTSCTS # B2400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #230400
мб и есть любители использовать данный цикл
перехода и эти входы из gettydefs:порт открывается с установками tty соответствующими указанному входу из gettydefs, см
выше, например 115200, если посыпалсы мусор на tty(в конце строки смотри на какую следующую скорость переключиться getty/mgetty для
выравнивания) - увидишь цикл:115200# initial-flags # final-flags # login-prompt #57600
57600# initial-flags # final-flags # login-prompt #38400
...
самая_маленькая#...#самая_большая скоростинормальные люди используют жестко фиксированную скорость на порту, например:
# 115200 fixed-baud modem entry
F115200# B115200 CS8 CRTSCTS # B115200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #F115200# 57600 fixed-baud modem entry
F57600# B57600 CS8 CRTSCTS # B57600 SANE -ISTRIP HUPCL CRTSCTS #@S login: #F57600# 38400 fixed-baud modem entry
F38400# B38400 CS8 CRTSCTS # B38400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #F38400разница между двумя входами:
F115200 - нет выравнивания, закольцован сам на себя
115200 - выравнивание, переход на нижнюю скорость порта 57600 (см выше)какой вход из gettydefs выбран - см свой /etc/inittab в случае Linux или /etc/ttys в случае
FreeBSD (где роль gettydefs выполняет gettytab)
ох давно это было...модемы, понятно, должны быть настроены исходя из выбранного подхода fixed DTE или выравнивание DTE по DCE (последнее кому-нить надо?)
Ты прав все верно для Usr, но не для других модемов например 3Com хотя она выпускает модеми a-la USR Courier и у нас с ними были проблемы именно по скоростях.
>У меня два модема для
>входящих звонков, но система позволяет
>запускаться pppd только одному звонящему
>на модемный пул. Второй, кто
>звонит на второй модем, при
>занятом первом, откидывается модемом сразу
>как запускается pppd. То есть,
>имея две входящие линии, одновременно
>можно работать только на одной.
>Mozhet problema v tom chto prisvaevaetsya odin i tot zhe IP address? Ne znayu kak u vas, u menya (Linux, Debian) mozhno opredelit' dlya kazhdogo modema dlya PPP-soedeneniy svoy fail nastroek: /etc/ppp/options.ttyS0, /etc/ppp/options.ttyS1 i t.d. i v nih mozhno ukazat' raznie IP-adresa. T.e. IP-adresa budut prisvaivat'sya v zavisimosti ot togo na kakom portu sidit modem.
Ребята, не напрягайтесь! Я же говорю, с КОННЕКТОМ у меня нет проблемы. Я ради прикола пробовал заходить из DN с помощью терминалки, модем нормально соединяется, показывает, что:$ps -ax
(кусь)
13683 ?? I 0:00.01 /usr/libexec/getty std.115200 ttyd0
(кусь)
16139 d1 Is+ 0:00.02 /bin/sh /usr/sbin/pppd.sh /dev/ttyd1
16614 d1 I+ 0:00.03 /usr/sbin/pppd auth
$То есть сейчас у меня второй юзер не весит (процесс 13683 пуст) а мной запущены процессы pppd.sh (16139) и порожденный им процесс pppd с ключом auth (16614).
Может быть, косяк в этом?Когда кто-то висит на 1-м модеме, я подключаюсь на второй и могу нормально коннектиться терминалкой (DN), совершенно без проблем. Но стоит мне запустить ручками процесс:
$pppd
модем сразу отстреливается. Аналогичная беда и при звонке через окно терминала, и при звонке без окна терминала. Как только запускается на сервере pppd, модем бросает трубку.
Есть еще одна возможность, почему такое может приключиться - у меня были прописаны разные локальные и удаленные IP адреса соединений в файле ppp.conf и в файлах options.ttyd0 и options.ttyd1. Впрочем, эта беда не проявлялась при соединении удаленного абонента только на 1 модем. Вот что выходит в логи, когда подключается второй абонент на второй модем при работающем абоненте на 1 модеме:
----------------
Apr 8 20:31:39 www pppd[13606]: pppd 2.3.5 started by root, uid 0
Apr 8 20:31:39 www pppd[13606]: ioctl(TIOCSETD): Device not configured
Apr 8 20:31:40 www pppd[13606]: Hangup (SIGHUP)
Apr 8 20:31:40 www pppd[13606]: tcsetattr: Inappropriate ioctl for device
Apr 8 20:31:40 www pppd[13606]: Exit.
----------------
Такие вот пироги ;(
>Есть еще одна возможность, почему такое
>может приключиться - у меня
>были прописаны разные локальные и
>удаленные IP адреса соединений в
>файле ppp.conf и в файлах
>options.ttyd0 и options.ttyd1. Впрочем, эта
>беда не проявлялась при соединении
>удаленного абонента только на 1
>модем. Вот что выходит в
>логи, когда подключается второй абонент
>на второй модем при работающем
>абоненте на 1 модеме:
>----------------
>Apr 8 20:31:39 www pppd[13606]:
>pppd 2.3.5 started by root,
>uid 0
>Apr 8 20:31:39 www pppd[13606]:
>ioctl(TIOCSETD): Device not configured
>Apr 8 20:31:40 www pppd[13606]:
>Hangup (SIGHUP)
>Apr 8 20:31:40 www pppd[13606]:
>tcsetattr: Inappropriate ioctl for device
>
>Apr 8 20:31:40 www pppd[13606]:
>Exit.
>----------------
>Такие вот пироги ;(
да не было ни напрягов, ни наездов, ни чего ещепопробуй через один модем войти on-line terminal
и через другой, оба должны работать без проблем.дальше смотри ядро:
pseudo-device tun 8
pseudo-device ppp 8 # Kernel PPPчто там у тебя стоит `man 4 ppp`, `man tun`
ну и посмотри ifconfig соответственно для текущего состояния, например:
[kastor]~ > ifconfig -a
dc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 159.93.167.33 netmask 0xffffff00 broadcast 159.93.167.255
inet 159.93.168.33 netmask 0xffffff00 broadcast 159.93.168.255
inet 159.93.167.32 netmask 0xffffffff broadcast 159.93.167.32
ether 00:80:ad:7b:94:e9
media: autoselect (100baseTX) status: active
supported media: homePNA autoselect 100baseTX <full-duplex> 100baseTX 10baseT/UTP <full-duplex> 10baseT/UTP none
sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST> mtu 552
faith0: flags=8000<MULTICAST> mtu 1500
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif1: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif2: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif3: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp1: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp2: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp4: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp5: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp6: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp7: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp8: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
ppp9: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 159.93.167.33 --> 159.93.168.113 netmask 0xffffffff
Opened by PID 69489
tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 159.93.167.33 --> 159.93.168.160 netmask 0xffffffff
Opened by PID 68522
tun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 159.93.167.33 --> 159.93.168.182 netmask 0xffffffff
Opened by PID 68566
tun3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
tun4: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
tun5: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
tun6: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 159.93.167.33 --> 159.93.167.194 netmask 0xffffffff
Opened by PID 69103
tun7: flags=8010<POINTOPOINT,MULTICAST> mtu 1500черт с ним, не стал адреса вырезать
$ ifconfig -a
----------(кусь)-----------
lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST> mtu 552
ppp0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.2 --> 10.0.0.3 netmask 0xff000000
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif1: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif2: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
gif3: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
faith0: flags=8000<MULTICAST> mtu 1500
$
-------------
То есть у меня сконфигурен только ppp0? Или здесь список только активных соединений? И как мне добавить еще один ppp?
>То есть у меня сконфигурен только
>ppp0? Или здесь список только
>активных соединений? И как мне
>добавить еще один ppp?V Linux-e oni konfiguriruytsya avtomaticheski.
>Вот что пропесочено в ppp.conf:
>--------------------------
>default:
>set device /dev/cuaa1
...
>set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0
...>set device /dev/cuaa0
...
>set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0Esli ne oshibayus', to u vas dlya oboih /dev/cuaa-ov odin i tot zhe IP. Ya ne znayu kak v BSD, no v Linux-e eto ne proydet. Poprobuyte naznachit' raznie IP-adresa (ifaddr).
Всем спасибо! Я пропесочил 4 ppp в ядре, перекомпилит и все стало работать.