DHCP + PPTP on WAN
-
я бы сказал что он работает, но с оговоркой что IP l2tp сервера надо указывать только цифрами.
-
ну раз никто не стал возиться, буду придумывать костыли сам.
прошивки на новый Asus n66u еще будут пилить и пилить, так нормальной скорости интернета никогда не дождусьНаконец-то мне подсказали на интернациональном форуме, большое спасибо stephenw10.
Пока что, по идее, вот этот скрипт надо запихнуть в крон#!/bin/sh if [ -f /var/run/l2tp_opt1.pid ] then # echo "mpd5 is running" | logger else /etc/rc.linkup l2tp0 start fi # l2tp0 - имя, отображаемое на страничке Interfaces для вашего l2tp интерфейса.
Таким образом вроде бы можно решить проблему отказывающегося стартовать l2tp с модифицированным interfaces.inc
а модифицировали для того, чтобы получать IP по имени l2tp сервера, как нам велит Билайн. Так как однажды выбранный единственный l2tp сервер может стать недоступным -
Итак, похоже на то что проблема получения l2tp сервер по имени и его автоматического старта решена.
pfSense 2.0.1 nanobsd
Опишу все по порядку.
Понадобится вот что:- mc (с ним удобнее) или текстовый редактор
- установленный cron (System -> Packages -> cron)
**Что получилось:
- L2TP сервер получаем по имени
- добавляем маршрут (l2tp сервер становится виден из внутренней сети [актуально для интернета билайн])
- L2TP стартует сам и даже обновляет IP сервера при падении**
[Решение]
Для всех модификаций советую сделать копии
1) модифицируем /etc/inc/interfaces.inc
1.1 - function interface_ppps_configure($interface)
1.1.1 - раскомменчиваем строку $gateways[$pid] = gethostbyname ($gateways[$pid]);
1.1.2 - а также добавляем код помеченный /* ADDED -start- / - / ADDED -end- */
пункт 1.1.2 позволяет при получении IP l2tp сервера писать маршрут l2tp server - wan gateway. Так как l2tp сервер находится во внешней сети, без маршрута соединение с ним не будет подниматься (это очень любит интернет от билайна).
маршруты у него передаются, по ходу, 249 опциейвот как должно выглядеть:
if(!is_ipaddr($localips[$pid])){ log_error("Could not get a Local IP address for PPTP/L2TP link on {$port} in interfaces_ppps_configure. Using 0.0.0.0 ip!"); $localips[$pid] = "0.0.0.0"; } /* XXX: This needs to go away soon! [It's commented out!] */ /* Configure the gateway (remote IP ) */ if (!$g['booting'] && !is_ipaddr($gateways[$pid]) && is_hostname($gateways[$pid])) { /* XXX: Fix later */ $gateways[$pid] = gethostbyname($gateways[$pid]); if(!is_ipaddr($gateways[$pid])) { log_error("Could not get a valid Gateway IP from {$port} via DNS in interfaces_ppps_configure."); return 0; } } if(!is_ipaddr($gateways[$pid])){ log_error("Could not get a PPTP/L2TP Remote IP address from {$dhcp_gateway} for {$gway} in interfaces_ppps_configure."); return 0; } /* ADDED -start- */ //$parent_gw = get_interface_gateway($port); $wanif = get_real_wan_interface(); $parent_gw = file_get_contents("/tmp/{$wanif}_router"); mwexec("route add -host {$gateways[$pid]} {$parent_gw}"); /* ADDED -end- */ pfSense_ngctl_attach(".", $port); break; case "ppp":
i: По поводу пунктов 1.2 и 1.3 не уверен, приносят ли они пользу, но на всякий случай. Эти изменения предложены Micky на 4-й странице http://forum.pfsense.org/index.php/topic,25465.15.html
к слову, и 1.1.2 предложено им, хотя в том виде не работало…1.2 - function interface_bring_down($interface = "wan", $destroy = false)
$int_list = get_configured_interface_list_by_realif(); if (is_array($config['ppps']['ppp']) && count($config['ppps']['ppp'])) { foreach ($config['ppps']['ppp'] as $pppid => $ppp) { if ($ppp['type'] == 'pptp' || $ppp['type'] == 'l2tp') { $ports = explode(',',$ppp['ports']); foreach($ports as $pid => $port){ if ($port == $interface) { interface_bring_down($int_list[$ppp['if']]); } } } } }
местоположение:
function interface_bring_down($interface = "wan", $destroy = false) { global $config, $g; if (!isset($config['interfaces'][$interface])) return; $ifcfg = $config['interfaces'][$interface]; $realif = get_real_interface($interface); /* ADDED -start- */ $int_list = get_configured_interface_list_by_realif(); if (is_array($config['ppps']['ppp']) && count($config['ppps']['ppp'])) { foreach ($config['ppps']['ppp'] as $pppid => $ppp) { if ($ppp['type'] == 'pptp' || $ppp['type'] == 'l2tp') { $ports = explode(',',$ppp['ports']); foreach($ports as $pid => $port){ if ($port == $interface) { interface_bring_down($int_list[$ppp['if']]); } } } } } /* ADDED -end- */ switch ($ifcfg['ipaddr']) { case "ppp": case "pppoe": case "pptp": case "l2tp": if (is_array($config['ppps']['ppp']) && count($config['ppps']['ppp'])) {
1.3 - function interface_dhcp_configure($interface = "wan")
$int_list = get_configured_interface_list_by_realif(); if (is_array($config['ppps']['ppp']) && count($config['ppps']['ppp'])) { foreach ($config['ppps']['ppp'] as $pppid => $ppp) { if ($ppp['type'] == 'pptp' || $ppp['type'] == 'l2tp') { $ports = explode(',',$ppp['ports']); foreach($ports as $pid => $port){ if ($port == $interface) { interface_ppps_configure($int_list[$ppp['if']]); } } } } }
местоположение (в конце):
fwrite($fd, $dhclientconf); fclose($fd); /* bring wan interface up before starting dhclient */ if($wanif) interfaces_bring_up($wanif); else log_error("Could not bring up {$wanif} interface in interface_dhcp_configure()"); /* fire up dhclient */ mwexec("/sbin/dhclient -c {$g['varetc_path']}/dhclient_{$interface}.conf {$wanif} > {$g['tmp_path']}/{$wanif}_output > {$g['tmp_path']}/{$wanif}_error_output"); /* ADDED -start- */ $int_list = get_configured_interface_list_by_realif(); if (is_array($config['ppps']['ppp']) && count($config['ppps']['ppp'])) { foreach ($config['ppps']['ppp'] as $pppid => $ppp) { if ($ppp['type'] == 'pptp' || $ppp['type'] == 'l2tp') { $ports = explode(',',$ppp['ports']); foreach($ports as $pid => $port){ if ($port == $interface) { interface_ppps_configure($int_list[$ppp['if']]); } } } } } /* ADDED -end- */ return 0; }
i: теперь перед стартом мы получаем l2tp адрес сервера по имени (полученный через DNS IP записывается в конфигурацию mpd5.
Получили две проблемы:- сам интерфейс не стартует
- надо переконфигурировать l2tp соединение, если, например, l2tp сервер стал недоступным. Пример: оборвался WAN и L2TP, через некоторое время WAN поднимается, а L2TP продолжает стучаться на старый IP, хотя можно было бы получить и новый.
Эти проблемы и будем решать ниже
2) создаем два файла в /usr/scripts/ (папку scripts придется создать)
2.1 - файл start-keeper.sh#! /bin/sh ######################################################################################### # # # This file starts mpd-keeper unless it is not already started. # # Before using make sure you put your variables at /usr/sctipts/mpd-keeper # # # ######################################################################################### res=$(ps -A | grep -w '[m]pd-keeper') if [ ! "$res" ] then echo "Starting mpd-keeper" | logger /usr/bin/nice -n20 /usr/scripts/mpd-keeper fi
2.2 - файл mpd-keeper
##### VARIABLES ##### # wan is your WAN interface network port name. Can be viewed at pfsense welcome screen. wan='re0' # l2tp is your l2tp network port name (also can be viewed in Webconfigurator -> Status -> Interfaces -> l2tp interface header l2tp='l2tp0' # pid can be found in /var/run should looks same. This file creates when your l2tp is up. pid='l2tp_opt1.pid' # repeat time for this script (in seconds) repeat_time='5' # time to wait for bringing l2tp connection up (in seconds) l2tpup_time='60' ##### CODE ##### while [ 1 -eq 1 ] do if [ ! -f /tmp/${l2tp}up ] then if [ -f /var/run/$pid ] then # If l2tp connection is down (no IP) and mpd5 for this connection is running we kill mpd # to be able to change connection settings, specifically l2tp peer. # Because if (for example) l2tp peer is down we can get different l2tp peer IP using hostname. res2=$(cat /var/run/$pid) echo "l2tp is down - killing mpd5" | logger kill $res2 fi fi sleep 1 res1=$(ifconfig $wan | grep status | cut -d : -f 2) if [ ! -f /var/run/$pid ] then if [ "$res1" = " active" ] then # If wan connection is active and there is no l2tp over it, we start l2tp connection. echo "wan is active - starting l2tp connection" | logger /etc/rc.linkup $l2tp start # L2TP connection needs some time to come up. # Without sleep it seems that mpd5 will be killed before it has a chance # to connect to l2tp server (if repeat_time is less than ~30) sleep $l2tpup_time else #echo "wan is not active. l2tp cannot start" | logger fi fi sleep $repeat_time done
опишу переменные, которые надо установить в соответствии с Вашей системой
wan - название вашего интерфейса WAN, которые показывается при приветственном окне в pfsense
wan='re0'
l2tp - имя вашего интерфейса L2TP (показывается в Webconfigurator -> Status -> Interfaces -> l2tp interface header)
l2tp='l2tp0'
pid может быть найден /var/run выглядеть должен примерно также. Файл создается когда соединение l2tp поднято.
pid='l2tp_opt1.pid'
интервал повтора скрипта (в секундах)
repeat_time='5'
время в течении которого ожидаем поднятия интерфейса (в секундах) (за короткое время mpd может не успеть дозвониться и установить связь - он будет выключен этим же скриптом)
l2tpup_time='60'
2.3 - делаем созданные файлы исполняемыми командой chmod 755 filename (я вот не помнил наизусть как)
3) настраиваем cron (Services -> cron)
minute */1
hour *
mday *
month *
wday *
who root
command /bin/sh /usr/scripts/start-keeper.shВроде все :)
Спасибо: Steve (stephenw10), Micky, Evgeny.
P.S.: мой первый "общественный"
скриптнабор скриптов; в FreeBSD новичок, то же самое относится к сетевым технологиям. Если есть какие-либо ошибки или дополенения - с удовольствием исправлю\дополню. -
Итак, похоже на то что проблема получения l2tp сервер по имени и его автоматического старта решена.
Хм. Аналогично имею провайдера, именуемого АИСТ. Получаю ip по dhcp на wan внутренней сети, некоторой, из 10.0.0.0/8. Для коннекта с инетом - впн, pptp.
Юзаю pfsense 2.1. На данный момент сервер впн забил по ип, но надо по имени fqdn. Инет пашет, все ок вроде. Но есть косяк с тем, что почему-то шлюз не резолвит с днс провайдера хосты внутресетевые.
т.е. даже в гуглевском днс они имеют записи. если на сетевом интерфейсе в винде прописать днс гугля или от провайдера, то все резолвит. Если использовать dns forwarder шлюза - не резолвит (в general dns прописаны).
Ну и странно, что у меня оба шлюза от провайдера являются дефолтовыми. Т.е. шлюз полученный из внутренней сети, и шлюз полученный при соединении впн.
С другим провайдером все работало окей, правда там pppoe было )p.s. из сообщения выше костыли не юзал, пака что
-
У прова скорее всего split DNS. Попробуйте решить записью в Services: DNS forwarder-Advanced _–-> rebind-domain-ok=/site1/site2/site3/
-
Огромный респект ncat за модификацию !
Попробовал настроить у себя - получилось, но в логах постоянно маячит такая строчка:
php: : The command 'route change -host 10.172.40.1' returned exit code '1', the output was 'route: writing to routing socket: No such process route: writing to routing socket: Invalid argument change host 10.172.40.1: Invalid argument'
И еще почему-то не прописывается default gateway в System->Routing, и у клиентов интернета нет, пока руками не прописать что opt1 это default
Но в целом прогресс огромный - оно даже переподымается после падения wan :)) -
gr0mW, Спасибо, помогло) Оказалось, что поиском по форуму находит похожую ситуацию с таким же решением проблемы.. почему-то не нашел я сразу.
UPD: Увидел в опциях, в Advanced, пункт "Disable DNS Rebinding Checks". Так вот при активации данной опции, так же начинают резолвиться внутренние адреса. Но интересно, чревато ли это чем-либо?)
-
ncat
Такой вопрос, на сколько я понимаю при такой настройке на Wan мы получаем ip по DHCP?
Вопрос в следующем, при провешивании портов с помощью UPNP у нас они будут не в Интернет же провешиваться? Или я что-то не понимаю? -
Огромный респект
Рад что кому-то пригодилось
Попробовал настроить у себя - получилось, но в логах постоянно маячит такая строчка:
php: : The command 'route change -host 10.172.40.1' returned exit code '1', the output was 'route: writing to routing socket: No such process route: writing to routing socket: Invalid argument change host 10.172.40.1: Invalid argument'
Такая же штука была (не знаю есть сейчас или нет) не обращал внимания на нее.
Тут стоит пояснить про пункт 1.1.2 из решения:
Конфигурирование L2TP:$gateways[$pid] = gethostbyname($gateways[$pid]); //(из решения 1.1.1) - получаем IP по имени $wanif = get_real_wan_interface(); // судя по всему, получаем WAN $parent_gw = file_get_contents("/tmp/{$wanif}_router"); // узнаем gateway у него (пишется в файл; у меня например в /tmp/re0_router) mwexec("route add -host {$gateways[$pid]} {$parent_gw}"); // прописываем маршрут.
Такая схема работает у меня, но у других провайдеров она может отличаться. Возможно кому-то и не надо писать маршрут…
И еще почему-то не прописывается default gateway в System->Routing, и у клиентов интернета нет, пока руками не прописать что opt1 это default
Я через это же меню поставил OPT1 как default галочкой, все сохраняется вроде.
Но в целом прогресс огромный - оно даже переподымается после падения wan :))
пишите о результатах
Такой вопрос, на сколько я понимаю при такой настройке на Wan мы получаем ip по DHCP?
вроде да :)
Вопрос в следующем, при провешивании портов с помощью UPNP у нас они будут не в Интернет же провешиваться? Или я что-то не понимаю?
не занимался этим. Тока бросал порт для торрентов (NAT). Там надо было в interfaces выбрать L2TP (ну или как там называется интерфейс с интернетом)
И вообще позволю себе себя же процитировать:
@ncat:в FreeBSD новичок, то же самое относится к сетевым технологиям.
так что проверяйте и относитесь с недоверием ::)
надеюсь нету оверквотинга?
Ах да! следите за тем что написали в скрипте и как он работает (mpd-keeper); он в бесконечном цикле ;D. Так что проверяйте процессы при первых запусках, а то мало ли что :-\
-
Почти неделю полёт нормальный. Наконец-то один из самых сочных фаерволов нормально заработал с билайном!
Осуществил то что давно хотел: "МОНСТРОУТЕР" 8) - 5015A-EHF-D525 на нём esxi а в нём pfsense + файлопомойка/торрент на винде. Лёгко держит 60 мегабит по l2tp.
Теперь всё самостоятельно переподключается при падениях wan и отрубе/восстановлении электричества. Проводил стресс-тесты - работает блин!
Я счастлив ;D
Ещё раз спасибо ncat!!! -
хыхы) очень помог stephenw10 кстати, я его достал в личке :D
еще бы подключить принтер, сделать failover, настроить QoS и дождаться WiFi-N и можно будет не мечтать об Asus rt-n66u )))p.s. еще не смог настроить IPTV через igmp
-
ncat
Принципиально именно igmp (для приставки?). Я смотрел ЧЕ 2012 на билайновском IPTV Спорт 1 HD (к которому они почти на месяц свободный доступ дали) через udpxy. -
В качестве теста сделал WAN(static) + PPTP(dynamic) на pFsense 2.0.1 по инструкции ncat http://forum.pfsense.org/index.php/topic,24734.msg215185.html#msg215185
Провайдер Билайн. VPN-сервер IP-адресом. Работает, после перезагрузки поднимается. Наблюдаю.
=======================
Вопрос вдогонку - реально ли поднять еще "комплект WAN-ов" в том же духе, если у них совпадает подсеть и GW ? Т.е.
LAN 192.168.1.1/24
WAN1_STATIC_LOCAL 10.1.1.2/24 GW 10.1.1.1
WAN1_DYNAMIC_INET 1.2.3.5/32 GW 1.2.3.4WAN2_STATIC_LOCAL 10.1.1.3/24 GW 10.1.1.1
WAN1_DYNAMIC_INET 1.2.3.6/32 GW 1.2.3.4при этом хочется возможности роутинга одних клиентов из LAN в один гейт, других - в другой. Или я слишком много хочу ? :)
-
Здравствуйте!
У меня интернет приходит по выделенной линии, соответственно я настроил wan на получение ip по dhcp, и добавил интерфейс opt1(pptp), который должен подниматься последним.
При загрузке я вижу что сначала поднимается WAN потом LAN и последним OPT1, однако по факту интерфейс не поднимается. Если после включения нажжать кнопку подключения или в консоле команду /etc/rc.linkup pptp0 start все подключается и работает.
Я установил пакет shellcmd написал туда эту команду, однако она все равно не срабатывает, после перезагрузки интерфейс не поднимается.
Как побороть эту проблему?
upd
вобщем написал скрипт, который дергается по cron. Всем спасибо -
ncat, оргомное псасибо за скрипты, все офигенно классно работает.
В данном коде убрал только два апострофа перед $parent_gw = get_interface_gateway($port); и все заработало)))
if(!is_ipaddr($localips[$pid])){ log_error("Could not get a Local IP address for PPTP/L2TP link on {$port} in interfaces_ppps_configure. Using 0.0.0.0 ip!"); $localips[$pid] = "0.0.0.0"; } /* XXX: This needs to go away soon! [It's commented out!] */ /* Configure the gateway (remote IP ) */ if (!$g['booting'] && !is_ipaddr($gateways[$pid]) && is_hostname($gateways[$pid])) { /* XXX: Fix later */ $gateways[$pid] = gethostbyname($gateways[$pid]); if(!is_ipaddr($gateways[$pid])) { log_error("Could not get a valid Gateway IP from {$port} via DNS in interfaces_ppps_configure."); return 0; } } if(!is_ipaddr($gateways[$pid])){ log_error("Could not get a PPTP/L2TP Remote IP address from {$dhcp_gateway} for {$gway} in interfaces_ppps_configure."); return 0; } /* ADDED -start- */ //$parent_gw = get_interface_gateway($port); $wanif = get_real_wan_interface(); $parent_gw = file_get_contents("/tmp/{$wanif}_router"); mwexec("route add -host {$gateways[$pid]} {$parent_gw}"); /* ADDED -end- */ pfSense_ngctl_attach(".", $port); break; case "ppp":
На данном сайте не понятно что в коде написано цифра 1 или буква l, поэтому ни сразу вбил правильно код из примера ниже.
2.2 - файл mpd-keeper##### VARIABLES ##### # wan is your WAN interface network port name. Can be viewed at pfsense welcome screen. wan='re0' # l2tp is your l2tp network port name (also can be viewed in Webconfigurator -> Status -> Interfaces -> l2tp interface header l2tp='l2tp0' # pid can be found in /var/run should looks same. This file creates when your l2tp is up. pid='l2tp_opt1.pid' # repeat time for this script (in seconds) repeat_time='5' # time to wait for bringing l2tp connection up (in seconds) l2tpup_time='60' ##### CODE ##### while [ 1 -eq 1 ] do if [ ! -f /tmp/${l2tp}up ] then if [ -f /var/run/$pid ] then # If l2tp connection is down (no IP) and mpd5 for this connection is running we kill mpd # to be able to change connection settings, specifically l2tp peer. # Because if (for example) l2tp peer is down we can get different l2tp peer IP using hostname. res2=$(cat /var/run/$pid) echo "l2tp is down - killing mpd5" | logger kill $res2 fi fi sleep 1 res1=$(ifconfig $wan | grep status | cut -d : -f 2) if [ ! -f /var/run/$pid ] then if [ "$res1" = " active" ] then # If wan connection is active and there is no l2tp over it, we start l2tp connection. echo "wan is active - starting l2tp connection" | logger /etc/rc.linkup $l2tp start # L2TP connection needs some time to come up. # Without sleep it seems that mpd5 will be killed before it has a chance # to connect to l2tp server (if repeat_time is less than ~30) sleep $l2tpup_time else #echo "wan is not active. l2tp cannot start" | logger fi fi sleep $repeat_time done
Скрипты актуальны и работают, переподключение у скрипта занимает 3-4 минуты, долговато, но все равно супер. В начале без скриптов интернет вообще не врубался.
Теперь только непонятно почему pfsense режет скорость, из за скриптов или настроек, может кто-нить подсказать?
Скорость должна быть 80 мбит/с а на деле 50-60 мбит/с.Народ также подскажите как настроить wifi карточку чтобы она также раздавала инет?
И самое главное как настроить раздачу интернета для всех одинаково?, чтобы не получилось как на билайновском роутере один качает и все, все остальные сидят курят.За ранее благодарен.
-
Всем привет!
Требуется ваша экспертная помощь. Условия следующие:
1. Есть центтральный офис. В нём сейчас стоит PPTP сервер на основе Windows Server 2003(на нём ещё очень много чего накручено предыдущим администратором - сейчас пока разбираюсь и готовлючь к переезду, но заменить его возможности нет)
2. Есть удалённый склад. Там сидят несколько клиентов, которые по PPTP(каждый самостоятельно запускает соединение на своём компьютере) когда надо ходят в центральный офис.Как вы видите, схема убогая и правильно для начала будет поставить в офис ротутер, котрый будет держать VPN сессию до основного офиса. В будущес в центральный офис так же поставлю Pfsense и подниму IPSEC-VPN между ними.
Сейчас хочу на склад поставить шлюза н основе PfSense 2.0.1 и на его основе уже поднять PPTP сессию на виндовый PPTP сервер в центральном офисе.
Столкнулся с проблемой при настройке конфигарации:
Склад->Pfsense 2.0.1->PPTP->PPTP Server(Windows 2003)->центральный офис
Pfsense 2.0.1 не поднимает сессию до сервера PPTP.Пробовал править согласно инструкции:
http://www.thin.kiev.ua/router-os/50-pfsense/680-pptp-clien-wan-pfsense-20.htmlВсё равно не работает.
PPTP Server - Windows 2003 работает - виндовые клиенты к неому нормально подключаются по PPTP.
Пожалуйста, помогите советом, может быть кто-нибудь сталкивался?
З.Ы. Знаю, что PPTP теперь отличнно расшифровывается, но требуется ваша помощь, чтобы хотя бы временно решить данную проблему.
-
rinx, я думаю стоит вынести ваш вопрос в отдельную ветку т.к. к данному топику он не подходит.
Так же вам следует:
- указать как приходит интернет на склад
- логи с pfsense –> status --> system logs --> ppp
так же желательно набросать схему сети с адресацией
-
Теперь только непонятно почему pfsense режет скорость, из за скриптов или настроек, может кто-нить подсказать?
Скорость должна быть 80 мбит/с а на деле 50-60 мбит/с.Сетевые карточки какие, что с загрузкой CPU и памяти в момент полной утилизации канала ?
Народ также подскажите как настроить wifi карточку чтобы она также раздавала инет?
И самое главное как настроить раздачу интернета для всех одинаково?, чтобы не получилось как на билайновском роутере один качает и все, все остальные сидят курят.За ранее благодарен.
Сделать ее бриджем с LAN, как вариант.
Полоса по дефолту делится динамически же. -
Сетевые карточки какие, что с загрузкой CPU и памяти в момент полной утилизации канала ?
Загрузка CPU где то на 90-100 процентов, что уже плохо, память 9%
И после долгой работы роутер виснет, в чем может быть трабла?Сетевые карты:
dev.rl.0.%desc: RealTek 8139 10/100BaseTX
dev.rl.0.%driver: rl
dev.rl.0.%location: slot=1 function=0
dev.rl.0.%pnpinfo: vendor=0x10ec device=0x8139 subvendor=0x10ec subdevice=0x8139 class=0x020000
dev.rl.0.%parent: pci2
dev.rl.0.twister_enable: 0
rl0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
options=8 <vlan_mtu>ether 00:e0:4c:9b:ad:4b
inet6 fe80::2e0:4cff:fe9b:ad4b%rl0 prefixlen 64 scopeid 0x1
inet 16.28.138.59 netmask 0xfffff800 broadcast 16.28.138.255
nd6 options=3 <performnud,accept_rtadv>media: Ethernet autoselect (100baseTX <full-duplex>)
status: activedev.ste.0.%desc: D-Link DL10050 10/100BaseTX
dev.ste.0.%driver: ste
dev.ste.0.%location: slot=2 function=0
dev.ste.0.%pnpinfo: vendor=0x1186 device=0x1002 subvendor=0x1186 subdevice=0x1002 class=0x020000
dev.ste.0.%parent: pci2
dev.ste.0.int_rx_mod: 150
dev.ste.0.stats.rx.good_octets: 19644650
dev.ste.0.stats.rx.good_frames: 103768
dev.ste.0.stats.rx.good_bcast_frames: 85
dev.ste.0.stats.rx.good_mcast_frames: 0
dev.ste.0.stats.rx.lost_frames: 8
dev.ste.0.stats.tx.good_octets: 198323693
dev.ste.0.stats.tx.good_frames: 172799
dev.ste.0.stats.tx.good_bcast_frames: 5
dev.ste.0.stats.tx.good_mcast_frames: 4
dev.ste.0.stats.tx.carrier_errs: 0
dev.ste.0.stats.tx.single_colls: 0
dev.ste.0.stats.tx.multi_colls: 0
dev.ste.0.stats.tx.late_colls: 0
dev.ste.0.stats.tx.defers: 0
dev.ste.0.stats.tx.excess_defers: 0
dev.ste.0.stats.tx.abort: 0
ste0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
options=82008 <vlan_mtu,wol_magic,linkstate>ether 00:05:5d:1a:5f:1f
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::205:5dff:fe1a:5f1f%ste0 prefixlen 64 scopeid 0x2
nd6 options=3 <performnud,accept_rtadv>media: Ethernet autoselect (100baseTX <full-duplex>)
status: active</full-duplex></performnud,accept_rtadv></vlan_mtu,wol_magic,linkstate></up,broadcast,running,simplex,multicast></full-duplex></performnud,accept_rtadv></vlan_mtu></up,broadcast,running,simplex,multicast> -
Проц: Пенек 4 1.7
Память: 1Гб
Почему проц грузится под 100% не понятно.
Сеть обустроена так:
pfSense -> Switch -> 15 компьютеров.в логах вот такая кадабра после загрузки большого файла:
Nov 26 13:03:28 root: wan is active - starting l2tp connection Nov 26 13:03:28 root: wan is active - starting l2tp connection Nov 26 13:03:28 root: wan is active - starting l2tp connection Nov 26 13:03:28 root: wan is active - starting l2tp connection Nov 26 13:03:29 root: wan is active - starting l2tp connection Nov 26 13:03:29 root: wan is active - starting l2tp connection Nov 26 13:03:29 root: wan is active - starting l2tp connection Nov 26 13:03:30 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:30 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:30 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:31 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:03:31 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:03:31 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:03:31 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:03:31 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:03:31 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:31 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:31 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:03:31 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:31 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:31 root: wan is active - starting l2tp connection Nov 26 13:03:31 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:03:31 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:03:31 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:31 root: wan is active - starting l2tp connection Nov 26 13:03:32 root: l2tp is down - killing mpd5 Nov 26 13:03:32 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:32 root: l2tp is down - killing mpd5 Nov 26 13:03:33 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:33 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:33 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:34 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:34 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:34 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:03:34 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:35 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:35 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:35 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:35 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:35 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:37 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:37 root: l2tp is down - killing mpd5 Nov 26 13:03:37 root: l2tp is down - killing mpd5 Nov 26 13:03:37 root: l2tp is down - killing mpd5 Nov 26 13:03:38 root: l2tp is down - killing mpd5 Nov 26 13:03:38 root: l2tp is down - killing mpd5 Nov 26 13:03:38 root: l2tp is down - killing mpd5 Nov 26 13:03:39 root: wan is active - starting l2tp connection Nov 26 13:03:39 root: wan is active - starting l2tp connection Nov 26 13:03:39 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:40 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:40 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:40 php: : DEVD Ethernet attached event for opt1 Nov 26 13:03:40 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:03:41 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:43 root: l2tp is down - killing mpd5 Nov 26 13:03:43 root: l2tp is down - killing mpd5 Nov 26 13:03:43 root: l2tp is down - killing mpd5 Nov 26 13:03:44 root: l2tp is down - killing mpd5 Nov 26 13:03:44 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:46 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:48 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:49 root: l2tp is down - killing mpd5 Nov 26 13:03:49 root: l2tp is down - killing mpd5 Nov 26 13:03:49 root: l2tp is down - killing mpd5 Nov 26 13:03:50 root: l2tp is down - killing mpd5 Nov 26 13:03:51 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:54 kernel: ng0: changing name to 'l2tp0' Nov 26 13:03:55 root: l2tp is down - killing mpd5 Nov 26 13:03:55 root: l2tp is down - killing mpd5 Nov 26 13:03:55 root: l2tp is down - killing mpd5 Nov 26 13:03:56 root: l2tp is down - killing mpd5 Nov 26 13:04:00 root: Starting mpd-keeper Nov 26 13:04:01 root: wan is active - starting l2tp connection Nov 26 13:04:01 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:01 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:04:01 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:04:01 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:02 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:02 root: l2tp is down - killing mpd5 Nov 26 13:04:08 root: wan is active - starting l2tp connection Nov 26 13:04:09 root: wan is active - starting l2tp connection Nov 26 13:04:09 root: wan is active - starting l2tp connection Nov 26 13:04:09 root: wan is active - starting l2tp connection Nov 26 13:04:10 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:10 php: : The command '/sbin/ifconfig 'l2tp0' -staticarp ' returned exit code '1', the output was 'ifconfig: interface l2tp0 does not exist' Nov 26 13:04:10 php: : The command '/usr/sbin/arp -d -i 'l2tp0' -a > /dev/null 2>&1 ' returned exit code '1', the output was '' Nov 26 13:04:10 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:10 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:10 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:10 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:10 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:10 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:11 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:11 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:12 root: l2tp is down - killing mpd5 Nov 26 13:04:13 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:13 root: l2tp is down - killing mpd5 Nov 26 13:04:13 root: l2tp is down - killing mpd5 Nov 26 13:04:13 root: l2tp is down - killing mpd5 Nov 26 13:04:16 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:17 root: l2tp is down - killing mpd5 Nov 26 13:04:17 root: l2tp is down - killing mpd5 Nov 26 13:04:17 root: l2tp is down - killing mpd5 Nov 26 13:04:18 root: l2tp is down - killing mpd5 Nov 26 13:04:18 root: wan is active - starting l2tp connection Nov 26 13:04:18 root: wan is active - starting l2tp connection Nov 26 13:04:19 root: wan is active - starting l2tp connection Nov 26 13:04:19 root: wan is active - starting l2tp connection Nov 26 13:04:19 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:19 root: l2tp is down - killing mpd5 Nov 26 13:04:19 root: l2tp is down - killing mpd5 Nov 26 13:04:19 root: l2tp is down - killing mpd5 Nov 26 13:04:20 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:20 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:20 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:20 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:20 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:20 php: : DEVD Ethernet attached event for opt1 Nov 26 13:04:20 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:21 php: : HOTPLUG: Configuring interface opt1 Nov 26 13:04:21 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:24 kernel: ng0: changing name to 'l2tp0' Nov 26 13:04:24 root: l2tp is down - killing mpd5
Больше всегно грузится сей процесс:
11 root 171 ki31 0K 8K RUN 42:25 71.39% idleДелаю top -sh, и все 100% грузит ТОР процесс:
last pid: 7602; load averages: 0.95, 0.62, 0.38 up 0+00:17:50 18:45:28 190 processes: 3 running, 151 sleeping, 17 zombie, 19 waiting Mem: 42M Active, 14M Inact, 38M Wired, 972K Cache, 23M Buf, 889M Free Swap: 2048M Total, 2048M Free PID USERNAME PRI NICE SIZE RES STATE TIME WCPU COMMAND 34067 root 114 0 3712K 2268K RUN 0:34 80.57% top 12 root -68 - 0K 152K WAIT 0:09 2.78% {irq22: ste0} 1148 root 45 0 7992K 3508K select 0:07 2.39% sshd 13 root 45 - 0K 8K sleep 0:07 1.56% ng_queue 12 root -68 - 0K 152K WAIT 0:03 0.98% {irq21: rl0} 47616 root 76 0 53596K 16124K piperd 0:04 0.29% php 11 root 171 ki31 0K 8K RUN 12:46 0.00% idle 0 root 76 0 0K 48K sched 0:56 0.00% {swapper} 12 root -32 - 0K 152K WAIT 0:07 0.00% {swi4: clock} 47503 root 76 0 54620K 20456K accept 0:04 0.00% php 41813 root 44 0 5564K 3280K kqread 0:01 0.00% lighttpd 14 root -16 - 0K 8K - 0:01 0.00% yarrow 33907 root 64 20 3316K 1348K select 0:00 0.00% apinger 51727 nobody 44 0 5556K 2524K select 0:00 0.00% dnsmasq 13234 root 76 20 3656K 1496K wait 0:00 0.00% sh 24535 root 44 0 4948K 2512K select 0:00 0.00% syslogd 40402 root 66 20 3656K 1460K wait 0:00 0.00% sh 20694 root 66 20 3656K 1460K wait 0:00 0.00% sh