Комментарии 67
В Eoip уже была дабавленна поддержка ipsec.
Пример:
/interface eoip add comment=«To SkyNet» name=«To SkyNet EoIP» remote-address=2.2.2.2 tunnel-id=0 ipsec-secret=jfv0wev9rg356bg1
Хотя тот же meshbird и tinc намного проще в разы, но под mikrotik мы их не увидем.
У меня в голове "общее" решение. Возможно, попытавшись настроить EoIP в условиях автора, я бы заметил и настроил встроенную поддержку, просто я аналогичную задачу всегда решал с помощью GRE.
Принципиально мой ответ означает, что проблема добавки шифрования здесь выеденного яйца не стоит, даже если бы специальной конфигурации не было — можно было бы реализовать стандартными средствами.
DMVPN не хватает. Ну или хотя бы умел бы микротик статический multipoint GRE, хотя бы статически настроено было бы — ну один или два тоннеля с каждой стороны, но не столько
Возможно, из-за незнания особенностей данного оборудования я что-то упускаю, но разве удобно использовать чистый IPSec и OSPF? Ведь в настройках политик IPSec приходится жёстко прописывать, трафик который будет шифроваться. А это самым отрицательным образом начинает сказываться на гибкости в работе сети (добавление новых подсетей, передачи интернет трафика через туннели, например, при NAT публикациях и пр.).
чистый ipsec — tunnel mode имеете ввиду?
1) Не стоит использовать CCR в корпоративных сетях. Да, в нем больше процессорных ядер, но для обработки IPsec и туннелей он использует одно ядро. В 1100 AHx2 работают оба ядра и каждый из них быстрее ядер в CCR. Купив CCR вы заплатили лишнего и только ухудшили инфраструктуру.
2) В вашей схеме развертывания (1 роутер, 2 провайдера) скорее всего исходящий трафик во всех туннелях идет через основного провайдера. Балансировку трафика вы получаете только для входящего трафика. Чтобы туннели у вас действительно грузили обоих провайдеров, вам нужно прописывать соответствующие статические маршруты до внешних адресов соседних микротиков — чтобы исходящий трафик до принимающей стороны шел через нужного провайдера.
3) Очень странно, что вы зарезервировали каналы интернет и даже электричество, а микротики не зарезервировали. В вашей схеме вам ничего не стоит сделать схему 1 провайдер — 1 микротик, добавить VRRP протокол и сделать по настоящему отказоустойчивое решение.
4) Решение использовать проприентарный протокол EoIP лично я считаю недальновидным. При прочих равных я бы предпочел использовать GRE или IPIP.
5) За использование адресов 192.168.0.0 и 192.168.1.0 я бы расстреливал. Надеюсь, что в рабочей сети у вас таких адресов нет.
6) В качестве area-id лучше использовать адрес loopback интерфейса, а не маршутизируемого интерфейса.
7) Про ipsec уже говорили, добавлю только, что если он у вас не используется и если у вас действительно сделан full-mesh, то, чисто теоетически, ничто не мешает врезавшись в линию в одном из допофисов, перенаправить трафик ото всех офисов через снифер используя фейковые данные ospf. Но это уже немного космос :)
8) Именование туннелей лучше делать более информативными, чем «один, два, три, тридцатьтри» — в дальнейшем при траблешутинге ой как пригодится.
rb1100ahx2 до 1 гигабита (c тюнингом) чуток не хватало
Но есть нюанс, 1 тоннель = 1 ядро, я так понял
2) Тоннели на разные провайдеры, если верить разным буковкам вместо ip. Балансирует у автора OSPF (ECMP), правильнее делать бонд из тоннелей тогда уж, но равноценных линков я ещё не встречал, а траблешутить дропы ему, видимо, ещё придётся.
3) тогда уж BGP
4) GRE медленней (нагрузка cpu)
7) оспф поломать просто, он у него беспарольный, и скорей всего, по дефолту, анонсится на все интерфейсы, network-то описан.
Ну и bfd не в ethernet всё-таки чересчур, имхо
2) Тоннели на разные провайдеры, если верить разным буковкам вместо ip. Балансирует у автора OSPF (ECMP), правильнее делать бонд из тоннелей тогда уж, но равноценных линков я ещё не встречал, а траблешутить дропы ему, видимо, ещё придётся.
Да, тоннели у него на разные провайдеры. Вот только если у маршрутизатора шлюз по умолчанию через интерфейс 1, то он все пакеты во вне по умолчанию будет слать через этот интерфейс, вне зависимости от того, какой в пакете будет стоят source IP. В итоге исходящий трафик в тоннеле 2, который, теоретически, должен уходить через интерфейс 2, уходит во вне через интерфейс 1.
А вы откуда уверены, что CCR использует только 1 ядро?
А вы откуда уверены, что CCR использует только 1 ядро?
В интернете полно информации по тестированию ipsec на CCR и отзывов недоуменных владельцев. Некоторые факт о использовании одного ядра узнают от поддержки микротика, другие — из наблюдения за загрузкой ядер во время тестирования.
Ну и настройки крипто тоже важны. Я тестировал на тех настройках, что рекомендованы (читаем: делай так — не ошибешься), но подозреваю, что с какими-то настройками крипто будет аппаратное, с какими-то — программное, но многоядерное, а с какими-то вообще бы просто завелось, и ладно.
Уже не говоря, что версия от версии отличаются заметно, в т.ч. и по тому, что работает как надо, а что — нет.
Свежие (недавно анонсированные) недорогие машинки стали очень дружить с IPSec, например. http://wiki.mikrotik.com/wiki/Manual:IP/IPsec#HEXv3_.28mmips.29_Config_Optimizations у них немного свои оговорки, как и что надо настраивать, и рекомендации кажутся разумными.
AHx2 https://routerboard.com/RB1100AHx2 вообще интереная железка. Долгожитель, с кулерами, с PPC, грузится долго (на фоне CCR), второго БП в нем нет (тоже на фоше CCR), но при этом продается, используется часто, и сравнительно многими.
Я в тесте наблюдал как раз загрузку многих ядер, когда много туннелей поднималось. Даже любопытно стало.
Вполне может быть так, что один туннель может занять не более одного ядра, но много туннелей могут занять все ядра. В этом случае действительно CCR покажет большую производительность. Я почему-то по своей наивности предпологала, что одно ядро процессора в принципе отвечает за процессинг на одном из портов — возможно, мое предлоложение было ошибочным.
За использование 192.168.0.0/24 и 192.168.1.0/24, прямо же сказано. Да, за это надо расстреливать, как и за использование VLAN 1.
Дело в том, что все, абсолютно все SOHO железки имеют такие адреса по умолчанию. Если вы, скажем, имеете задачу сделать удалённому пользователю работу VPN, у него дома практически наверняка будет одна из этих сетей. И вы столкнётесь с проблемами: сервер в офисе в 192.168.1.5, вы кидаете клиенту в VPN маршрут до 192.168.1.0/24 через VPN… а у него роутер 192.168.1.1, и подключившись к VPN, он теряет роутер, VPN, интернет и всё на свете.
А поскольку задача возникает всегда, то использовав такие сети вы с этой проблемой столкнётесь всегда. И придётся сеть в офисе — упс — перенумеровывать. Это очень больно.
1) Не стоит использовать CCR в корпоративных сетях. Да, в нем больше процессорных ядер, но для обработки IPsec и туннелей он использует одно ядро. В 1100 AHx2 работают оба ядра и каждый из них быстрее ядер в CCR. Купив CCR вы заплатили лишнего и только ухудшили инфраструктуру.
Откуда это?
Про ядра: CCR1036 — 1.2 GHz Tile, AH1100x2 — 1GHz PPC. Напрямую сравнить Tile с PPC не удастся, но по крайней мере частота в CCR больше.
А про то, как там IPsec и тоннели по ядрам распределяются — хочется подробностей — ссылок там, и так далее. Когда мы заводили на CCR1009 подобную штуку, на синтетических тестах (вроде flood-ping через тоннель) ядра нагружались равномерно. Жаль, что я сейчас туда посмотреть не могу.
2,3,4) С тех пор уже не надо стало — арендовали L2VPN от разных провайдеров, обернули в IPSec и радуемся
5) Естественно нет)) Хотя когда-то были.
6) Возможно, но пока работает — трогать смысла не вижу.
7) OSPF запароленный в проде. Уж извините, но конфиг сюда я копировал с тестового стенда, а не с прода, что, впрочем, не отменяет его работоспособности.
8) Естественно. В проде туннели называются согласно именам локаций в которые собственно они ведут.
А вот гонять в открытом виде трафик через интернет как-то совсем не айс.
Если у вас есть основная площадка то почему там только один роутер.
Как мониторите такой FullMesh?
name=.1.3.6.1.2.1.2.2.1.2.14 mtu=.1.3.6.1.2.1.2.2.1.4.14
mac-address=.1.3.6.1.2.1.2.2.1.6.14
admin-status=.1.3.6.1.2.1.2.2.1.7.14
oper-status=.1.3.6.1.2.1.2.2.1.8.14 [b]bytes-in=.1.3.6.1.2.1.2.2.1.10.14 [/b]
packets-in=.1.3.6.1.2.1.2.2.1.11.14
discards-in=.1.3.6.1.2.1.2.2.1.13.14
errors-in=.1.3.6.1.2.1.2.2.1.14.14 [b]bytes-out=.1.3.6.1.2.1.2.2.1.16.14 [/b]
packets-out=.1.3.6.1.2.1.2.2.1.17.14
discards-out=.1.3.6.1.2.1.2.2.1.19.14
errors-out=.1.3.6.1.2.1.2.2.1.20.1
при включении bfd не смущает большое количество служебных пакетов (в вашем случае вроде получается 64 пакета за 0.2 секунды )?
Таким образом нас перестали пугать технические работы у провайдера, а также периодические проблемы с проходимостью GRE пакетов по определенным направлениям
Тут автор сам себе противоречит. Протокол EoIP работает на основе инкапсуляции L2-трафика внутрь GRE-пакетов. Достаточно внимательно посмотреть с помощью torch либо сделать tcpdump на транзитном маршрутизаторе.
Так любят строить туннели наши «азиатские партнеры» из Индонезии и близлежащих к ней стран. Там некоторые вообще как дети — набриджуют EoIP туннелей в огромный broadcast-домен и чего-то с ним шаманят, извращаются…
если не грамотно подойти к разделению на арии, эффект, при количестве маршрутизаторов от 20, будет весьма интересен :)
на микротах не видел противодействий данному, есть там по количеству отправляемого-принимаемого?
а вот на микротах придумал только фаерволом канал резать для ospf, но это топорно и л3, а хотелось бы повыше уровнем
либо чуть ли не на каждый тоннель арию делать и передать маршруты уже выше lsa3 :)
чуть ли не на каждый тоннель арию делать и передать маршруты уже выше lsa3
Маршруты между разными area передаются как раз в рамках LSA 3.
вариант был в качестве бреда, естественно надо делать всё по реалиям железок (а в микроте эту путь проб), либо на основе чужих стандартов, не более 50 маршрутов на одну арию и всё такое.
к слову, с оспф у микротика все очень печально по части реализации — вплоть до закольцовывания маршрутов, поймете как только появится более одной area…
За исключением глюка, когда сразу после интенсивной настройки/переконфигурации, требуется рестартовать инстанс, других не попадалось.
Поделитесь примерами топологии и конфигов при закольцовывании. Можно в личку, поскольку чуть оффтоп.
A1 - A2
| .. |
A3 - A4
где A1..A4 — разные area
где-то было описание этого случая на наге, но что-то с ходу найти не могу.
А передавать по арендуемым L2-каналам OSPF опасно — никто не даст вам 100% гарантии прохождения multicast. Когда-нибудь оно сломается может и не по Вашей вине. С BGP unicast такого точно не произойдет.
openvpn не советую вообще, мало того, что rtt добавляет, да ещё и рандомно при нагрузке большой, дык ещё и тормозной, без сжатия и в TCP
для оспф 10х4
в данном случае рассматриваем ibgp или ebgp? там разные периоды рассылки изменений
на микротах нет UDP
по моим тестам openvpn медленнее ipip, и даже без разницы что на другой стороне: микрот, линукса, винда, всё зависит от количества пакетов, при моих нагрузках больше 80мегабит в одном канале я не смог родить.
Цифры для EOIP должны отличаться на 10% максимум, т.к. с eoip я тоже жил, ибо по-другому л2 не прокинуть, а мплс на мини микротах очень медленный
про eoip я вообще не говорил, его использование для меня — дикость
ну и прочие «мелочи», как к примеру отсутствие нормальной поддержки приема анонсов от route reflector, с next nop не из connected/static (пример: узел 1.1.1.1 анонсит дефолт через 2.2.2.2 и 2.2.2.0/24 через 1.1.1.1 — микротик это не поймет и сделает default unreachable).
а для быстрой сходимости есть bfd…
А с RR вообще возможно как-то на микроте?
у меня ни сделать, ни пообщаться не получилось, только руками/скриптами, только хардкор, но в продакшен я это не пихнул, оно как бы есть и заявлено, но ожидаемый результат получается как-то не так, как хотелось бы. Такое чувство, что микротом можно только натить/чуток_фаерволить (исключительно cisco ASA style). Как только начинаешь изображать что-то умное, выскакивает куча ограничений, многотунелье не любит, динамику не понимает, над фулвьюшечкой думает, роутинг с блокируемой коммутацией получается, VRRP не выгоден, куча правил в фаере тож с трудом переваривается. Такой он, для очень вялого энтерпрайза, дешёвый pps спасает. Ну нет у них желания влезать в нормальные сети.
ИМХО микротик — скорее для тех, кто не осилил *nix и не любит думать — т.к. есть 100500 гайдов, как сконфигурить что-то, с расписанным порядком куда ткнуть мышкой для получения результата.
а с RR — пообщаться получится только если напихать микротику маршруты к аплинкам статикой через RR. возможно — еще получится если маршруты будут получаться не статикой а через ospf/rip, но не пробовал.
а сервис-контракт — основное требование энтерпрайза.
ну, в случае с микротиком дешевле купить ящик резервных железок
а багов таки имеется. к примеру, вис микротика наглухо при частых ssh коннектах (порядка нескольких коннектов в секунду) — эту багу фиксили более 3 лет (!). или из относительно свеженького (вроде еще непофиксенного) — вис при переполнении коннтрака… и по железу там часто все печально — тот же встроенный свич в rb2011 к примеру при наличии в л2 сегменте более 50-70 маков превращается в хаб из-за колизий хешей (спасибо дешевому AR8337), начинает рассылать трафик во все свои порты, и бороться можно только свичуя (бриджуя) все на и так чахлом проце; на тех же CCR с гигабитными портами распаяны сетевые адаптеры atheros которые на 500-600 мбитах реального трафика с мелкими пакетами начинают превращаться в тыкву, и т.п.
ну и да, микротики по цене не дешевле б/у циски/джунипера сравнительной производительности.
Опенвпн на микротике? Лучше бы его там совсем не было, чем этот огрызок.
А передавать по арендуемым L2-каналам OSPF опасно — никто не даст вам 100% гарантии прохождения multicast.
Вот с этим вынужден согласиться. Сам наелся, и на цисках, а не на микротиках. Уже не помню, к чему там в итоге пришли, к nbma или что-то ещё изобретали.
Настройка FullMesh сети на Mikrotik через EoIP туннели