Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Два провайдера и openvpn клиент

    Scheduled Pinned Locked Moved Russian
    96 Posts 7 Posters 20.7k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R Offline
      rubic @pigbrother
      last edited by

      @pigbrother у меня тоже бывало, не удалялись в OSPF, можно и руками попробовать удалить в таком случае, но на всякий случай проверьте еще все настройки, что были сделаны до этого

      1 Reply Last reply Reply Quote 0
      • werterW Offline
        werter
        last edited by werter

        2All

        Кто смогЕт соорудить - отпишитесь. С картинками )
        Спасибо заранее.

        P 1 Reply Last reply Reply Quote 0
        • P Offline
          pigbrother @werter
          last edited by

          @werter said in Два провайдера и openvpn клиент:

          Кто смогЕт соорудить - отпишитесь. С картинками )

          Если вас интересует сторона PF, то ув. @rubic еще в 2013 году делился с нами настойками OSPF, теперь там есть и картинки, пост отредактирован в 2109, за что отдельное спасибо.
          https://forum.netgate.com/topic/53022/openvpn-psk-site-to-site-%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F-%D0%B4%D0%BB%D1%8F-%D0%BE%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D1%8F?page=1

          1 Reply Last reply Reply Quote 0
          • werterW Offline
            werter
            last edited by werter

            Добрый.

            Сам попросил - сам осилил )

            Собственно, настройка OSPF, используя пакет FRR.
            Имеется Головной офис с неск-кими WAN. Имеется клиент, к-ый подключен по OpenVPN к этому офису. Задача обеспечить минимальное время простоя этой связки.

            Создаем и настраиваем P2P Shared key Openvpn серверы и клиенты (если ранее не использовалось). В строках Remote Subnet, Local Subnet ничего не пишем! Проверяем, что VPN-линки поднялись.
            Разрешаем OSPF в fw во вкладке OpenVPN на сервере и клиенте. Ставим это правило самым первым.
            Устанавливаем и на сервере и на клиенте пакет FRR.

            Далее ниже на картинках:

            1 Firewall Rules OpenVPN.png 2 FRR Global Settings client.png 2 FRR Global Settings server.png 3 OSPF Setting.png 4 OSPF Interfaces Edit.png 5 OSPF Interfaces LAN passive.png 6 OSPF Interfaces.png

            Теперь самое интересное.
            Как выдать OSPF-клиенту маршрут в сеть ЗА сервером (напр., в сеть, к -ая подключена по VPN к серверу) или наоборот?
            Долго перебирал варианты. Пока не наткнулся на https://forum.netgate.com/topic/144153/frr-ospf-distribute-route-for-openvpn-interface/
            Делаем так. В FRR Global Settings на сервере в самом низу в Subnet пишем адрес сети, путь к к-ой хотим по OSPF выдать клиенту.
            НО, маску пишем не ту, к-ая у вас изначально, а перекрывающую ее. Напр., вам надо выдать клиенту по OSPF путь в сеть 192.168.1.0/24 за сервером.
            Для этого пишем в Subnet на сервере 192.168.0.0/23 и в Static Route Target выбираем Interface:Localhost. В топике по ссылке выше
            объяснено почему (FreeBSD only supports one route per matching network so your FRR static route wouldn't stick
            because FreeBSD already has a route in its kernel routing table for the same network. Using a supernet works because
            that route doesn't already exist in your routing table.) И правила fw на клиенте\сервере поправить по ситуации не забываем.

            OSPF Neighbors
            Neighbor ID Pri State Dead Time Address Interface RXmtL RqstL DBsmL
            10.0.0.1 1 Full/DROther 16.819s 10.0.4.1 ovpnc2:10.0.4.2 0 0 0
            10.0.0.1 1 Full/DROther 16.834s 10.0.4.5 ovpnc3:10.0.4.6 0 0 0

            OSPF network routing table
            ============ OSPF network routing table ============
            N 10.0.0.0/24 [20] area: 0.0.0.0
            via 10.0.4.1, ovpnc2
            N 10.0.1.0/24 [10] area: 0.0.0.0
            directly attached to vtnet1

            ============ OSPF router routing table =============
            R 10.0.0.1 [10] area: 0.0.0.0, ASBR
            via 10.0.4.1, ovpnc2

            ============ OSPF external routing table ===========
            N E2 192.168.100.0/28 [10/20] tag: 0
            via 10.0.4.1, ovpnc2
            N E2 192.168.101.0/28 [10/20] tag: 0
            via 10.0.4.1, ovpnc2

            Зы. Насчет скорости переключения в случае пропадания\появления одного из каналов. Это происходит не мгновенно. За это отвечают параметры Retransmit Interval, Hello Interval, Dead Interval в настройках OSPF Interface. По умолчанию это ~50 сек ( Hello Interval 10 сек + Dead Interval 40 сек - соотношение 1:4) Крутите их, если надо быстрее\медленнее.

            P 1 Reply Last reply Reply Quote 1
            • P Offline
              pigbrother @werter
              last edited by

              @werter Спасибо.
              Если можно, пару вопросов:

              1. Почему FRR, а не Quagga?
                2.Почему P2P Shared key? Для простоты? Будет ли работать с PKI?
              1 Reply Last reply Reply Quote 0
              • werterW Offline
                werter
                last edited by werter

                Добрый.

                1. Пакет FRR новее. Пакет Quagga не обновляется с февраля 19-го
                2. P2P с сертификатом должен работать. Пробуйте.
                P 1 Reply Last reply Reply Quote 0
                • P Offline
                  pigbrother @werter
                  last edited by

                  @werter
                  Смущает этот костыль:

                  @werter said in Два провайдера и openvpn клиент:

                  НО, маску пишем не ту, к-ая у вас изначально, а перекрывающую ее. Напр., вам надо выдать клиенту по OSPF путь в сеть 192.168.1.0/24 за сервером.

                  1 Reply Last reply Reply Quote 0
                  • werterW Offline
                    werter
                    last edited by werter

                    @pigbrother
                    Ответ описан выше (со ссылкой).

                    FreeBSD only supports one route per matching network so your FRR static route wouldn't stick
                    because FreeBSD already has a route in its kernel routing table for the same network. Using a supernet works because
                    that route doesn't already exist in your routing table

                    P 1 Reply Last reply Reply Quote 0
                    • P Offline
                      pigbrother @werter
                      last edited by

                      @werter said in Два провайдера и openvpn клиент:

                      Ответ описан выше (со ссылкой).

                      Поверьте, я его прочитал когда пост был опубликован.

                      1 Reply Last reply Reply Quote 0
                      • werterW Offline
                        werter
                        last edited by

                        @pigbrother
                        Возможно, что как-то это решается с пом. настроек FRR. Но моей компетенции не хватает (
                        Может вы или @rubic осилите.

                        1 Reply Last reply Reply Quote 0
                        • werterW Offline
                          werter
                          last edited by

                          @El_Ninio
                          Ув. ТС.
                          Могли бы Вы переименовать этот топик во что-то аля "Настройка OpenVPN + OSPF + Mikrotik"
                          Заранее благодарен )

                          1 Reply Last reply Reply Quote 0
                          • werterW Offline
                            werter
                            last edited by werter

                            Добрый.
                            Дополню. Настроил openvpn + ospf для всех своих Филиалов.
                            Пример работы:

                            ospf test.png

                            Был вопрос в том, как организовать выдачу Филиалам маршрута в сеть Головного офиса через ospf. Для себя нашел 2 варианта. Это или засунуть все Филиалы в одну Area c Головным (спорное решение в моем случае) или отдельные Area для каждого Филиала + Static route в сеть Головного офиса . Решил сделать по 2-му варианту (и не забываем про перекрывающую маску в Static route для Головной сети )

                            Зы. В процессе настройки набрел на статью www.opennet.ru/base/net/ospf_over_gre.txt.html . Почерпнул в ней, что если стоимость\вес (Cost) ospf-интерфейсов одинаков, то будет некое подобие load balancing. И что параметр mtu-ignore может помочь при разных mtu на концах туннеля (adsl <-> usb 4G, ethernet <->adsl, криворукие одмины провайдера <-> вы)

                            Также обнаружил интересный проект BSD Router Project (BSDRP)

                            The main goal of BSDRP is not firewalling but routing

                            bsdrp.net/features
                            bsdrp.net/documentation/faq
                            Пример bsdrp.net/documentation/examples/simple_bgp-rip-ospf_lab

                            Исходный код открыт. Вот бы пакет для пф на его основе создали )

                            R 1 Reply Last reply Reply Quote 0
                            • R Offline
                              rubic @werter
                              last edited by

                              @werter said in Два провайдера и openvpn клиент:

                              Зы. В процессе настройки набрел на статью www.opennet.ru/base/net/ospf_over_gre.txt.html . Почерпнул в ней, что если стоимость\вес (Cost) ospf-интерфейсов одинаков, то будет некое подобие load balancing.

                              Не взлетит на pfSense, думаю. Два маршрута в одну сеть невозможны, метрик нет, multipath не работает

                              1 Reply Last reply Reply Quote 0
                              • P Offline
                                pigbrother
                                last edited by pigbrother

                                @rubic
                                @werter
                                А будет ли работать с PF с поднятым OSPF клиент, на котором обычный клиент Open VPN?

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post
                                Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.