Народ, подскажите пожалуйста!!!
Вот в чем трабла... Сервер работает нормально, по DHCP получаю айпишник, потом происходит коннект PPPoE. Однако, если я выдергиваю сетевой кабель провайдера из сетевушки (имитирую обвал оборудования провайдера) даю машине так постоять минут 5, вставляю обратно... Переподключения к PPPoE не происходит... Вот мои конфиги... Что я делаю не так???/etc/ppp/ppp.conf
set log Phase tun command
TeNet:
set device PPPoE:nfe0
set authname yurchello
set authkey ***
set dial
set login
add default HISADDR
set redial 0 0
set timeout 0
set reconnect 3 0
enable dnsна сколько я понимаю, даже если заново не получил айпишник от провайдера, то все равно PPPoE хоть должно подняться!!! а не происходит...
Не должно подниматься.
У меня такой скрипт работает в фоне и каждые 2 мин проверяет:#!/bin/sh
while [ 0 -eq 0 ]; do
[ -z "`ps axu | grep pptp | grep root | grep -v grep`" ] && pppd pty 'pptp ip.server --nolaunchpppd' call provider
sleep 120
done
>[оверквотинг удален]
>У меня такой скрипт работает в фоне и каждые 2 мин проверяет:
>
>
>#!/bin/sh
>while [ 0 -eq 0 ]; do
>[ -z "`ps axu | grep pptp | grep root | grep
>-v grep`" ] && pppd pty 'pptp ip.server --nolaunchpppd' call provider
>
>sleep 120
>doneхм... а как и куда этот скрипт прикрутить??? есть статейка что б почитать? или если не сложно - объясните как его внедрить?
>[оверквотинг удален]
>>#!/bin/sh
>>while [ 0 -eq 0 ]; do
>>[ -z "`ps axu | grep pptp | grep root | grep
>>-v grep`" ] && pppd pty 'pptp ip.server --nolaunchpppd' call provider
>>
>>sleep 120
>>done
>
>хм... а как и куда этот скрипт прикрутить??? есть статейка что б
>почитать? или если не сложно - объясните как его внедрить?Да какая статейка, запустил в фоне скрипт и всё.
pppd pty 'pptp ip.server --nolaunchpppd' call provider - строка дозвона, у тебя может отличаться.
sleep 120 - в секундах до следующего запуска этого скрипта.Повесь в rc.local и всё.
>[оверквотинг удален]
>>
>>хм... а как и куда этот скрипт прикрутить??? есть статейка что б
>>почитать? или если не сложно - объясните как его внедрить?
>
>Да какая статейка, запустил в фоне скрипт и всё.
>pppd pty 'pptp ip.server --nolaunchpppd' call provider - строка дозвона, у тебя
>может отличаться.
>sleep 120 - в секундах до следующего запуска этого скрипта.
>
>Повесь в rc.local и всё.Спасибо... буду рыть теперь гугл :) я просто еще учусь и термин "строка дозвона, у тебя может отличаться" и "Повесь в rc.local и всё" для меня еще загадка :)
>Спасибо... буду рыть теперь гугл :) я просто еще учусь и термин
>"строка дозвона, у тебя может отличаться" и "Повесь в rc.local и
>всё" для меня еще загадка :)rc.local - что бы автозапуск скрипта был при старте, можешь конечно вручную каждый раз "ppp_fail &" У меня при запуске поднимается по записи в interfaces а далее если падает обслуживает скрипт.
Строка дозвона, а как ты к инету вообще подключаешься?
вот таким вот образом :/etc/rc.conf
gateway_enable="YES"
hostname="yurchello.local"
ifconfig_nfe0="DHCP"
ifconfig_rl0="inet 192.168.0.1 netmask 255.255.254.0"
inetd_enable="YES"
keymap="ru.koi8-r"
moused_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="TeNet"
firewall_enable="YES"
#firewall_type="OPEN"
firewall_script="/etc/firewall.conf"
natd_enable="YES"
natd_interface="nfe0"
natd_flags=""
sshd_enable="YES"
usbd_enable="YES"
linux_enable="YES"
trafd_enable="YES"
trafd_ifaces="rl0 nfe0"
trafd_flags=""
trafd_log="/usr/local/var/trafd.log"
apache22_enable="YES"
mysql_enable="YES"
snmpd_enable="YES"
squid_enable="YES"
/etc/ppp/ppp.confdefault:
set log Phase tun commandTeNet:
set device PPPoE:nfe0
set authname yurchello
set authkey ***
set dial
set login
add default HISADDR
set redial 0 0
set timeout 0
set reconnect 3 0
enable dns
>>Спасибо... буду рыть теперь гугл :) я просто еще учусь и термин
>>"строка дозвона, у тебя может отличаться" и "Повесь в rc.local и
>>всё" для меня еще загадка :)
>
>rc.local - что бы автозапуск скрипта был при старте, можешь конечно вручную
>каждый раз "ppp_fail &" У меня при запуске поднимается по записи
>в interfaces а далее если падает обслуживает скрипт.
>
>Строка дозвона, а как ты к инету вообще подключаешься?rc.local вообще отсутствует... он просто с нуля создается?
>rc.local вообще отсутствует... он просто с нуля создается?Да я не помню как на фри. Должен быть, в /etc там же rc.firewall, rc.conf. Ну это неважно, надо просто в автозапуск добавить.
А по поводу команды:
У тебя в ppp настройки твоего подключения. Они вызываются системой при старте из за прописанного в rc.conf ppp_enable=YES и т.д.
Но еще это подключение можно поднять командой. Типа "poptop адрес_сервера" или еще как то ... Тебе просто найти как вызвать подключение через консоль, а не через rc.conf.Скрипт смотрит каждые 2 минуты в процессах (через ps aux) твое подключение и если его нету начинает запуск. Собственно всё просто )
>[оверквотинг удален]
>
>А по поводу команды:
>У тебя в ppp настройки твоего подключения. Они вызываются системой при старте
>из за прописанного в rc.conf ppp_enable=YES и т.д.
>Но еще это подключение можно поднять командой. Типа "poptop адрес_сервера" или еще
>как то ... Тебе просто найти как вызвать подключение через консоль,
>а не через rc.conf.
>
>Скрипт смотрит каждые 2 минуты в процессах (через ps aux) твое подключение
>и если его нету начинает запуск. Собственно всё просто )Хм... вроде б действительно просто... :)
ладно, как стартовать скрипт я разберусь...
а сам скрипт то??
pppd pty 'pptp ip.server --nolaunchpppd' call provider
что тут что и что мне нужно в нем изменить?
>Хм... вроде б действительно просто... :)
>ладно, как стартовать скрипт я разберусь...
>а сам скрипт то??
>pppd pty 'pptp ip.server --nolaunchpppd' call provider
>что тут что и что мне нужно в нем изменить?Ну это строка дозвона в pptp-linux к моему прову
У тебя должно отличаться, ибо FreeBSD, что то типа poptop TeNet хз вобщем...
уточни, у тебя после выдергивания кабеля процесс ppp остается и его интерфейс поднят ?
если так, тогда ppp не видит обрыва, добавь enable lqr в конфиг
иначе если ppp падает то неверно реализован его запуск
Если выдернуть кабель то ррр падает
Вот что еще я интересного заметил - провал связи выглядит так - сервер работает, захожу на него ФТП-клиентом и начинаю лить много фильмов со своего же фтп-сервера... в результате чего пинги в мир пропадают, а с самим сервером - все отлично... лезу путтей на него и вижу
yurchello# ps ax
PID TT STAT TIME COMMAND
0 ?? WLs 0:00.00 [swapper]
1 ?? ILs 0:00.00 /sbin/init --
2 ?? DL 0:00.07 [g_event]
3 ?? DL 0:05.97 [g_up]
4 ?? DL 0:06.42 [g_down]
5 ?? DL 0:00.00 [thread taskq]
6 ?? DL 0:00.00 [acpi_task_0]
7 ?? DL 0:00.00 [acpi_task_1]
8 ?? DL 0:00.00 [acpi_task_2]
9 ?? DL 0:00.00 [xpt_thrd]
10 ?? DL 0:00.00 [audit]
11 ?? RL 23:28.15 [idle: cpu0]
12 ?? WL 0:02.50 [swi4: clock sio]
13 ?? WL 0:00.00 [swi3: vm]
14 ?? WL 0:01.62 [swi1: net]
15 ?? DL 0:06.38 [yarrow]
16 ?? WL 0:00.00 [swi5: +]
17 ?? WL 0:00.00 [swi6: Giant taskq]
18 ?? WL 0:00.00 [swi6: task queue]
19 ?? WL 0:00.00 [swi2: cambio]
20 ?? DL 0:00.00 [kqueue taskq]
21 ?? WL 0:00.00 [irq9: acpi0]
22 ?? WL 0:01.37 [irq21: nfe0 ohci0]
23 ?? DL 0:00.00 [usb0]
24 ?? DL 0:00.00 [usbtask-hc]
25 ?? DL 0:00.00 [usbtask-dr]
26 ?? WL 0:00.00 [irq22: ehci0]
27 ?? DL 0:00.00 [usb1]
28 ?? WL 0:02.51 [irq14: ata0]
29 ?? WL 0:00.00 [irq15: ata1]
30 ?? WL 0:00.00 [irq23: atapci1]
31 ?? WL 4:47.67 [irq17: rl0]
32 ?? DL 0:02.97 [nfe0 taskq]
33 ?? DL 0:00.01 [fdc0]
34 ?? WL 0:00.00 [irq1: atkbd0]
35 ?? WL 0:00.00 [irq12: psm0]
36 ?? WL 0:00.00 [swi0: sio]
37 ?? WL 0:00.00 [irq7: ppbus0 ppc0]
38 ?? DL 0:00.00 [sctp_iterator]
39 ?? DL 0:02.95 [pagedaemon]
40 ?? DL 0:00.00 [vmdaemon]
41 ?? DL 0:00.00 [pagezero]
42 ?? DL 0:00.01 [bufdaemon]
43 ?? DL 0:00.09 [syncer]
44 ?? DL 0:00.01 [vnlru]
45 ?? DL 0:00.02 [softdepflush]
46 ?? DL 0:00.13 [schedcpu]
366 ?? Is 0:00.00 dhclient: nfe0 (dhclient)
449 ?? Ss 0:00.43 /usr/sbin/ppp -quiet -ddial -nat TeNet
613 ?? Is 0:00.00 /sbin/devd
699 ?? Ss 0:07.69 /sbin/natd -dynamic -n nfe0
760 ?? Ss 0:00.01 /usr/sbin/syslogd -s
875 ?? Is 0:00.00 /usr/local/sbin/squid -D
922 ?? S 0:10.50 (squid) -D (squid)
923 ?? Is 0:00.05 (dnsserver) (dnsserver)
924 ?? Is 0:00.01 (dnsserver) (dnsserver)
925 ?? Is 0:00.00 (dnsserver) (dnsserver)
926 ?? Is 0:00.00 (dnsserver) (dnsserver)
927 ?? Is 0:00.00 (dnsserver) (dnsserver)
928 ?? Is 0:00.00 (unlinkd) (unlinkd)
929 ?? Ss 0:00.21 /usr/local/sbin/httpd -DNOHTTPACCEPT
937 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
943 ?? Is 0:00.00 /usr/sbin/sshd
949 ?? Ss 0:00.01 (pinger) (pinger)
950 ?? Ss 0:00.04 sendmail: accepting connections (sendmail)
954 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
955 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
956 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
957 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
958 ?? I 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
959 ?? Is 0:00.00 sendmail: Queue runner@00:30:00 for /var/spool/client
965 ?? Ss 0:00.01 /usr/sbin/cron -s
981 ?? Is 0:00.00 /usr/sbin/moused -p /dev/psm0 -t auto
1008 ?? Is 0:00.00 /usr/sbin/inetd -wW -C 60
1128 ?? Ds 0:49.51 ftpd: 192.168.0.2: anonymous/user@domain.com: RETR ma
1581 ?? Is 0:00.04 sshd: yurchello [priv] (sshd)
1584 ?? S 0:00.02 sshd: yurchello@ttyp0 (sshd)
1029 v0 Is+ 0:00.00 /usr/libexec/getty Pc ttyv0
1030 v1 Is+ 0:00.00 /usr/libexec/getty Pc ttyv1
1031 v2 Is+ 0:00.00 /usr/libexec/getty Pc ttyv2
1032 v3 Is+ 0:00.00 /usr/libexec/getty Pc ttyv3
1033 v4 Is+ 0:00.00 /usr/libexec/getty Pc ttyv4
1034 v5 Is+ 0:00.00 /usr/libexec/getty Pc ttyv5
1035 v6 Is+ 0:00.00 /usr/libexec/getty Pc ttyv6
1036 v7 Is+ 0:00.00 /usr/libexec/getty Pc ttyv7
333 con- I+ 0:00.00 dhclient: nfe0 [priv] (dhclient)
882 con- I+ 0:00.11 /usr/local/sbin/snmpd -P /var/run/snmpd.pid
893 con- I 0:00.01 /bin/sh /usr/local/bin/mysqld_safe --defaults-extra-f
919 con- I 0:01.75 /usr/local/libexec/mysqld --defaults-extra-file=/var/
1586 p0 Is 0:00.01 -sh (sh)
1587 p0 I 0:00.01 su
1588 p0 S 0:00.02 _su (csh)
1594 p0 R+ 0:00.00 ps ax
yurchello#т.е. в данном случае, на сколько я понимаю, ПППоЕ соединение не рвется, а просто каким то образом затыкается сервер... и не натит пакеты с ПППоЕ в локальную сеть... Еще... если теперь пинговать, например, яндекс ру, то 100 потерь, что с локальной сети, что с самого сервера...
А вот после того как я сервер ребутну, все работает опять прелесно...
Что это может быть???
может быть нужно обрезать скорость скачки из локальной сети с ФТП-сервера? и как это можно реализовать???
А че ты фрибсд выбрал если начинающий админ...
Она то система хорошая но иногда требует сборки от начала до конца. Установи лучше Debian.
>А че ты фрибсд выбрал если начинающий админ...
>Она то система хорошая но иногда требует сборки от начала до конца.
>Установи лучше Debian.Москва тоже не сразу построилась :)
Так и я - учится, так учится :) тем более, что дома есть на ком тренироваться - локальную сеть построил на 5 пользователей :) и сделал из себя фактически маленький провайдер для них :)
Попробуй PPPoE поднять через mpd. У меня работает не плохо!
>Попробуй PPPoE поднять через mpd. У меня работает не плохо!ХМ... тоже уже смотрел аналоги серверов :) и как уже на этом форуме говорили - и то, и то - работает великолепно, если грамотно настраивать :)
у меня же трабла, как выяснилось, не с самим pppd, а с тем, что просто затыкается сервер, когда с его фтп льется большое кол-во информации в локальную сеть... Мне кажется, что если порезать скорость отдачи файлов с ФТП-сервера в локальную сеть, то моя проблема исчезнет... но вот как теперь эте реализовать.... ????
вот, что я еще могу рассказать по своей проблеме - даже если я только начинаю со своего сервака в локале лить файлик, то у меня хард на сервере аж захлебывается... а на локальном компе с виндой в этот момент ни чего делать не возможно - винт тоже раскручивается так, что мама не балуйся....
Вобщето я уже запутался! Если проблема в том, что отваливается PPPoE то нужно искать почему он отваливается! Если я правильно понял, то PPPoE реализован через ppp. При падении конетка ppp естественно будет тоже падать. Его нужно перезапускать. Скажу еще что у ppp есть траблы с зависанием! Может повиснуть непонятно почему и убить его бывает просто невозможно! Если PPPoE реализован через pppd, то чтоб он не отваливался достаточно опции persist. При падении конекта демон падать не будет и самостоятельно переконектица. Это касательно PPPoE.
Теперь мне интересно зачем у тебя вобще PPPoE (интернет там или еще что нить) и какое отношение он имеет к трафику, который идет по локалке?
>[оверквотинг удален]
>нужно искать почему он отваливается! Если я правильно понял, то PPPoE
>реализован через ppp. При падении конетка ppp естественно будет тоже падать.
>Его нужно перезапускать. Скажу еще что у ppp есть траблы с
>зависанием! Может повиснуть непонятно почему и убить его бывает просто невозможно!
>Если PPPoE реализован через pppd, то чтоб он не отваливался
>достаточно опции persist. При падении конекта демон падать не будет и
>самостоятельно переконектица. Это касательно PPPoE.
> Теперь мне интересно зачем у тебя вобще PPPoE (интернет
>там или еще что нить) и какое отношение он имеет к
>трафику, который идет по локалке?Так и я уже запутался, но просто заметил когда чаще происходит затыкание сервака... persist - покопаю, не знал о такой функции... а вот про подвисание pppd - прикольно... вот видать почему все советуют mpd ставить..:)
а по поводу зачем мне вообще PPPoE - сначала я просто думал, что сервак затыкается из-за отвала ррр-соединения, но потом заметил другое... а вот отпадает окончально или подвисает ррр - вопрос теперь интересный... особенно про то, что сам процес прибить невозможно... попробую отловить такую ситуацию еще раз...
>[оверквотинг удален]
>Так и я уже запутался, но просто заметил когда чаще происходит затыкание
>сервака... persist - покопаю, не знал о такой функции... а вот
>про подвисание pppd - прикольно... вот видать почему все советуют mpd
>ставить..:)
>
>а по поводу зачем мне вообще PPPoE - сначала я просто думал,
>что сервак затыкается из-за отвала ррр-соединения, но потом заметил другое... а
>вот отпадает окончально или подвисает ррр - вопрос теперь интересный... особенно
>про то, что сам процес прибить невозможно... попробую отловить такую ситуацию
>еще раз...Подвмсает ppp!!! Не путай pppd c ppp!!! Это две разные вещи!!! Хотя и могут делать одно и тоже! Ито, если pppd поддерживает все то, что может ppp!!! У тебя трабла не с pppd или ppp или с темже mpd! Трабла в понимании что это такое, что оно может и как работает!!!
За подвисание с закачки с фтп скажу - если это локалка проблем не должно быть!!! Я не большой спец, но поднимал и и фтр и ппп и мпд!!! Конечо, пришлось много почитать но можно все разрулить!!! Пиши какая ось, топология сети, дальше - поможем! Я сам так многому научился!
ок... Начну с самого начала... FreeBSD 7.0...
По витой паре от провайдера (скорее всего с D-Link 3526) приходит линк ко мне. По DHCP первая сетевая получает IP-адрес. Далее поднимаю ррр-соединение:
cat /etc/ppp/ppp.confdefault:
set log Phase tun commandTeNet:
set device PPPoE:nfe0
disable ipv6cp
enable lqr
set dial
set login
set authname yurchello
set authkey ***
add default HISADDR
set redial 0 0
set timeout 0
set reconnect 3 0
enable dnsАвтоматический старт в /etc/rc.conf
fsck_y_enable="YES"
background_fsck="NO"
gateway_enable="YES"
hostname="yurchello.local"
ifconfig_nfe0="DHCP"
ifconfig_rl0="inet 192.168.0.1 netmask 255.255.254.0"
inetd_enable="YES"
keymap="ru.koi8-r"
moused_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="TeNet"
firewall_enable="YES"
#firewall_type="OPEN"
firewall_script="/etc/firewall.conf"
natd_enable="YES"
natd_interface="nfe0"
natd_flags=""
sshd_enable="YES"
usbd_enable="YES"
linux_enable="YES"
trafd_enable="YES"
trafd_ifaces="rl0 nfe0"
trafd_flags=""
trafd_log="/usr/local/var/trafd.log"
apache22_enable="YES"
mysql_enable="YES"
snmpd_enable="YES"
squid_enable="YES"Дальше... Поставил squid прозрачно и сделал ограничение закачки с внешних адресов, кроме закачек с провайдера:
cat /usr/local/etc/squid/squid.confhttp_port 3128
icp_port 0
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 256 MB
maximum_object_size 8092 KB
maximum_object_size_in_memory 512 KB
cache_dir ufs /usr/local/squid/cache 2048 64 256
cache_access_log /usr/local/squid/logs/access.log
cache_log /usr/local/squid/logs/cache.log
cache_store_log /usr/local/squid/logs/store.log
cache_mgr admin@my_domain.ru
visible_hostname mail.my_domain.ru
tcp_outgoing_address 192.168.0.1
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320acl all src 0.0.0.0/0.0.0.0
acl download urlpath_regex -i \.rm$ \.wma$ \.viv \.mpg$ \.asf$ \.mp2$ \.mp3$ \.mp4$ \.mpeg$ \.mov$ \.wav$ \.avi$ \.swf$ \.wmv$ \.iso$ \.tgz$ \.bz2$ \.exe$ \.rar$ \.zip$ \.gz$ \.rpm$
acl fulldown dstdomain .tenet.ua
delay_pools 1
delay_class 1 1
delay_access 1 allow all download !fulldown
delay_parameters 1 32000/8000acl allowed_sites dstdomain "/usr/local/my_doc_smb/squid/allowed_sites.conf"
acl limited_IP src "/usr/local/my_doc_smb/squid/limited_IP.conf"
acl denied_sites dstdomain "/usr/local/my_doc_smb/squid/denied_ext.conf"
acl localhost src 127.0.0.0/8
acl our_networks src 192.168.0.0/24http_access deny denied_sites
http_access allow allowed_sites
http_access deny limited_IP
http_access allow our_networks
http_access allow localhost
http_access deny allhttp_port 127.0.0.1:3128 transparent
coredump_dir /usr/local/squid/cache
pid_filename /usr/local/squid/logs/squid.pidПлюс прикрутил общий мониторинг в виде CACTI + SARG...
вот и в принципе все... далее со второй сетевой карты в свитч пошла витая пара... со свитча - витая пара до абонента... т.е. топология - самая простейшая... У всех пользователей установлен Windows XP 2 и 3 SP...
ну что - есть какие соображения, народ!!! ???
>ну что - есть какие соображения, народ!!! ???У тебя столько всего наворочео на машие! А задачи какие поставлены перед сервером? Ато уж больно много на нем запущено как я посмотрю!
>>ну что - есть какие соображения, народ!!! ???
>
>У тебя столько всего наворочео на машие! А задачи какие поставлены перед
>сервером? Ато уж больно много на нем запущено как я посмотрю!
>ну чего ж много то?? :) все нуна :)
задачи... хм...
Сервер получает канал и раздает его в локальную сеть... сквид (прозрачный) - псевдо увеличивает скорость загрузки страниц у пользователей плюс уменьшает потребляемый трафик... ну и режет скорость закачек у пользователей, что бы не забивать полностью канал...
мониторинг - кактус и сарг... фиговый мониторинг, но общую картинку создает о использовании канала...
апач - показывает мне эту статистику...
а ФТП - фильмы держу и предоставляю их пользователям сети... кстати... из внешней сети тоже есть ко мне доступ...
вроде вот и все задачи, поставленные мной перед домашним сервером...
enable lqr - команда реконнекта