Jump to content

neironus

Muggles
  • Posts

    20
  • Joined

  • Last visited

Everything posted by neironus

  1. так же попробовал поиграться с вланами, у меня после м5 клиента стоит умный свич dlink3010g, прокинул до него тэгом влан с сервера, но увы ситуация с получением ip осталась прежней.
  2. поставил WDS с обоих сторон. магия не помогла. всеравно вижу в логах только оферы: Oct 23 09:18:52 nas dhcpd: DHCPDISCOVER from f8:1a:67:94:dc:2b via 172.16.13.254 Oct 23 09:18:52 nas dhcpd: DHCPOFFER on 172.16.13.29 to f8:1a:67:94:dc:2b via 172.16.13.254 Oct 23 09:18:52 nas dhcpd: dhcp.c(4230): non-null pointer Oct 23 09:18:52 nas dhcpd: DHCPDISCOVER from f8:1a:67:94:dc:2b via 172.16.13.254 Oct 23 09:18:52 nas dhcpd: DHCPOFFER on 172.16.13.29 to f8:1a:67:94:dc:2b via 172.16.13.254 зы: прозрачным постом считаю интерфейс br0 который бриджует 2 линух-интерфейса и wds для этого не пойму какой смысл включать. в arp таблице ничего не меняется.
  3. не пойму зачем здесь вообще wds, мне же не нужно расширить диапазон вещания. у меня просто проброс канала до определенной точки.
  4. судя по логам то приходит запрос от мак адреса клиента а не их бриджевых железок. от wds толку не будет в любом случае, так как у клиентов точки 2,4 Ghz а м5 задействованы только что бы прокинуть нормальный канал до точки ретрансляции.
  5. у меня схема Server->Mikrotik->3 точки (одна из них m5, остальные 5210g) на микротике стоит dhcp-relay на все 3 интерфейса. Везде кроме m5 получают адреса. а тут трабла.
  6. Доброго времени суток! Есть проблема, но не найду решение. Стоят 2 точки в режиме прозрачного бриджа, скорость и сигнал более чем в норме. Если вбить статику то все прекрастно работает, а вот по dhcp никто не получает адреса. В логах на сервере вижу только запросы на получение и ответ сервака. но реквеста и пака нет. Oct 18 11:35:07 nas dhcpd: dhcp.c(4230): non-null pointer Oct 18 11:35:07 nas dhcpd: DHCPDISCOVER from e8:03:9a:23:cd:30 via 172.16.13.254 Oct 18 11:35:07 nas dhcpd: DHCPOFFER on 172.16.13.34 to e8:03:9a:23:cd:30 via 172.16.13.254 Oct 18 11:35:11 nas dhcpd: dhcp.c(4230): non-null pointer Oct 18 11:35:11 nas dhcpd: DHCPDISCOVER from e8:03:9a:23:cd:30 via 172.16.13.254 Oct 18 11:35:11 nas dhcpd: DHCPOFFER on 172.16.13.34 to e8:03:9a:23:cd:30 via 172.16.13.254 Oct 18 11:35:13 nas dhcpd: dhcp.c(4230): non-null pointer Oct 18 11:35:13 nas dhcpd: DHCPDISCOVER from e8:03:9a:23:cd:30 via 172.16.13.254 Oct 18 11:35:13 nas dhcpd: DHCPOFFER on 172.16.13.34 to e8:03:9a:23:cd:30 via 172.16.13.254 пока стояли tp-link 5210g все было в норме. Прошиву уже обновил до последней 5.5.6. наигрался с разными настройками, но увы проблему так и немогу решить. Помогите если у кого была такая трабла. ЗЫ переводить абонов на статику не вариант.
  7. у тебя php собран без поддержки mysql поэтому скрипт не может выполнить функцию коннекта к базе. если freebsd - то пересобери php, если линукс то доставь пакет php-mysql
  8. тобиш onConnect и т п у него свои?
  9. но ведь сам старгейзер то его запускает? права 777 стоят. а чего нехватает rscriptd-ту для его запуска?
  10. делал все по ману, но в логах [root@nas ~]# tail -f /var/log/rscriptd.log 2013-06-13 09:55:18 -- Script /etc/stargazer/OnConnect cannot be executed for an unknown reason. 2013-06-13 09:55:18 -- Script /etc/stargazer/OnConnect cannot be executed for an unknown reason. 2013-06-13 09:55:18 -- Script /etc/stargazer/OnConnect cannot be executed for an unknown reason. 2013-06-13 09:55:18 -- Script /etc/stargazer/OnConnect cannot be executed for an unknown reason. из-за чего такое может выдавать (гугл не помог).
  11. финальна я версия скрипта с очисткой правил и комментами: <?php // dnat.php // Author: NeiroN // // сгребаем конфиг в массив $sql_arr = file("/etc/stargazer/config"); //print_r ($sql_arr); // парсим конфиг list($n,$host)=split("host = ",$sql_arr[0]); $host = trim($host); list($n,$user)=split("username = ",$sql_arr[1]); $user = trim($user); list($n,$pass)=split("password = ",$sql_arr[2]); $pass = trim($pass); list($n,$db)=split("database = ",$sql_arr[3]); $db = trim($db); // конектимся с базой $link = mysql_connect($host,$user,$pass) or die("die"); $link = mysql_select_db($db) or die("die"); // чистим правила $sql = mysql_query("select IP from users;"); while(list($IP)=mysql_fetch_array($sql)) { exec("/sbin/iptables -t nat -D PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.10.254"); } // делаем днат для должиков $sql = mysql_query("select IP from users where (Cash + Credit) < 0;"); while(list($IP)=mysql_fetch_array($sql)) { if(!empty($IP)) { exec("/sbin/iptables -t nat -I PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.10.254"); } } // disconnect mysql_close(); ?>
  12. немного поправил скрипт ато парсинг неверно отработал <?php // dnat.php // Author: NeiroN // $sql_arr = file("/etc/stargazer/config"); print_r ($sql_arr); list($n,$host)=split("host = ",$sql_arr[0]); $host = trim($host); list($n,$user)=split("username = ",$sql_arr[1]); $user = trim($user); list($n,$pass)=split("password = ",$sql_arr[2]); $pass = trim($pass); list($n,$db)=split("database = ",$sql_arr[3]); $db = trim($db); $link = mysql_connect($host,$user,$pass) or die("die"); $link = mysql_select_db($db) or die("die"); $sql = mysql_query("select IP from users where (Cash + Credit) < 0;"); while(list($IP)=mysql_fetch_array($sql)) { if(!empty($IP)) { exec("/sbin/iptables -t nat -I PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.10.254"); } }
  13. В планах на 2.409 есть передача произвольного набора параметров в скрипты. Точнее даже уже в процессе реализации. набросал небольшой скриптик на пхп, если нужно юзайте. <?php // dnat.php // Author: NeiroN // $sql_arr = file("/etc/stargazer/config"); //print_r ($sql_arr); list($n,$host)=split("host = ",$sql_arr[0]); list($n,$user)=split("host = ",$sql_arr[1]); list($n,$pass)=split("host = ",$sql_arr[2]); list($n,$db)=split("host = ",$sql_arr[3]); $link = mysql_connect($host,$user,$pass) or die("die"); $link = mysql_select_db($db) or die("die"); $sql = mysql_query("select IP from users where (Cash + Credit) < 0;"); while(list($IP)=mysql_fetch_array($sql)) { if(!empty($IP)) { exec("/sbin/iptables -t nat -I PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.10.254"); } } ?> выполянется по крону, в onConnect добавил правило на удаление /sbin/iptables -t nat -D PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.10.254 но при желание можно и в этом скрипте дописать обратное правило. отрабатывает по крону каждые 10 минут. *172.16.10.254 - шлюз и вебсервер для абонентов.
  14. этот вариант не отбрасываю, просто он уже поидее реализован в каких то скриптах. не охота городить свой огород. собственно функционал для "дата истечения кредита"
  15. может ли кто просветить по функционалу OnConnect на тему денег и кредитов? cash взять то непроблема а вот как учесть открыт ли кредит.
  16. iptables -t nat -I PREROUTING -s $IP -p tcp -m tcp --dport 80 -j DNAT --to-destination $IP_WEB_SERVER вот только сам ламаю голову над механизмом. пробовал добавлять в onconnect, но не совсем понял как он работает. к нему обращается stg только если юзер в положительном балансе или же за каждого. думаю прийдет просто добавить правила в /etc/sysconfig/iptables, а потом сверять баланс в onconnect и убивать по одному из ип. но здесь неувязка в том, что нужно и добавлять назад правило при отр. балансе и естественно учесть кредит. как разберусь с принципом работы onconnect b ondisconnect - выложу готовое решение.
  17. Это последствия наличия .lock файла. Их быть не должно. Просто удалите их. Они грешны, за что давно отлучены от лона церкви не поддерживаются. решил начать с нуля. снес все нафик и поставил по новой - результат порадовал. теперь осталось рахобратся с отработкой шейпера. сообственно вопрос: скрипт shaper.sh запускается только при запуске стг или при обнаружении что от юзера пошел траффик? п.с. использую маскарад на eth0, при это в скрипте указан ifup=eth0 ifdown=eth1 табли маркеруют пакеты: 88225 119M MARK all -- * * 0.0.0.0/0 172.16.11.32 MARK set 0x79 78159 22M MARK all -- * * 172.16.11.32 0.0.0.0/0 MARK set 0x1019 но увы оверлимитов не наблюдаю [root@nas stargazer]# tc -s qdisc show qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 Sent 98773885 bytes 193518 pkt (dropped 0, overlimits 0 requeues 0) rate 0bit 0pps backlog 0b 0p requeues 0 qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 Sent 213953914 bytes 693650 pkt (dropped 0, overlimits 0 requeues 0) rate 0bit 0pps backlog 0b 0p requeues 0 куда подскажите копать?
  18. нет прав записи в сам multinet а почему вы решили что там что-то выполняться должно? chmod -R 777 content/ config/ multinet/ exports/ remote_nas.conf От вас требуется, больше ничего. как нистранно но есть права на запись и в сам мультинет и в лок-файл. drwxrwxrwx. 2 apache apache 4096 Апр 23 10:59 multinet кстати вот что заметил, если создать этот файл руками - оно отваливается по таймауту но всеже выполняется. тоесть каждая нужная мне команда заканчивается чем то типа: блаблаюла fatal error max execute time 30 sec, но когда возвращаюсь на преведущую страницу то вижу что мак сменен или пользователь зареган)
  19. У меня сейчас эпилептический припадок будет. Эти ваши линуксы не перестают радовать просьба продолжить дискуссию. ситуация аналогична, 3й день бьюсь об стену. selinux вырубил изначально, php.ini перелопатил уже много раз. с консоли юзера добавляет но проблем. в судо тоже порядок. при смене мака в дебаге выдало что не может открыть dhcpd.conf.lock - его нет в папке multinet, но если его создаю и даю права на a+x то получаю фатал ерор по таймауту пхп (какой бы не ставил в php.ini). куда копать уже просто незнаю. очень понравился ubilling как веб оболочка но связать с stg никак не выходит. уже в приступах паники скоро начну переписывать апи на sql функции, что бы в базу добавляло напрямую))
×
×
  • Create New...