From: Denis Ovsienko <pilot@altlinux.ru>
To: ALT Linux Sisyphus discussion list <sisyphus@altlinux.ru>
Subject: Re: [sisyphus] Работа с PPP в /etc/net
Date: Tue, 30 Aug 2005 14:05:36 +0400
Message-ID: <20050830140536.78ddd8a8.pilot@altlinux.ru> (raw)
In-Reply-To: <20050830025029.GA10459@vezyolka.home>
> Я тут провёл исследования... Результаты таковы:
>
> 1. Два соединения с одинаковым значением параметра unit нормально
> устанавливаются, и одно из них получает unit не
> соответствующий указанному в команде. pid-файлы соответствуют
> реальным unit-ам.
Чего и следовало ожидать.
> 2. Два соединения с одинаковым значением параметра linkname
> нормально устанавливаются. Каждому соответствует pid-файл с
> именем вида pppX.pid. Соединение, запущенное позднее, затирает
> информацию о предыдущем соединении в файле ppp-linkname.pid.
Также неудивительно.
> Ясно, что всё плохо. Например, если в etcnet настроен интерфейс
> ppp0, а пользователь уже установил соединение ppp0 при помощи
> kppp, например, по etcnet перестаёт адекватно работать. Так как,
> во-первых, не запускает своё соединение, во-вторых, без лишних
> слов может убить пользовательское соединение, если попросят.
Его просят --- оно и убивает. Я предлагаю:
1. Не использовать параметр unit в ppp-интерфейсах /etc/net. Он уже есть в
названии интерфейса.
2. Именовать ppp-интерфейсы /etc/net начиная с некоторого стартового unit.
Это не исправит фундаментальных недостатков PPP в Linux, но облегчит жизнь
и добавит порядка тем, кто последует этим простым рекомендациям.
> Поэтому, надо как-то навести соответствие между настроенными
> PPP-интерфейсами etcnet и установленными PPP-соединениями. Для
> этого нам нужно заранее обладать некоторой информацией, которая
> будет верна как до установки соединения, так и после. Поскольку
> pppd не генерирует сам нечто уникальное, которое он мог бы нам
> сообщить, то мы вынуждены сгенерировать это сами, и придумать
> некоторый механизм хранения этой информации. Остаётся только
> надеяться на то, что пользователь в порыве безумия не разломает
> этот механизм. :-)
>
> Например:
>
> PIDFILE=`mktemp /var/run/ppp-XXXXXXXX.pid` || exit 1
> LINKNAME=`echo $TMPFILE | awk --re-interval '// { match( $0, "[[:alnum:]]{6,}", q ); print q[0] }'`
> pppd ... linkname $LINKNAME
> ln -s /var/run/$PIDFILE /var/run/etcnet/$NAME
Я специально избавился от всех вызовов awk в /etc/net, потому что ничего кроме
{ print $1 } ему скормить не умею. Я думал в сторону ipparam.
--
DO4-UANIC
next prev parent reply other threads:[~2005-08-30 10:05 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-27 15:15 Yura Zotov
2005-08-29 9:38 ` Denis Ovsienko
2005-08-30 2:50 ` Yura Zotov
2005-08-30 10:05 ` Denis Ovsienko [this message]
2005-08-30 10:46 ` Dmitry V. Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050830140536.78ddd8a8.pilot@altlinux.ru \
--to=pilot@altlinux.ru \
--cc=sisyphus@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
public-inbox-index sisyphus
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sisyphus
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git