Перейти до

Как разделить мир и Ua-ix, с помощью Mikrotik


Рекомендованные сообщения

Romeshik

скажи правду у тебя работает этот скрипт, без разбивания файла на куски, если работает то какая версия микротика, скрипт работает если файл не превышает 4095 байт

Ссылка на сообщение
Поделиться на других сайтах
  В 15.05.2010 в 19:24, VitalikT сказав:

Romeshik

скажи правду у тебя работает этот скрипт, без разбивания файла на куски, если работает то какая версия микротика, скрипт работает если файл не превышает 4095 байт

 

+1

Ссылка на сообщение
Поделиться на других сайтах

А никак он работать не будет ибо проблема с большим файлом по моему по сей день не решена о чем свидетельствуют соответствующие ветки форума Mikrotik .

Ссылка на сообщение
Поделиться на других сайтах
  • 4 weeks later...
  • 4 weeks later...
  В 14.05.2010 в 09:39, Mobil сказав:

Ребята не мучайте себе яйца, купите себе автономку и делайете все на BGP.

 

Может подскажешь как это сделать???

На микротике естественно...

Ссылка на сообщение
Поделиться на других сайтах
  • 2 months later...
  • 4 weeks later...

если нужен совет пишите в аську, подскажу.

 

вцелом это делает эту функцию в автомате уже очень давно, по настройкам подскажу. хотя и так есть инструкции.

Ссылка на сообщение
Поделиться на других сайтах

Можно агрегировать список UA-IX с помощью python:

 

file = '/home/data/report/tmp/ua-list.txt'

 

ua_ix = []

 

fr = open(file, 'r')

for line in fr.readlines():

if line[0].isdigit():

if '/' in line:

ua_ix.append(ipaddr.IPNetwork(line))

else:

line = '/'.join((line.rstrip('\n'),'24'))

ua_ix.append(ipaddr.IPNetwork(line))

fr.close()

ua_ix = ipaddr.CollapseAddrList(ua_ix)

 

Это ужимает список UA-IX с 4349 до 1837 записей подсетей.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...
  • 2 weeks later...
  В 05.11.2010 в 12:55, SHARAHOME сказав:

Загнал в адрес лист скриптом все айпишники UA-IX , и промаркировал пакеты по листу , всё работает

 

ну так хоть расскажи как сделал.

Ссылка на сообщение
Поделиться на других сайтах
  В 13.11.2010 в 21:44, gelmas_x сказав:
  В 05.11.2010 в 12:55, SHARAHOME сказав:

Загнал в адрес лист скриптом все айпишники UA-IX , и промаркировал пакеты по листу , всё работает

 

ну так хоть расскажи как сделал.

UA-IX List :

 

Маркируеш пакеты по UA-IX List и вертиш трафиком как хочеш в зависимотсти оз поставленых задач . Или же просто через dst-nat направляеш по UA-IX List через Routing Mark

трафик на нужный канал

 

P.S. : Сейчас сижу на одном канале и такой ерундой не страдаю

Ссылка на сообщение
Поделиться на других сайтах
  В 14.11.2010 в 19:30, gelmas_x сказав:

наверное неправильно вопрос поставил.

как в адрес лист запихнуть список уа сетей?

вот в чём проблема.

Микротиковым фетчем или с другого сервера по api или SSH, но проблема в том, что микротик периодчески начинает игнорировать некоторые записи в адрес-листах, если их больше 300, обнаружил на 2000 записях.

Ссылка на сообщение
Поделиться на других сайтах
  • 4 weeks later...
  В 15.08.2009 в 21:05, Maks007 сказав:

Но вопрос как сделать чтоб эти подсети автоматом обновлянись ( синхронизировались) ?

 

 

На FreeBSD можно так сделать с помощью нехитрого pl скрипта, который будет добавлять и обновлять таблици в ipfw

Ссылка на сообщение
Поделиться на других сайтах

Попрошу не смеяться, но когдато делал так B)

 

Качал список ua-ix сетей и открывал в MS-Word

записывал макрос, который в начало каждой сторки добавлял "ip firewall address-list add address=" а в конец каждой строки " list=ua-ix"

Повторял его n раз (в коде макроса вписывал цикл for)

Сохранял файлик, закидывал его в микротик и делал import файлика ))

 

Периодически удалял все записи и проделовал процедуру заново

Если религия не позволяет MS-Word можно на баше сделать либо на php.

 

Решение очень извращенное, но работает )

Ссылка на сообщение
Поделиться на других сайтах

вот упрощенный скрипт

думаю в нем разберетесь

 

<?php

	$fp2 = fopen (/opt/mikrotik', "w+");
	fwrite($fp2,"/ip firewall address-list\n");

	$sql = $db->quoteInto('SELECT local_ip FROM '.$this->_users.' WHERE user_installed=1 ','');
	$local=$db->query($sql);
	$local=$local->fetchAll();


	foreach ($local as $value)
	{
		fwrite($fp2,"add list=\"white_list\" address=".$value['local_ip']."/32\n");
	}
	fclose($fp2);

		$IP_SRV=$value['ip'];
		$Login_SRV=$value['login'];
		$Pass_SRV=$value['pass'];

		$ftp_server=$IP_SRV;
		$conn_id = ftp_connect($ftp_server);
		$ftp_user_name=$Login_SRV;
		$ftp_user_pass=$Pass_SRV;

		$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
		$mikrotik_addrlist='/opt/mikrotik';
		$ftp_addrlist='addrlist.rsc';

		$upload = ftp_put($conn_id, $ftp_addrlist, $mikrotik_addrlist, FTP_BINARY);

		if (!$upload) {
			echo "Upload error!\n";
		}
		ftp_close($conn_id);

		$ssh='ssh '.$Login_SRV.'@'.$IP_SRV;
		$mik_ssh=$sysopts['sudo'].' '.$ssh.' ';
		$command='/ip firewall address-list remove [/ip firewall address-list find list=white_list]';
		exec($mik_ssh."$command);
		$command='import '.$ftp_addrlist;
		exec($mik_ssh."$command);

 

ссылка на пример настройки авторизации между Linux и Mikrotik

Ссылка на сообщение
Поделиться на других сайтах
  • 1 month later...

Прошу прощения за поднятие темы , но возникла такая же задача , но с BGP. На данный момент это реализовано методом списка и меток, спасибо за помощь spaul. Сегодня провайдер сказал ,что может выдать нам BGP и это будет легче для " железа " , не нужно будет ничего маркировать. Сейчас задача вместо метода маркировки UA-IX настроить BGP. Кто может помочь в настройке в Киеве или удаленно ,и сколько это будет стоить, щас курю разные мануалы , но толком ничего не получаеться (

 

Один провайдер, один канал , выдадут 2 Влана юа-икс/мир, Микротик 5 левел 4 лицензия.

Ссылка на сообщение
Поделиться на других сайтах
  В 20.01.2011 в 18:16, gen PSI сказав:

 

Один провайдер, один канал , выдадут 2 Влана юа-икс/мир, Микротик 5 левел 4 лицензия.

промаркируйте например в зависимости от шлюза.

 

скрипт для микротика

 

:local ix;
:foreach subnet in [/ip firewall address-list find list=ua-ix] do { /ip firewall address-list remove $subnet}
:foreach subnet in [/ip route find gateway=XX.XX.XX.XX && dst-address!=0.0.0.0/0] do { 
  :set ix [/ip route get $subnet dst-address]; 
  /ip firewall address-list add list=ua-ix address=$ix; 
} 

Ссылка на сообщение
Поделиться на других сайтах

Вот пример выполнить в консоли оно создаст все что надо

IP роутера 19.23.24.1 из блока его автономки 19.23.24.0/23

 

IP провайдера по UA-X 9.15.9.89

IP провайдера по Мир 93.24.33.17

Естественно это в разных вланах и пинги и т д между машинами ходят и настроены.

 

по UA-X все что приходит получает больший вес чем то что в мире.. Потому что наш провайдер например одни и теже блоки адресов передает в обоих соединениях...и чтобы украину по миру не гонять приходится менять вес.

 

/routing filter
add action=passthrough chain=WORLD-IN disabled=no invert-match=no \
set-bgp-local-pref=100 set-bgp-weight=100
add action=accept chain=WORLD-IN disabled=no invert-match=no \
set-bgp-local-pref=100 set-bgp-weight=100
add action=accept chain=WORLD-OUT disabled=no invert-match=no prefix=\
19.23.24.0/23
add action=discard chain=WORLD-OUT disabled=no invert-match=no
add action=accept chain=UA-X-IN disabled=no invert-match=no set-bgp-local-pref=\
1000 set-bgp-weight=1000

/routing bgp instance
add as=42595 client-to-client-reflection=no disabled=no ignore-as-path-len=no \
name=Provider out-filter=WORLD-OUT redistribute-connected=yes \
redistribute-ospf=no redistribute-other-bgp=no redistribute-rip=no \
redistribute-static=yes router-id=19.23.24.1 routing-table=""

/routing bgp peer
add address-families=ip as-override=no default-originate=never disabled=no \
hold-time=3m in-filter=UA-X-IN instance=Soniko multihop=no name=UA-X \
nexthop-choice=default out-filter=WORLD-OUT passive=no remote-address=\
9.15.9.89 remote-as=12773 remove-private-as=no route-reflect=no \
tcp-md5-key="" ttl=default use-bfd=no

add address-families=ip as-override=no default-originate=never disabled=no \
hold-time=3m in-filter=WORLD-IN instance=Soniko multihop=no name=World \
nexthop-choice=default out-filter=WORLD-OUT passive=no remote-address=\
93.24.33.17 remote-as=12773 remove-private-as=no route-reflect=no \
tcp-md5-key="" ttl=default use-bfd=no

/routing bgp network
add disabled=no network=19.23.24.0/23 synchronize=no

Ссылка на сообщение
Поделиться на других сайтах
  • 4 months later...

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...