Доброе время суток господа.Задумался я над одной проблемкой, решил поискать в интернете но кроме насмешек я ничего хорошего не нашел (искал тут http://online.comptek.ru/index.xhtml?forum=5&id_tmp=aZpORUXn...)
Опасаясь задавать этот вопрос там попытаю счастья здесь.
И так.
Как разделить зарубежный траффик и заграничный?
Было предположение что по AS возникает вопрос где взять номера АС отечественных провайдеров и будут ли там все провайдеры, или только самые крупные. Сомнение второе, даже если мне удалось получить спсок отечественных АС, то скорее всего их там очень много маршрутизатор захлебнется от такого кол-ва роутмапов (потому что мне кажется АС выделяется не блоками и просто регулярными выражениями тут не обойтись прийдется вносить каждую в отдельности). Если отбросить вариант с АС, тогда я даже не представляю как идентифицировать траффик.Подскажите, не откажите в любезности.
Надежнее пожалуй по префиксам.
#whois -r 213.248.1.1 | egrep "(RU|route)"
country: RU
route: 213.248.0.0/20
зачит 213.248.0.0/20 можно считать росийским трафиком. Всего таких префиксов около 1000.
Только то запросить все роут-блоки для который country: RU через whois нельзя. Для этого нужно где то найти RIPE DB целиком.
> маршрутизатор захлебнется от такого кол-ва роутмапов
а зачем роутмапы? Лейте поток нетфлоу на сервер и там уже его обрабатывайте.А вообще в чем смысл отдельного учета Росийского и зарубежного трафика?
Если вы получаеете его по разым каналам (и по разным ценам), то проще всего считать по интерфейсу, через который пришел пакет.
>А вообще в чем смысл отдельного учета Росийского и зарубежного трафика?
>Если вы получаеете его по разым каналам (и по разным ценам), то
>проще всего считать по интерфейсу, через который пришел пакет.смысл не в учете, а в том что бы раскидать траффик по разным интерфейсам - отечественный на один зарубежный на другой. Для этого как я понимаю мне нужны всетаки роутмапы
>как я понимаю мне нужны всетаки роутмапы
Обычно важно не то - российский адрес это или нет на самом деле, а как это считает провайдер...А нормальный провайдер свой лист маршрутов, которые он считает российскими должен выкладывать в открытый доступ, это ведь на счет от провайдера оказывает влияние.
Для примера routelist с сайта корбины. У них есть тариф с бесплатным российским трафиком.
ftp://ftp.corbina.net/pub/routelist.txt
>Обычно важно не то - российский адрес это или нет на самом
>деле, а как это считает провайдер...А нормальный провайдер свой лист маршрутов,
>которые он считает российскими должен выкладывать в открытый доступ, это ведь
>на счет от провайдера оказывает влияние.
тут я конечно согласен.но меня интересует как это реализовано в циске
вот если бы маленький кусочек конфига.
Привет,Пара-другая мыслей...
Во-первых, тебе самому нужно делить только исходящий траффик... входящий к тебе пусть метит по DSCP (или отдает через два отдельных канала) твой провайдер.
Во-вторых, можно взять RIPE DB с их FTP, но: в национальном масштабе могут быть и адреса других RIR (американские ARIN или азиатские APNIC, к примеру); в самой базе RIPE есть ошибки (например, написал человек вместо RU - UR и так стоит себе запись... ). Список "нациолнальных" адресов можешь еще брать со своего провайдера (если с ним у тебя BGP, пускай откроет тебе вторю сессию и по ней отдет только национальные маршруты; если нет, пусть даст тебе просто список...)
В-третьих, route map будет нужен, но только один: ставим ACL большой-большой, в коротом permit-наты все национальные префиксы, и по нему строим один route map.
WWell,
> Список
>"нациолнальных" адресов можешь еще брать со своего провайдера (если с ним
>у тебя BGP, пускай откроет тебе вторю сессию и по ней
>отдет только национальные маршруты; если нет, пусть даст тебе просто список...)
>
люди, ну как вы не можете понять, я сам хочу знать как это делалется, зачем мне провайдер.>
>В-третьих, route map будет нужен, но только один: ставим ACL большой-большой, в
>коротом permit-наты все национальные префиксы, и по нему строим один route
>map.тоесть ты хочешь сказать, что разделение идет не по АС?
В чем парадокс, провайдеров которые делять траффик хоть пруд пруди, а когда нужны объяснения как, высказываются только догадки. Возможно я тупо сформулировал вопрос, раз он не вызывает интереса у гуру, но это пока все что я могу, со своим скудным опытом.
Вот показал бы кто, пример конфига.
>> Список
>>"нациолнальных" адресов можешь еще брать со своего провайдера (если с ним
>>у тебя BGP, пускай откроет тебе вторю сессию и по ней
>>отдет только национальные маршруты; если нет, пусть даст тебе просто список...)
>>
>люди, ну как вы не можете понять, я сам хочу знать как
>это делалется, зачем мне провайдер.
>
>>
>>В-третьих, route map будет нужен, но только один: ставим ACL большой-большой, в
>>коротом permit-наты все национальные префиксы, и по нему строим один route
>>map.
>
>тоесть ты хочешь сказать, что разделение идет не по АС?
>В чем парадокс, провайдеров которые делять траффик хоть пруд пруди, а когда
>нужны объяснения как, высказываются только догадки. Возможно я тупо сформулировал вопрос,
>раз он не вызывает интереса у гуру, но это пока все
>что я могу, со своим скудным опытом.
>Вот показал бы кто, пример конфига.
ПО АС делить - проца роутера не хватит, по АС легче получить список их сетей и сделать аккцесс лист, которые обрабатываются гораздо быстрее, пусть даже там будет в 30 раз больше строк.
>ПО АС делить - проца роутера не хватит, по АС легче получить
>список их сетей и сделать аккцесс лист, которые обрабатываются гораздо быстрее,
>пусть даже там будет в 30 раз больше строк.Тоесть так делают провайдеры, или это опять догадка?
Привет,Вообще-то делают по иному... border провайдеры посутпают так: у них отдельные каналы связи (физические или логические) с своим peer-ам и к зарубежным сетям. Таким образом, еще на входе свей сети провайдер маркирует его в зависимости от физического источника (скажем, DSCP). Еще, очень часто международный траффик и национальный траффик проходят через разные маршрутизаторы (у метня именно так), поэтому не приходиться особо заботиться о разделении траффика - все, что пришло на международный рутер - это международный траффик; все, что пришло на национальный рутер - национальный трафик. Соответственно, все мои клиенты с BGP получают всегда 2 сессии - одна для междуанродного траффика и одна - для национального. Шейперы, соответственно, ставятся по отделным рутерам - и на входящий, и на исходящий траффик (последнее обычно только для международного).
На случаи, когда у сети один gateway (Linux, *BSD), можно отшейпить download на основании DSCP маркеров, поставленных провайдером (я даю всем клиентам свои маркеры); правда, если хочеться отшейпить upload (или провайдер не делает маркировку), то без списка IP префиксов для данной страны не обойтись... ну а список можно получить у провайдера, поискать по разным Internet Exchanges (или например по looking glass-ам) в стране или составлять самом хотя бы на основании RIPE DB (со всеми оговорками, см. выше).
WWell,
Коллега,а Вы про такой BGP атрибут как community сышали/читали?
>Коллега,
>
>а Вы про такой BGP атрибут как community сышали/читали?community необязательный атрибут устанавливается (в данном случае no export и т.п. не считаем) по договоренности с аплинком. Сами по себе комунити не установятся. Что бы что-то пометить надо сперва классифицировать. Вот про этот механизм классификации я и спрашиваю
Это конечно все круто, но я вот еще о чем задумался. Отечественным тарффиком можно считать только тот траффик который по пути следования проходит только через АС отечественных провайдеров напримерAS_PATH=5 2 3 #5,2 и 3 это автономки отечетсвенных провайдеров. тогда траффик наш
AS_PATH=5 2 100 3#100 это к примеру америка. это уже получается не совсем наш траффиктак вот как с префиксами можно отследиться путь следования?
Или я чего-то не доганяю (что вообщем-то для меня открытием не будет :-))?
>так вот как с префиксами можно отследиться путь следования?
>Или я чего-то не доганяю (что вообщем-то для меня открытием не будет
>:-))?
Разные операторы по разному делять трафф на наш и не наш, кто по каналам, а кто и по адресам.
>Разные операторы по разному делять трафф на наш и не наш, кто
>по каналам, а кто и по адресам.Хорошо.
Тогда так.
Я провайдер у меня 2 канала к разным аплинкам.
Они мои БГП пиры.
На этот момент положение дел следующее: один провайдер резервный, другой основной
Появляется провайдер номер 3(БГП с ним тоже есть) с ним я работаю только по отечественному траффику (будем считать что он халявный) Естественно что я захочу пускать весь отечественный траффик на провайдера номер 3.
Вопрос как мне заставить роутер пускать наш траффик через третьего провайдера, а зарубежный через основного, он же первый провайдер.
Предпологаем что мои аплинки чьхать хотели на разделение льют канал и льют, никаких тебе комунити и всего остального. Я один на поле боя. Нужно заставить мой роутер делить траффик.
Привет,1. Нужно отвести выходящий отечественный траффик через этого провайдера - для этого способ - поставить более высокий local preference. Тогда весь твой исходящий траффик по маршрутам, которые получаешь от этого провайдера, будет ходить через него. Разумеется, этот третий провайдер не должен объявлять тебе международных маршрутов и твой международный траффик будет выходить от тебя как и раньше.
2. Нужно "навести" на себя входящий отечественный траффик - тут можно поставить prepend в анонсах к осталным двум твоим peer-ам (искуственно удлиннив маршрут через них к себе), а можно и договориться с этими peer-ами, чтоб при данном community в твоих маршрутах они объявляли тебя только своим международным uplink-ам, но не родным своим peer-ам.
Вся эта игра в BGP своит свеч потому, что не расходует никакиих ресурсов маршрутизатора (по сравнению с любым policy routing).
WWell,
3 провайдер дает мне всь траффик, но наш на халяву.
>
>2. Нужно "навести" на себя входящий отечественный траффик - тут можно поставить
>prepend в анонсах к осталным двум твоим peer-ам (искуственно удлиннив маршрут
>через них к себе), а можно и договориться с этими peer-ами,
>чтоб при данном community в твоих маршрутах они объявляли тебя только
>своим международным uplink-ам, но не родным своим peer-ам.
>
что бы поставить комунити нужно сперва определить наш траффик или нет>Вся эта игра в BGP своит свеч потому, что не расходует никакиих
>ресурсов маршрутизатора (по сравнению с любым policy routing).
>
вообщем чем дальше, тем я сильнее убеждаюсь что разделить траффик на моем маршрутизаторе невозможно.
Привет,> что бы поставить комунити нужно сперва определить наш траффик или нет
Community ставят на анонс маршрута, а не на сам траффик. Поскольку вы анонсируете своим peer-ам свои сети, то можете разным своим peer-ам подавать один и тот же маршрут на себя с разным community.
WWell,
>Разумеется, этот третий провайдер не должен объявлять тебе международных маршрутов
>и твой международный траффик будет выходить от тебя как и раньше.
>
вообщем то что я писал про комунити это конечно бред, ты прав.
ответь тогда мне вот на такой вопрос и вообщем-то это и будет то чего я хотел. Как провайдер может обявлять только наши маршруты и не объявлять международных.
Привет,>Как провайдер может обявлять только наши маршруты
>и не объявлять международных.Т.е. как провайдер может отдать вам только отечественные анонсы без международных?
Вариант А: вы держите BGP с его "национальным" маршрутизатором, где так или иначе присутствуют только националные маршруты.
Вариант Б: провайдер ставит со своей стороны AS-path Access List, с помощью которого "вырезает" все анонсы, в которыйх присутствуют его международные uplink-и. Скажем, во всех международных маршрутах, которые я получаю со сових uplink-ов, присутствует или AS 5400, или AS 3356 и т.д., поэтому для моих клиентов у меня стоит ACL типа
ip as-path access-list 4 deny (5400|3356|...)
ip as-path access-list 4 permit .*затем в конфигурации BGP с вами ваш провайдер пишет
neighbor aaa.bbb.ccc.ddd filter-list 4 out
Если же вы хотите поставить определенный community на свои анонсы к провайдеру
Привет,>Как провайдер может обявлять только наши маршруты
>и не объявлять международных.Т.е. как провайдер может отдать вам только отечественные анонсы без международных?
Вариант А: вы держите BGP с его "национальным" маршрутизатором, где так или иначе присутствуют только националные маршруты.
Вариант Б: провайдер ставит со своей стороны AS-path Access List, с помощью которого "вырезает" все анонсы, в которых присутствуют его международные uplink-и. Скажем, во всех международных маршрутах, которые я получаю со сових uplink-ов, присутствует или AS 5400, или AS 3356 и т.д., поэтому для моих клиентов, которые не должнвы получать международные анонсы, у меня стоит ACL типа
ip as-path access-list 4 deny (5400|3356|...)
ip as-path access-list 4 permit .*затем в конфигурации BGP с вами ваш провайдер пишет
neighbor aaa.bbb.ccc.ddd filter-list 4 out
Если же вы хотите поставить определенный community на свои анонсы к провайдеру, чтоб он не отдавал их всем, а только отечственным peer-ам, то пишете route-map, в котором говорите set community, типа:
route-map some-map permit 100
! некая match клауза, ежели такая нужна вам
set community <какое-то community, согласованное с провайдеро>и этот route-map ставите в BGP сессию со своим "отечественным" peer-ом:
neighbor aaa.bbb.ccc.ddd route-map some-map out
WWell,
>Вариант Б: провайдер ставит со своей стороны AS-path Access List, с помощью
>которого "вырезает" все анонсы, в которых присутствуют его международные uplink-и. Скажем,
>во всех международных маршрутах, которые я получаю со сових uplink-ов, присутствует
>или AS 5400, или AS 3356 и т.д., поэтому для моих
>клиентов, которые не должнвы получать международные анонсы, у меня стоит ACL
>типа
>
>ip as-path access-list 4 deny (5400|3356|...)
>ip as-path access-list 4 permit .*
>
>затем в конфигурации BGP с вами ваш провайдер пишет
>
> neighbor aaa.bbb.ccc.ddd filter-list 4 out
>запутался я совсем.
в твоих анонсах в любом случае будут содержаться АС твоего аплинка. выходит ты будешь резать все анонсы. Можно конечно представить что у тебя есть национальный аплинк, но где гарантия что у национального прова нет зарубежного аплинка?Ну вы уж ребята извини за мою тупость.
Уж очень хочется разобраться.
Спасибо.
Привет,>в твоих анонсах в любом случае будут содержаться АС твоего аплинка. выходит
Я "вырезаю" те анонсы, в которых содержиться первый зарубежный AS.
>где гарантия что у национального прова нет зарубежного аплинка?
Почти всегда есть. Поэтому и говорю, что провайдер может обеспечить тебе 2 BGP сессии - одна только с национальными анонсами.
WWell,
>>где гарантия что у национального прова нет зарубежного аплинка?
>
>Почти всегда есть. Поэтому и говорю, что провайдер может обеспечить тебе 2
>BGP сессии - одна только с национальными анонсами.
>
Вот что есть это точно. У меня провы все национальные. Я провел изследование и вообщем-то понял безсмысленность затеи. Как оказалось у моих провов аплинов по 10 штук, а у тех и того больше из них много зарубежных. Короче я до сих пор так и не понял как в моем случае фильтровать анонсы.Я просто хотел поставить себя на место моего провайдера и если бы вдруг кто-то меня бы попросил анонсировать ему только национальные сети, я просто не знаю что делать. Хоть бери и увольняйся. Потому что спросить больше не у кого.
>Я просто хотел поставить себя на место моего провайдера и если бы
>вдруг кто-то меня бы попросил анонсировать ему только национальные сети, я
>просто не знаю что делать. Хоть бери и увольняйся. Потому что
>спросить больше не у кого.Можно спросить у вышестоящего провайдера :)
И самое главное - вы должны для себя решить что для вас национальное, а что нет, по этому принципу и надо делать анонсы. В мировой практике есть куча зрений, взаимоисключающих при чем.
>И самое главное - вы должны для себя решить что для вас
>национальное, а что нет, по этому принципу и надо делать анонсы.
да что тут решать национальные это те которые нахоядтся в пределах моей страны.
>В мировой практике есть куча зрений, взаимоисключающих при чем.
вообщем как оказалось, существуют точки обмена тарффиком (IX), где присудствуют национальные маршруты. Так вот если в AS_PATH присудтсвует автономная система точки обмена траффиком, значит это наш маршрут. Вот так оказывается и делятся маршруты на наши и не ненаши.
Соответственно если я буду от одного пира пропускать только национальные маршруты (по принципц описанному выше) а от друго не буду их пропускать, то таблица маршрутов сформируется нужным мне образом и трафик будет ходить каждый через своего провайдера.
>>И самое главное - вы должны для себя решить что для вас
>>национальное, а что нет, по этому принципу и надо делать анонсы.
>да что тут решать национальные это те которые нахоядтся в пределах моей
>страны.
ТОгда по списку префиксов или по номерам АС, все это проще сделать через netflow.>>В мировой практике есть куча зрений, взаимоисключающих при чем.
>вообщем как оказалось, существуют точки обмена тарффиком (IX), где присудствуют национальные маршруты.
>Так вот если в AS_PATH присудтсвует автономная система точки обмена траффиком,
>значит это наш маршрут. Вот так оказывается и делятся маршруты на
>наши и не ненаши.>Соответственно если я буду от одного пира пропускать только национальные маршруты (по
>принципц описанному выше) а от друго не буду их пропускать, то
>таблица маршрутов сформируется нужным мне образом и трафик будет ходить каждый
>через своего провайдера.Утверждение неверное.
1. Есть точки обмена траффиком без роутсервера, т.е. у точка нет своей АС.
2. Там присутствувуют далеко не все национальные операторы.
3. У каждого провайдера есть своя точка зрения на этот вопрос (сравните ТТК и РТК).
Вообщето провайдер должен предлагать 3 типа маршрутов
1. только свои
2. свои + IX
3. свои + IX + забугорьеделается все это с помощью commnity, и конечно ни о каких двух BGP сессий речи быть не может - т.к. это бред.
>Утверждение неверное.
>1. Есть точки обмена траффиком без роутсервера, т.е. у точка нет своей
>АС.
Я думаю точки обмена траффиком национального маштаба к таким не относятся. Вот у нас в городе есть точка обмена траффиком, практически уверен что у нее нет своей АС, да и она не очень популяра к ней присоеденились буквально пару провайдеров.>2. Там присутствувуют далеко не все национальные операторы.
Интересно, а что тогда может гарантировать получение всех национальных маршрутов?>3. У каждого провайдера есть своя точка зрения на этот вопрос (сравните
>ТТК и РТК).
Ну вот наверное самое место выложить свои точки зрения, я имею ввиду провайдеров. Ну если конечно это не коммерческая тайна. :-)Я провайдер начинающий. Окунулся во все это буквально месяцев 6 назад. Буду признателен за любую информацию.
Всем привет.На самом деле я месяцев 5 назад тоже с такими вещами заморачивался. И скажу, что провайдеры анонсят на самом деле весь мир - просто типа тот линк с которого они тебе анансят, например, зарубежье имеет много хопов до России - и все. Ты можешь пользоваться их Россией, просто у тебя будет много хопов. Не разделяют ни фига провы свои анонсы. Вы вот даже можете посмотреть, какой-нибудь известный русский сервер будет скорее всего присутствовать во всех BGP-таблицах.
Удачи.
Дима.
категорично заялвлять что не разделяют нельзя.
потому что часто бывает так, что маршрутизаторы клиентов не в состоянии принять fullview и вот тогда приходиться анонсировать частичные маршруты и дефаулт.
>На самом деле я месяцев 5 назад тоже с такими вещами заморачивался.
>И скажу, что провайдеры анонсят на самом деле весь мир
>- просто типа тот линк с которого они тебе анансят, например,
>зарубежье имеет много хопов до России - и все. Ты можешь
>пользоваться их Россией, просто у тебя будет много хопов. Не разделяют
>ни фига провы свои анонсы. Вы вот даже можете посмотреть, какой-нибудь
>известный русский сервер будет скорее всего присутствовать во всех BGP-таблицах.На самом деле уже долго с этим заморачиваюсь и скажу что ты не прав, Дима. Маршрути фильтруют еще как.
>>На самом деле я месяцев 5 назад тоже с такими вещами заморачивался.
>>И скажу, что провайдеры анонсят на самом деле весь мир
>>- просто типа тот линк с которого они тебе анансят, например,
>>зарубежье имеет много хопов до России - и все. Ты можешь
>>пользоваться их Россией, просто у тебя будет много хопов. Не разделяют
>>ни фига провы свои анонсы. Вы вот даже можете посмотреть, какой-нибудь
>>известный русский сервер будет скорее всего присутствовать во всех BGP-таблицах.
>
>На самом деле уже долго с этим заморачиваюсь и скажу что ты
>не прав, Дима. Маршрути фильтруют еще как.По крайней мере то, с чем я столкнулся, было именно так. Провайдер присылал мне FullView, А я prepend'ами в as-path игрался и заставлял трафик идти ко мне так как мне надо. А анонсы они реально слали на все сразу, причем когда мы их стали просить слать только зарубежье без России, то они как-то это замяли все и все. Хотя по договору типа они нам должны были только зарубеж дать. Провайдер не наш, сразу скажу.
Удачи.
Дима.