LINUX.ORG.RU

Как сохранить ppp интерфейс даже если ppp сессия разорвана?


0

0

Компьютер подключается к интернету посредством ppp (pptp) соединения.
Соответственно когда есть подключение - есть и интерфейс ppp0 с внешним IP адресом (статическим).
Когда сессия рвётся - интерфейс пропадает.

Вопрос:
Возможно ли на период пропадания ppp соединения сохранять ppp0 интерфейс? А ещё лучше, чтобы ppp0 интерфейс поднимался в процессе загрузки компьютера (независимо от успешности подсоединения к провайдеру)

Т. е. можно сделать как с обычным Ethernetом? Есть кабель - есть интерфейс, есть связь. Нет кабкля - нет связи, но интерфейс есть.

Если да, то как?


Ответ на: комментарий от Teak

Одна из проблем,которые возникают из-за того, что нет такой возможности:

Сервер proftpd. Один из виртуальных серверов слушает адрес, который выдаётся ppp0.
Если во время загрузки не успевает установиться ppp сессия, proftpd сервер не загружается совсем (не только конкретный виртуальный сервер, но и остальные, слушающие другие интерфейсы).
Если у провайдера проблема (долговременная предположим) и в это время пришлось перезагрузить компьютер, то proftpd сервер удастся запустить только отключив в конфигурации соответствующие виртуальные сервера.

Такая же проблема с bind. Если при старте демона нет одного из интерфейсов, указанных в listen-on, то этот интерфейс не будет прослушиваться даже если потом появится. (any не помогает)

И вообще это проблема всех демонов, не умеющих изначально слушать адрес 0.0.0.0

Сейчас данная проблема решается с помощью скрипта /etc/ppp/ip-up.local. Но как-то это слегка косо и всё равно привязано к доступности провайдера.

ksicom
() автор топика

Вроде раньше это делалось через dummy сетевой интерфейс. На него вешаешь тот же ip адрес, что и на ppp.

mky ★★★★★
()
Ответ на: комментарий от Cosmicman

Замечательно, спасибо. А для FreeBSD есть что-то аналогичное?

Teak ★★★★★
()
Ответ на: комментарий от Cosmicman

Не всё так гладко. ProFTPd вешается на "nonlocal" легко!
А вот bind подмену заметил :) и как и прежде вешается только на локальные ip. Так что его как и прежде приходится в ip-up.local переконфигурировать.

ksicom
() автор топика
Ответ на: комментарий от ksicom

Шибко умный этот bind, небось проверяет, если ли тут ip, на который вешаться. Может этот AI отключить в конфиге можно?

Teak ★★★★★
()
Ответ на: комментарий от Teak

Нашёл!
interface-interval minutes;

Дословно делает следующее:
interface-interval defines the time in MINUTES when scan all interfaces on the server and will begin to listen on new interfaces (assuming they are not prevented by a listen-on option) and stop listening on interfaces which no longer exist. The default is 60 (1 hour), if specified as 0 NO interface scan will be performed. The maximum value is 40320 (28 days). This option may only be specified in a 'global' options statement.

Всё, проблема с named тоже разрешилась :)

ksicom
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.