Jump to content

Stg & Ua-ix


Recommended Posts

Такая ситуация, есть сервак на freebsd, в нем 3 сетевухи(1-адсл, 2-локал провайдер с анлим ua-ix, 3-локалка с абонами) цель-скрипт который бы выкачивал с инета список ua-ix сетей и делал обновление в правила stg + роутинг + в ipfw для анлимных абонов тоже изменял(необходимо исключать сети, т.е. если абон работает на 512 кб/с анлим пакете, доступ к ua-ix нада чтоб был 100мбит). Эта задача реальна?

Link to post
Share on other sites

запускаем по крону

 

cat uaix
#!/usr/bin/perl
# Update UA-IX network.
use LWP;
$file="/etc/stargazer/rules";
open(FD,">$file") or die "Error open file";
my $ua=LWP::UserAgent->new();
$ua->agent("PerlUA/0.1");
my $url="http://colocall.net/ua/prefixes.txt";
my $document=$ua->request(HTTP::Request->new(GET => $url));
if ($document->is_success){
open(FD,">$file") or die "Error open file";
$uaix=($document->content);
@uaix = split /\n/,$uaix;
}else{
print ("Error get UA-IX list");
exit;


}
print (FD "ALL 192.168.2.0/24 DIR0\n"); ваша локал сеть



foreach $ip (@uaix){
print (FD "ALL $ip DIR1\n"); Украина
}

print (FD "ALL 0.0.0.0/0 DIR2\n"); все остальное




system ("/usr/bin/killall -1 stargazer");

Link to post
Share on other sites

Спасибо, хочу попросить расписать хоть немного что какая команда делает, вдруг не заработает хоть буду понимать где нада исправить

Link to post
Share on other sites
запускаем по крону

 

cat uaix
#!/usr/bin/perl
# Update UA-IX network.
use LWP;
$file="/etc/stargazer/rules";
open(FD,">$file") or die "Error open file";
my $ua=LWP::UserAgent->new();
$ua->agent("PerlUA/0.1");
my $url="http://colocall.net/ua/prefixes.txt";
my $document=$ua->request(HTTP::Request->new(GET => $url));
if ($document->is_success){
open(FD,">$file") or die "Error open file";
$uaix=($document->content);
@uaix = split /\n/,$uaix;
}else{
print ("Error get UA-IX list");
exit;


}
print (FD "ALL 192.168.2.0/24 DIR0\n"); ваша локал сеть



foreach $ip (@uaix){
print (FD "ALL $ip DIR1\n"); Украина
}

print (FD "ALL 0.0.0.0/0 DIR2\n"); все остальное




system ("/usr/bin/killall -1 stargazer");

К сожалению не работает ваш скрипт, что только не пробовал менять

у меня начинается скрипты с #!/bin/sh

папка к правилам /usr/local/stargazer/etc/rules менял не помогло

погите кто нить с идеями, только немножко расписав, уровень в программировании не велик

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...