terminated Публикувано 2 Декември, 2010 Доклад Сподели Публикувано 2 Декември, 2010 Здравейте , ето и проблема - скрипта си работи на рутерборд , но на пц стига до някъде и дава таймаут !?!?, когато няма никакъв трафик на машината успява да ги добави всичките. Сложих лан карта само за телнет скрипта , която е вързана директно за машината на която се изпълнява , но проблема си остава. Ето и скрипта: #!/usr/bin/perl use Data::Dumper; use Net::Telnet (); $telnet1 = new Net::Telnet ( Host => "1.1.1.2", Timeout => 20, Dump_log => "./log", Prompt => '/\[.+\] > $/'); $telnet1->login("user", "passwor"); my $sth; my @row; my @subnet; my $gateway; my $login; my $ip; my $speed; my $block; open(DATA, "</var/digital/sdp_INT/SDP_S15.TXT"); while (<DATA>) { my($line) = $_; chomp($line); if ($line =~ /([a-zA-Z0-9\_-]+)\|(\d)\|(\d+\.\d+\.\d+\.\d+)\|(\d+)/) { $login = $1; $block = $2; $ip = $3; $speed = $4*1000; if ($block == '0') { $telnet1->cmd("/queue simple add name=$login target-address=$ip max-limit=$speed/$speed interface=all place-before=all"); } if ($block == '1') { $telnet1->cmd("/queue simple remove $login"); } } } $telnet1->close; Адрес на коментара Сподели в други сайтове More sharing options...
Администратор 111111 Отговорено 2 Декември, 2010 Администратор Доклад Сподели Отговорено 2 Декември, 2010 С коя версия на МТ? сериозно ли ползваш 1.1.1.2 за свръзка Харесай поста ^^^ Форумът е за взаимопомощ а не за свършване на чужда работа ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 2 Декември, 2010 Автор Доклад Сподели Отговорено 2 Декември, 2010 Пробвах първо с 4.13 , а сега съм с последната бета и при двете резултата е един. С лиценз левел 4 съм ,ако има значение Адрес на коментара Сподели в други сайтове More sharing options...
Администратор 111111 Отговорено 2 Декември, 2010 Администратор Доклад Сподели Отговорено 2 Декември, 2010 какво показва лога на МТ ? Харесай поста ^^^ Форумът е за взаимопомощ а не за свършване на чужда работа ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 2 Декември, 2010 Автор Доклад Сподели Отговорено 2 Декември, 2010 Ами сега изтрих всичките queue (180) след пускането на 160-тото даде timeout и след няколко пускания на скрипта продалжават да са 160.. В лога от последвалите пускания на скрипта има само user admin log in / log out Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 2 Декември, 2010 Автор Доклад Сподели Отговорено 2 Декември, 2010 Има ли начин да си взема queue-тата през radius ? На микротика ползвам само nat и queue simple Адрес на коментара Сподели в други сайтове More sharing options...
Администратор 111111 Отговорено 2 Декември, 2010 Администратор Доклад Сподели Отговорено 2 Декември, 2010 Има вариант през API но там не вдявам много освен ако не ползваш вградения usermanager я разясни целевото приложение на скрипта и периода на изпълнението защото микротика може да прави същите неща и без външна намеса http://mikrotik-bg.net/index.php?topic=2168.0 http://mikrotik-bg.net/index.php?topic=2677.0 Харесай поста ^^^ Форумът е за взаимопомощ а не за свършване на чужда работа ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 2 Декември, 2010 Автор Доклад Сподели Отговорено 2 Декември, 2010 И аз се чудих на API-то , но не вдянах хич :-\ . Иначе не ползвам вградения мениджър ,а user-ите ги взимам от един текстов файл и общо взето неплатилите ги спирам , като им изтрия queue-to и всички остават в един общ малъй шейпър... Адрес на коментара Сподели в други сайтове More sharing options...
Администратор 111111 Отговорено 2 Декември, 2010 Администратор Доклад Сподели Отговорено 2 Декември, 2010 http://forum.mikrotik.com/viewtopic.php?f=9&t=22744 чета тук и не зацепвам дано имаш по голям късмет с това API аз бих предпочел директно блокиране по мак адрес а и все още обичам да цъкам с мишката, някак по визуално ми е Харесай поста ^^^ Форумът е за взаимопомощ а не за свършване на чужда работа ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 3 Декември, 2010 Автор Доклад Сподели Отговорено 3 Декември, 2010 Това апи не е за мен Идея за скрипт подобен на моя за блокиране по мак ? Горе-долу ми е ясно как може да стане , но как да блокирам макове , които не са ми в базата ? Адрес на коментара Сподели в други сайтове More sharing options...
danielskiii Отговорено 3 Декември, 2010 Доклад Сподели Отговорено 3 Декември, 2010 даваш на интерфейса arp reply-only Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 6 Декември, 2010 Автор Доклад Сподели Отговорено 6 Декември, 2010 Пак закъсах .. предния проблем се оказа от "place-before=all". Реших да си блокирам юзерите по мак адрес и си преправих скрипта по този начин: #!/usr/bin/perl use Net::Telnet (); $telnet1 = new Net::Telnet ( Host => "1.1.1.2", Timeout => 20, Prompt => '/\[.+\] > $/'); $telnet1->login("user", "pass"); my $ip; my $block; my $mac; open(DATA, "</var/digital/sdp_INT/SDP_S15.TXT"); while (<DATA>) { my($line) = $_; chomp($line); if ($line =~ /([a-zA-Z0-9\_-]+)\|(\d)\|(\d+\.\d+\.\d+\.\d+)\|(\d+)\|([a-zA-Z0-9\_:-]+)/) { $block = $2; $ip = $3; $mac = $5; if ($block == '0') { $telnet1->cmd("/ip arp add address=$ip mac-address=$mac interface=339"); } if ($block == '1') { $telnet1->cmd("/ip arp add address=$ip mac-address=01:01:01:01:01:01 interface=339"); } } } $telnet1->close; Скрипта си работи добре , НО по този начин , ако се смени мак адреса на съществуващ юзер микротика не го replace,а си остава старият. EDIT: май намериш решението с - /ip arp set [find address=()] mac-address= Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 8 Декември, 2010 Автор Доклад Сподели Отговорено 8 Декември, 2010 И отново за пореден път същият проблем /ip arp add address=$ip mac-address=$mac interface=339 .. никакъв проблем 960 арпа от раз , /ip arp set [find address=()] mac-address= 10-тина правила и любимия timeout.. Адрес на коментара Сподели в други сайтове More sharing options...
Администратор 111111 Отговорено 9 Декември, 2010 Администратор Доклад Сподели Отговорено 9 Декември, 2010 Защо не го пренапишеш тоя скрипт да си се пуска директно в машината не отвън Харесай поста ^^^ Форумът е за взаимопомощ а не за свършване на чужда работа ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ Адрес на коментара Сподели в други сайтове More sharing options...
terminated Отговорено 9 Декември, 2010 Автор Доклад Сподели Отговорено 9 Декември, 2010 Ами .. най-добре ще е , но просто незнам как Адрес на коментара Сподели в други сайтове More sharing options...
Recommended Posts
Създайте нов акаунт или се впишете, за да коментирате
За да коментирате, трябва да имате регистрация
Създайте акаунт
Присъединете се към нашата общност. Регистрацията става бързо!
Регистрация на нов акаунтВход
Имате акаунт? Впишете се оттук.
Вписване