• Apparati e reti
  • Configurazione rete – Aggregazione WAN + Failover con Mikrotik + Firewall

Draxen
Ma cosa vuoi fare ?
Failover è fattibile.
Load balancing su base "connessione" lo sconsiglio su connessioni così diverse. Funzionerebbe male... poi molti siti con sicurezza si piantano.

Lorenzo1635
Dipende dal lavoro, ma ho visto aziende chiedere quei soldi...

  • Hadx ha messo mi piace.
  • Modificato

Draxen
Schematizza la tua rete e posta qui, ma soprattutto pensa bene a quali siano le tue reali esigenze in modo che possiamo indirizzarti verso una soluzione adeguata.

Una connessione SD-WAN (Software-Defined Wide Area Network) utilizza principalmente load balancing a livello di rete e trasporto (L3/L4), con tecniche avanzate per ottimizzare la latenza, la perdita di pacchetti e la disponibilità delle connessioni; nel tuo caso sarebbe una versioneepiù "casalinga" usando Mikrotik.

Il bonding è un'aggregazione L2 e va utilizzata per aggregare le nic di un server ed avere maggior hroughput e failover (non è il caso in oggetto).

  • Draxen ha risposto a questo messaggio

    Draxen

    Non è proprio una connessione di casa 😄

    Mikrotik è imprescindibile? Perché con altre tipologie di OS / Hardware il load balancing / failover si fa facilmente anche da interfaccia grafica....

    gio79
    Openmptcp = openwrt
    Che sarebbe quello che consiglierei anche io, ma dovrebbe buttare alle ortiche mikrotik e non so se può farlo....

    • gio79 ha risposto a questo messaggio

      questa è la configurazione dello switch:# 2025-02-26 07:29:57 by RouterOS 7.16.1

      software id = YDL8-8X9M

      #

      model = CRS326-24G-2S+

      serial number = HGG09GF9XRB

      /interface bridge
      add name=bridge1
      /interface ethernet
      set [ find default-name=ether17 ] name="ether17 - Starlink"
      set [ find default-name=ether18 ] name="ether18 - Intred"
      set [ find default-name=ether24 ] name="ether24 - Gestione Rete"
      /ip pool
      add name=Pool-Chalet ranges=10.10.0.1-10.10.0.200
      add name="Pool - Alcide" ranges=10.0.0.1-10.0.0.68,10.0.0.70-10.0.0.254
      add name=dhcp_pool2 ranges=10.0.0.1-10.0.0.68,10.0.0.70-10.0.0.254
      add name=dhcp_pool3 ranges=10.0.0.1-10.0.0.68,10.0.0.70-10.0.0.254
      add name=dhcp_pool4 ranges=10.10.0.1-10.10.0.200
      add name=dhcp_pool5 ranges=10.10.0.1-10.10.0.200
      add name=dhcp_pool6 ranges=10.10.0.1-10.10.0.200
      /ip dhcp-server
      add address-pool=dhcp_pool6 interface=bridge1 lease-time=2h name=dhcp1
      /port
      set 0 name=serial0
      /queue simple
      add max-limit=15M/15M name="Limite Intred" target="ether18 - Intred"
      add max-limit=15M/30M name="Limite Starlink" target="ether17 - Starlink"
      /routing table
      add disabled=no fib name=ISP1
      add disabled=no fib name=ISP2
      /interface bridge port
      add bridge=bridge1 interface=ether1
      add bridge=bridge1 interface=ether2
      add bridge=bridge1 interface=ether3
      add bridge=bridge1 interface=ether4
      add bridge=bridge1 interface=ether5
      add bridge=bridge1 interface=ether6
      add bridge=bridge1 interface=ether7
      add bridge=bridge1 interface=ether8
      add bridge=bridge1 interface=ether9
      add bridge=bridge1 interface=ether10
      add bridge=bridge1 interface="ether24 - Gestione Rete"
      add bridge=bridge1 interface=ether14
      add bridge=bridge1 interface=ether11
      add bridge=bridge1 interface=ether12
      add bridge=bridge1 interface=ether13
      add bridge=bridge1 interface=ether15
      add bridge=bridge1 interface=ether16
      add bridge=bridge1 interface=ether19
      add bridge=bridge1 interface=ether20
      add bridge=bridge1 interface=ether21
      add bridge=bridge1 interface=ether22
      add bridge=bridge1 interface=ether23
      /ip address
      add address=10.10.0.254/24 interface=bridge1 network=10.10.0.0
      /ip cloud
      set update-time=no
      /ip dhcp-client
      add interface="ether17 - Starlink"
      add interface="ether18 - Intred"
      /ip dhcp-server lease
      add address=10.10.0.48 client-id=1:c8:5a:cf:ac:e5:8f mac-address=C8:5A:CF:AC:E5:8F server=dhcp1
      add address=10.10.0.201 client-id=1:0:1a:e0:0:80:19 comment="Cassa 1" mac-address=00:1A:E0:00:80:19 server=dhcp1
      add address=10.10.0.202 client-id=1:0:60:ef:20:da:55 comment="Cassa 2" mac-address=00:60:EF:20😃A:55 server=dhcp1
      add address=10.10.0.203 client-id=1:50:af:73:31:42:6c comment="Cassa 3" mac-address=50:AF:73:31:42:6C server=dhcp1
      add address=10.10.0.204 client-id=1:8c:4:ba:9d:14:8d comment="Cassa 4" mac-address=8C:04:BA:9D:14:8D server=dhcp1
      add address=10.10.0.206 client-id=1:e8:6f:38:23:18:d3 mac-address=E8:6F:38:23:18😃3 server=dhcp1
      /ip dhcp-server network
      add address=10.10.0.0/24 dns-server=10.10.0.254 gateway=10.10.0.254
      /ip dns
      set allow-remote-requests=yes mdns-repeat-ifaces=lo
      /ip firewall mangle
      add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new in-interface="ether17 - Starlink" new-connection-mark=ISP1_Conn passthrough=yes
      add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new in-interface="ether18 - Intred" new-connection-mark=ISP2_Conn passthrough=yes
      add action=mark-routing chain=output connection-mark=ISP1_Conn new-routing-mark=ISP1 passthrough=yes
      add action=mark-routing chain=output connection-mark=ISP2_Conn new-routing-mark=ISP2 passthrough=yes
      add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new dst-address-type=!local in-interface="ether17 - Starlink" new-connection-mark=ISP1_Conn passthrough=yes per-connection-classifier=\
      src-address-and-port:2/0
      add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new dst-address-type=!local in-interface="ether18 - Intred" new-connection-mark=ISP2_Conn passthrough=yes per-connection-classifier=\
      src-address-and-port:2/1
      add action=mark-routing chain=prerouting connection-mark=ISP1_Conn in-interface=bridge1 new-routing-mark=ISP1 passthrough=yes
      add action=mark-routing chain=prerouting connection-mark=ISP2_Conn in-interface=bridge1 new-routing-mark=ISP2 passthrough=yes
      /ip firewall nat
      add action=masquerade chain=srcnat
      add action=dst-nat chain=dstnat dst-port=8080 in-interface="ether17 - Starlink" protocol=tcp to-addresses=10.10.0.203 to-ports=8080
      add action=dst-nat chain=dstnat dst-port=8080 in-interface="ether18 - Intred" protocol=tcp to-addresses=10.10.0.203 to-ports=8080
      add action=accept chain=input protocol=tcp src-port=8291
      /ip hotspot profile
      set [ find default=yes ] html-directory=hotspot
      /system clock
      set time-zone-autodetect=no time-zone-name=Europe/Rome
      /system clock manual
      set time-zone=+01:00
      /system identity
      set name=R10-Biglietteria
      /system note
      set show-at-login=no
      /system ntp client
      set enabled=yes
      /system ntp client servers
      add address=ntp1.inrim.it
      add address=ntp2.inrim.it
      add address=time.inrim.it
      /system routerboard settings
      set enter-setup-on=delete-key
      /tool romon
      set enabled=yes id=00:00:00:00:00:10

      • wtf e gio79 hanno risposto a questo messaggio
        • Modificato

        Draxen add action=masquerade chain=srcnat

        Questa riga non specifica alcuna interfaccia.

        Draxen add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new in-interface="ether17 - Starlink" new-connection-mark=ISP1_Conn passthrough=yes
        add action=mark-connection chain=prerouting connection-mark=no-mark connection-state=new in-interface="ether18 - Intred" new-connection-mark=ISP2_Conn passthrough=yes

        in queste regole non c'è il per-connection-classifier, inoltre sono ripetute più sotto.

        Non vedo il routing in questa conf.

        Una conf di esempio la farei così:

        Imposta i nomi delle interfacce WAN

        /interface list
        add name=WAN
        /interface list member
        add interface=ether17 list=WAN
        add interface=ether18 list=WAN

        Imposta gli IP statici o DHCP sulle WAN

        /ip address
        add address=192.168.1.2/24 interface=ether17
        add address=192.168.2.2/24 interface=ether18

        /ip dhcp-client
        add interface=ether17 use-peer-dns=no use-peer-ntp=no disabled=no
        add interface=ether18 use-peer-dns=no use-peer-ntp=no disabled=no

        Imposta i gateway sulle WAN

        /ip route
        add dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark=WAN1 check-gateway=ping
        add dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=WAN2 check-gateway=ping

        Aggiungi regole di NAT per la navigazione Internet

        /ip firewall nat
        add chain=srcnat out-interface=ether17 action=masquerade
        add chain=srcnat out-interface=ether18 action=masquerade

        Configura il bilanciamento del carico con PCC

        /ip firewall mangle
        add chain=prerouting in-interface=bridge action=mark-connection new-connection-mark=WAN1_conn passthrough=yes per-connection-classifier=both-addresses-and-ports:2/0
        add chain=prerouting in-interface=bridge action=mark-connection new-connection-mark=WAN2_conn passthrough=yes per-connection-classifier=both-addresses-and-ports:2/1

        Instrada il traffico in base al bilanciamento

        add chain=prerouting connection-mark=WAN1_conn action=mark-routing new-routing-mark=WAN1 passthrough=no
        add chain=prerouting connection-mark=WAN2_conn action=mark-routing new-routing-mark=WAN2 passthrough=no

        Aggiungi regole per il failover

        /ip route
        add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 routing-mark=WAN1
        add dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=1 routing-mark=WAN2
        add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=ping
        add dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=2 check-gateway=ping

        Permetti traffico LAN verso Internet

        /ip firewall filter
        add chain=forward action=accept connection-state=established,related
        add chain=forward action=drop connection-state=invalid
        add chain=forward action=accept in-interface=bridge out-interface-list=WAN

        Draxen questa è la configurazione dello switch:# 2025-02-26 07:29:57 by RouterOS 7.16.1

        Quindi questo switch è il vostro router?
        dalle immagini, foto, posso capire che intred via ponte radio vi porta la connessione (WAN1), poi avete una antenna di Starlink che vi da altra connessione (WAN2).
        Potreste usare il Mikrotik L009UIGS-RM come router principale, fate arrivare lì i cavi di WAN1 e WAN2. si configura il mikrotik per usare una delle due connessioni come "principale" e in caso di fault, la seconda entra in funzione.
        il L009 potrebbe essere fare da dhcp, dns. a questo ci collegate (sempre via cavo ethernet) gli altri dispositivi/apparati (tipo lo swtich CRS326 e gli eventuali altri pc/stampanti/pos/telecamere.
        NON c'è aggregazione di WAN, ma failover sì e sì il firewall funziona.

        documibozu Openmptcp = openwrt

        non proprio... openmptcp è una soluzione che permette di aggregare + connessioni usando Multipath TCP (MPTCP) su OpenWrt, ma serve una vps dove far confluire le connessioni. vps possibilmente dislocata in italia e che il suo ip non sia identificato come appartenente a servizi di hosting .

        poi il failover è una cosa il load balancing altra

          gio79 se è per quello il bonding è un'altra cosa ancora rispetto al failover e al load balancing.
          Bisognerebbe capire cosa vuole l'OP: una sola connessione per spremere tutta la banda possibile (esempio: sono un content creator che fa up e down di files da 1gb l'uno)?
          Oppure crea x piccole connessioni e vuole distribuire il carico (esempio: ho un bed and breakfast con 10 camere che guardano un film su Netflix o navigano su internet)?
          Nel primo caso serve il bonding, nel secondo è inutile, basta un balancer.
          Peraltro una VPS, ove fosse necessaria, gli costa all'anno sui 100 euro, anche meno...non so tutto quel materiale mikrotik + assistenza su routeros (uno degli os più incasinati che abbia mai visto) quanto gli costi/sia costato

            documibozu Peraltro una VPS, ove fosse necessaria, gli costa all'anno sui 100 euro

            Dipende anche dalla reputaizione IP della VPS: non mi stupirei se fosse bloccato da Netflix/Prime/ altro servizio di rilevanza per i clienti

              documibozu
              Se hai visto la rete, è un'attività di una stazione sciistica

              documibozu Peraltro una VPS, ove fosse necessaria, gli costa all'anno sui 100 euro, anche meno...non so tutto quel materiale mikrotik + assistenza su routeros (uno degli os più incasinati che abbia mai visto) quanto gli costi/sia costato

              Perchè non conosci il settore. Quell'hw mikrotik costa veramente poco rispetto ad altri.

              Quali hai visto di altri os?

              Lorenzo1635
              Sono tutti bloccati.
              L'unica è farselo fare da un ISP che gli dedica un IP non datacenter. Uania fa questo di mestiere.
              In ogni caso bisogna stare attenti perchè inevitabilmente aumenta la latenza.

              • Modificato

              Draxen Questa è la situazione odierna, a dire il vero il router mikrotik non è mai stato messo. sta facendo da ferma porte. se qualcuno volesse darmi consigli sono ben accetti. siate magnanimi.

              https://www.canva.com/design/DAGh0_l_UI4/2PPZlmmiue_omtfbAB79BA/edit?utm_content=DAGh0_l_UI4&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton

              Allora... I due switch CRS326 hanno una cpu troppo modesta (siamo a circa 200 Mbps gestibili in totale tra entrate e uscita sommate), anche i L009UIGS-RM che hai preso sono parecchio lenti, vanno benino come switch, ma siamo a processore che regge circa 300 Mbps totali ( già la tua Intred 100+100 te ne mangia 2/3), dovresti guardare qualcosa con una cpu più potente tipo un RB5009 (circa 3000 Mbps gestibili, 15 volte i CRS326 e 10 volte i L009) che riuscirebbe a gestire il tutto in scioltezza (firewall, ruoting e load balancing).

              Il failover è un problema di impostazioni (hai cpu lente, con prestazioni pessime, ma dovrebbero farlo andare anche se rallentando tutto), stessa cosa le VLAN, tutti i dispositivi Mikrotik le supportano (ma devi o studiartele tu o far venire un tecnico che conosce RuoterOS, il generico tecnico di paese non ci capirà mai un tubo, ci vogliono diverse decine di ore di studio dei manuali Mikrotik per cavarci fuori qualcosa).
              Il problema vero è quello che tu pensi sia il load balance... non ti sommerà affatto le velocità delle due reti (Intred e Starlink), il singolo dispositivo che si collega ad internet non andrà mai più veloce della singola connessione da sola, semplicemente li smisti, alcuni su una e alcuni sull'altra, ma le velocità rimangono separate.

              gio79 Il Mikrotik L009 non ha difficoltà a gestire quelle 2 wan,

              Eccome se ha problemi:

              La sua cpu è una lumaca, siamo a circa 300 Mbps di banda gestibile in totale, lui tra FWA e SL ne deve gestire almeno il doppio.

              Con circa gli stessi soldi prendi un RB5009 che è dieci volte più veloce

              gio79 però non è possibile fare aggregazione delle 2 wan in maniera semplice. ti serve una vps e qualche config ... vedi https://www.openmptcprouter.com/

              Esatto, puoi fare balancing (alcune casse/pc/dispositivi su una rete, gli altri sulla seconda e failover per entrambe su quella che rimane su in caso di problemi). Per l'aggregazione meglio valutare servizi chiavi in mano tipo Uania.

              gio79 Failover: trovi n guide su come si fa con Mikrotik. dal loro sito o loro forum trovi molte guide semplici.

              Finchè non si cercano cose esotiche si 😉

              • wtf e gio79 hanno risposto a questo messaggio

                LSan83 Il problema vero è quello che tu pensi sia il load balance... non ti sommerà affatto le velocità delle due reti (Intred e Starlink), il singolo dispositivo che si collega ad internet non andrà mai più veloce della singola connessione da sola,

                Questo è evidente dal significato del termine "load balance".
                Nel caso specifico per l'op non avrebbe alcuna utilità pratica ottenere un aggregazione di banda verso un singolo dispositivo.

                E' invece opportuno dimensionare i device che si intendono utilizzare in modo che abbiano performance adeguate come hai evidenziato.
                In linea generale se devo fare routing comprerò un router, se mi serve switching comprerò uno switch ecc.

                un altro esperto mi ha risposto così

                "errore principale, che invalida tutto il resto
                il CRS326 è uno switch, e te gli stai facendo fare da router e firewall
                non è adeguato

                ti serve una routerboard a fare da router e il crs326 fa da switch

                per il resto, come già ti avevo scritto, una configurazione con dual wan non è così semplice su mikrotik, cioè per chi conosce routeros è una caxxata, ma nella tua configurazione vedo sbagli di tutti i tipi, usi il mark dei pachetti con le routing table, ma poi da nessuna parte vedo le route specificate per le routing table, poi mancano tutte le impostazioni delle firewall rules, ecc

                insomma, è fatta tutta male e sull'apparato sbagliato.

                Non è banale iniziare a lavorae con mikroti, devi leggere guide, manuali, provare e riprovare, avere conoscenza di networking, ecc. Se vuoi qualcosa di "veloce e pronto" metti un mini pc con 4 ethernet e con opnsense e gli fai fare da firewall/router dual wan, imposti tutto da interfaccia web in poco

                il crs326 tienilo com switch, metti tutte le porte in bridge e via, magari un domani ci potrai fare le vlan

                link mini pc:
                https://shop.opnsense.com/new-dec600-series-opnsense-desktop-security-appliances/"

                cosa ne pensate ?

                  Draxen Se vuoi qualcosa di "veloce e pronto" metti un mini pc con 4 ethernet e con opnsense e gli fai fare da firewall/router dual wan, imposti tutto da interfaccia web in poco

                  Per carità, funziona e ha pure ragione, ma definirlo "veloce e pronto"...

                  Però, scusami un attimo, puoi ripetere cosa vorresti ottenere?

                  a. Il fare uno speedtest e vedere la somma di Starlink + Intred non è fattibile. Si chiama Bonding e richiede una VPS esterna da cui fare uscire il traffico e ti costa un sacco se non è una soluzione DIY.
                  b. Ok, ti serve il failover. Ci sta.
                  d. Il load-balancing puoi decidere che certe subnet escono da Starlink o da Intred ma ha senso? In che contesti? Perchè se non hai tanta banda bisogna valutarne il senso specie perchè sono due connessioni molto diverse.
                  c. Le VLAN come devi segmentare la rete interna?

                  • Draxen ha risposto a questo messaggio

                    Lorenzo1635
                    Failover efficace: per garantire continuità operativa in caso di guasto di una connessione o di un dispositivo di rete.
                    • Sistema di gestione del traffico (es. firewall o router): per instradare le reti in base alla necessità, assegnando priorità a certi tipi di traffico.
                    • Limite di banda per dispositivo: per evitare congestioni e garantire che nessun dispositivo monopolizzi la rete.
                    • Load balancing non necessario a questo punto.

                    Non spendere 5.000€ per fare queste cose. Ne ho già spesi 2.000€ prima. Tutto qua

                      Draxen assegnando priorità a certi tipi di traffico.

                      Certi tipi di traffico o certi dispositivi/VLAN? Perché nel secondo caso hai policy più semplici

                      • Draxen ha risposto a questo messaggio

                        Lorenzo1635 mi interessa solo che i 3 pc in biglietteria stiano con Intred.
                        Il resto chiunque può andare dappertutto.

                          Draxen

                          Ok. Ora si ragiona. Dual-WAN con Failover e load-balacing basato su policy.

                          Chi ti fà supporto per la rete Mikrotik sa usare anche pfSense/OPNSense?

                          In ogni caso nulla ti vieta di provarlo un attimo in una macchina virtuale per vedere com'è la WebUI per la gestione.

                          Draxen Ne ho già spesi 2.000€ prima.

                          Non nei dispositivi mikrotik 🙃

                          • LSan83 ha risposto a questo messaggio

                            Informativa privacy - Informativa cookie - Termini e condizioni - Regolamento - Disclaimer - 🏳️‍🌈
                            P.I. IT16712091004 - info@fibraclick.it

                            ♻️ Il server di questo sito è alimentato al 100% con energia rinnovabile