LINUX.ORG.RU
ФорумAdmin

при рассоединении не завершаются процессы pptpd и pppd


0

0

  Есть шлюз в интернет. На нем настроено два канала ADSL (ppp0)
и спутниковый (gre1 - тунель на провайдера, пакеты уходят в тунель
и возвращаются на тарелку dvb0_0). Все работает отлично.

  Решил раздавать спутниковые подписки в локальную сеть. Сделал следующее:
Поднял VPN (pptpd) сервер. Он выделяет пользователю IP, который
указан у него в подписке (выдает провайдер). Трафик от клиента
приходит на шлюз и уходит в gre1, но с уже с другим source_IP (который
у юзера в подписке прописан). Ответ приходит на dvb0_0 и отдается
обратно клиенту. Провайдер ведет подсчет трафика по source_IP.

  И вот тут появилась следующая проблема:
1. Клиент подключается.
2. Работает.
3. Отключается. Но при отключении не завершаются процессы pppd
и pptpd. При этом команда ifconfig ничего не выдает и не завершается.
В лог (/var/log/syslog) сыпется следующее:

Message from syslogd@sam-gw at Mon Aug 14 00:27:53 2006 ...
sam-gw kernel: unregister_netdevice: waiting for ppp1 to become free. Usage count = 1
Aug 14 00:27:53 sam-gw kernel: unregister_netdevice: waiting for ppp1 to become free. Usage count = 1

  Проблема возникает только если клиент поработал со спутниковым каналом.
Т.е. если клиент подключился, ничего не делал (трафик не шел)
и отключился, pppd (и pptpd) завершается нормально. Самое странное,
что если трафик клиента направить в другой канал (ppp0 - ADSL)
и сделать NAT, то тоже все ОК. Не работает, только
ЕСЛИ КЛИЕНТ РАБОТАЕТ И ИМЕННО СО СПУТНИКОВЫМ КАНАЛОМ!!!

-------------------------------------------------
Система: Slackware 10.1
машина: pI-150Mhz, 32Mb RAM
ядро: 2.6.10
pppd version 2.4.2
pptpd v1.3.0 (stable)
провайдер: SpaceGate, тариф sg_traf на AM22.

конфигурация ядра, касательно PPP:
CONFIG_PPP=y
# CONFIG_PPP_MULTILINK is not set
# CONFIG_PPP_FILTER is not set
CONFIG_PPP_ASYNC=y
CONFIG_PPP_SYNC_TTY=y
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_MPPE_MPPC=y
CONFIG_PPPOE=y

касательно GRE:
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y

вывод lsmod:
Module                  Size  Used by
skystar2               25636  1
mt352                   4708  1 skystar2
mt312                   6660  1 skystar2
stv0299                 8644  1 skystar2
i2c_core               17520  4 skystar2,mt352,mt312,stv0299
dvb_core               71848  1 skystar2
ipip                    7876  0
xfrm4_tunnel            2852  1 ipip
ip_gre                 10144  0
iptable_raw             1472  0
8139too                19232  0
★★

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