martedì , Giugno 15 2021
Ultime Notizie
Home / Wireless & Networking / Mikrotik / Mikrotik – Aggregare due WAN con PCC

Mikrotik – Aggregare due WAN con PCC

Ciao Ragazzi,

oggi parliamo del PCC (Per Connection Classifier). Tra le sue funzionalità analizziamo il Load Balancing di più connessioni internet per avere un unico flusso aggregato che sarà in totale quasi la somma delle velocità delle singole connessioni(es. WAN1=10Mb, WAN=10Mb -> in uscita avremo 18-20Mb)

Esistono diverse modalità di utilizzo, oggi ne vedremo due: una basata sull’indirizzo IP delle due WAN e una basata su due interfacce PPPoE.

1 – Modalità basata su IP delle WAN

Per prima cosa vediamo un esempio di come è organizzata la rete:

In questo caso lo scenario prevedere:

WAN1 – 10.0.1.1/24

WAN2 – 10.0.2.1/24

LAN – 172.18.1.0/24

Per prima cosa definiamo sulla Mikrotik gli IP che utilizzeremo:

/ip address
add address=172.18.1.1/24 network=172.18.1.0 broadcast=172.18.1.255 interface=eth5
add address=10.0.1.1/24 network=10.0.1.0 broadcast=10.0.1.255 interface=eth1
add address=10.0.2.1/24 network=10.0.2.0 broadcast=10.0.2.255 interface=eth2

Fatto questo bisogna andare a definire le regole mangle per “manipolare” i pacchetti:

/ip firewall mangle
add chain=input in-interface=eth1 action=mark-connection new-connection-mark=WAN1_conn
add chain=input in-interface=eth2 action=mark-connection new-connection-mark=WAN2_conn
add chain=output connection-mark=WAN1_conn action=mark-routing new-routing-mark=to_WAN1
add chain=output connection-mark=WAN2_conn action=mark-routing new-routing-mark=to_WAN2
add chain=prerouting dst-address=10.0.1.0/24 action=accept in-interface=eth1
add chain=prerouting dst-address=10.0.2.0/24 action=accept in-interface=eth2
add chain=prerouting dst-address-type=!local in-interface=eth5 per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=WAN1_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=eth5 per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=WAN2_conn passthrough=yes
add chain=prerouting connection-mark=WAN1_conn in-interface=eth5 action=mark-routing new-routing-mark=to_WAN1
add chain=prerouting connection-mark=WAN2_conn in-interface=eth5 action=mark-routing new-routing-mark=to_WAN2

Definite le regole mangle si posso creare le rotte statiche:

/ip route
add dst-address=0.0.0.0/0 gateway=10.0.1.1 routing-mark=to_WAN1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.0.2.1 routing-mark=to_WAN2 check-gateway=ping

Concludiamo con il masquerade per permettere la navigazione:

/ip firewall nat
add chain=srcnat out-interface=eth1 action=masquerade
add chain=srcnat out-interface=eth2 action=masquerade

Finito! Facendo uno speedtest da uno dei pc della rete interna vedremo il traffico aggregato delle due ADSL!

2 – Modalità basata sulle interfacce

Lo scenario è pressocchè identico a quello di sopra solo che questa volta non abbiamo gli IP statici per le connessioni WAN ma sarà la Mikrotik ad iniziare due connessioni PPPoE e il Load Balancing sarà fatto tra queste due. L’ip della LAN manterremo lo stesso.

/ip address
add address=172.18.1.0/24 network=172.18.1.0 broadcast=172.18.1.255 interface=eth5

Aggiungiamo le connessioni PPPoE:

/interface pppoe-client
add allow=pap,chap disabled=no interface=ether1 max-mru=1480 max-mtu=1480 mrru=1600 name=pppoe-wan1 password=password1 user=provider1
add allow=pap,chap disabled=no interface=ether2 max-mru=1480 max-mtu=1480 mrru=1600 name=pppoe-wan2 password=password2 user=provider2

Proseguiamo con le regole mangle:

/ip firewall mangle
add chain=input in-interface=pppoe-wan1 action=mark-connection new-connection-mark=WAN1_conn
add chain=input in-interface=pppoe-wan2 action=mark-connection new-connection-mark=WAN2_conn
add chain=output connection-mark=WAN1_conn action=mark-routing new-routing-mark=to_WAN1
add chain=output connection-mark=WAN2_conn action=mark-routing new-routing-mark=to_WAN2
add chain=prerouting dst-address-type=!local in-interface=eth5 per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=WAN1_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=eth5 per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=WAN2_conn passthrough=yes
add chain=prerouting connection-mark=WAN1_conn in-interface=eth5 action=mark-routing new-routing-mark=to_WAN1
add chain=prerouting connection-mark=WAN2_conn in-interface=eth5 action=mark-routing new-routing-mark=to_WAN2

Concludiamo con Routing e Masquerade:

/ip route
add dst-address=0.0.0.0/0 gateway=pppoe-wan1 routing-mark=to_WAN1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=pppoe-wan2 routing-mark=to_WAN2 check-gateway=ping
/ip firewall nat
add chain=srcnat out-interface=pppoe-wan1 action=masquerade
add chain=srcnat out-interface=pppoe-wan2 action=masquerade

Enjoy!

Info Paolo Daniele

Ingegnere delle Telecomunicazioni, appassionato di informatica fin da piccolo ho trasformato la passione in lavoro. Con il PHP faccio tutto (o quasi...) ma non disprezzo altri linguaggi all'occorrenza. Se vi piace il mio sito, o vi è utile, o vi sto simpatico, offritemi una birra!

Ti potrebbe interessare

Mikrotik VLAN e Switch

Ciao Ragazzi, ritorno a scrivere dopo qualche tempo per parlarvi della “nuova” gestione delle VLAN …

59 Commenti

  1. Ciao …

    ho effettuato l’implementazione secondo il modello 1 del tuo splendido articolo…

    Collaudato e funziona alla grandissima…

    Una domanda…

    La funzionalità di Load Balancing include automaticamente anche il FAILOVER di una delle due connessioni Internet ?

    In caso contrario è possibile implementare uno script per poterlo fare ?

    Grazie mille..

    • Paolo Daniele

      Ciao Paolo, si la funzionalità di Failover in questo caso è integrata nel Load Balancing 🙂

  2. Ciao, mi interessa molto questo articolo ma vorrei capire meglio se posso adattare la configurazione 1 alla mia configurazione utilizzando una RB960PGS al posto dell’attuale router dual WAN che mi gestisce solo il faillover.

    ti illustro la mia situazione

    LINKEM – IP LAN 192.168.20.254 con inoltro di tutto sull’ip DMZ 192.168.20.1
    ALTRO – IP LAN 192.168.10.254 con inoltro di tutto sull’ip DMZ 192.168.10.1

    Router TP-LINK Dual WAN configurato come NAT

    IP WAN1 192.168.20.1 con GW 192.168.20.254
    IP WAN2 192.168.10.1 con GW 192.168.10.254
    IP LAN 192.168.201.1 che poi utilizzo come GW su PC ecc..

    Grazie.

    • Paolo Daniele

      Ciao Ivano,
      scusami il ritardo nella risposta, devi provare! Purtroppo nessuno come sa cosa c’è dietro la tua rete.
      A livello teorico non c’è nessun problema, ma devi verificare che non ci siano problemi con il resto dei servizi.
      Se hai bisogno chiedi pure.

  3. Ciao Paolo,
    una domanda ma il load balance come viene effettuato?
    Nel senso i pacchetti relativi ad una stessa connessione TCP/UDP sono smistati sulle due interfacce WAN in modalità Round Robin, o i pacchetti di una singola connessione seguirannocomunque la stessa rotta?
    Grazie mille

  4. Ciao Paolo,
    bellissima guida e perfettamente funzionante con le 2 wan.
    Ho però un “piccolo” problema: utilizzo la eht3 come ponte fra 2 reti LAN (ho un ponte radio), e quando attivo la nuova configurazione, il punte non funziona più. Posso usare la eth3 (UPLINK) come fosse una terza “opzione” e rimodellare la config in modo che includa anche l’UPLINK (utilizzerei come classificatori 3/0, 3/1, 3/2) ?
    Spero di esser stato abbastanza chiaro 🙂
    Grazie mille e a presto!
    Marco

    • Paolo Daniele

      Ciao Marco,
      ma la eth3 come è configurata? Hai solo le 2 WAN e poi la eth3? perchè altrimenti dovrebbe andare senza problemi. E’ in qualche bridge particolare con una classe IP diversa?

  5. Ciao Paolo,
    puoi fornirmi uno spunto per adattare al meglio la configurazione ad una situazione in cui ho LAN1 (bridge1) WAN1 (PPPoE1) e LAN2 (bridge2) WAN2 (PPPoE2) distinte (quindi niente load-balancing)?
    Grazie!
    Walter

  6. Ottima guida, funziona perfettamente. Mi rimane un piccolo problema da risolvere il Port foerwarding verso un IP specifico interno. Puntando ad una sola wan(IP pubblico) non riesco a fare in maniera che questa macchina all’i terno risponda in maniera costante. Mi spiego meglio ogni tanto va ogni tanto no. Credo devo trovare il modo di escluderla dal pcc a livello IP. Come posso fare? Grazie in anticipo

    • Paolo Daniele

      Potresti provare con una regola che forza l’ip sorgente ad uscire sempre dalla stessa connessione. Oppure con dei mangle.

  7. Ciao Bellissima guida! Vorrei esporti il mio problema:
    Ho una connessione 50M/3M WADSL di Micso che funziona bene solo se si aprono connessioni multiple verso i server esterni. Mi spiego meglio: se provo a scaricare una distro di ubuntu mediante un download accelerator aprendo una sola connessione la velocità massima che raggiunge la linea è intorno ai 15M, mentre se provo ad effettuare il download aprendo 4/8 connessioni la velocità arriva tranquillamente a 40/50M. Stessa cosa accade per tutto il traffico in entrata, tranne il traffico streaming che sembra già essere ottimizzato.

    Avendo io a disposizione un hAP Lite come posso (se posso) adattare la tua guida per splittare le connessioni verso il gateway (antenna) di Micso? Posso configurare le due WAN in modo che puntino allo stesso gateway?

    • Paolo Daniele

      Ciao Claudio, il problema in realtà è quello per cui sono nati i download accelerator ovvero lo split dei file in maniera da scaricare un pezzo qua e un pezzo là.
      Ovviamente non si può fare con tutto e non è qualcosa che dipende dalla connessione o dall’aggregazione. Se tu vuoi fare due WAN sulla stessa antenna non risolvi comunque per quando richiedi un file nella classica modalità client-server, questo non verrà splittato sulle connessioni come avviene con lo streaming!
      Spero di non essere stato troppo complicato!
      A presto

  8. ottimo e chiaro
    ma ti chiedo del caso si debba mettere la wan 2 come bk con connessione lte ques’ultima si puo attivare solo in caso di mancata connessione della wan 1? e puo generare un email per per segnalare il problema ? in oltre ( e qui andiamo sul complicato potrei fere un calendario dove la wan 2 si attiva per 2 giga solo in alcuni giorni del mese?

    • Paolo Daniele

      si può fare tutto ma per la seconda parte ti serve scrivere qualcosa su un web server esterno. Mi spiego meglio, per la prima parte non ci sono problemi, ma in realtà non aggreghi, vai in failover (se giri nel sito c’è la guida). Nel secondo caso, puoi fare in modo di utilizzare un webserver esterno, magari con php che si collega alla mikrotik e gli passa i comandi facendo i calcoli che ti servono.
      Usando le librerie php-mikrotik (anche se io preferisco le generiche SSH) puoi far fare alla mikrotik quello che vuoi, quando vuoi però ovviamente non puoi fare tutto da dentro la mikrotik!

  9. Ciao Paolo guida chiara e utilissima.
    Ho una domanda (non ho visto se hai trattato la cosa su un altro articolo ma sarebbe molto utile per molti): se volessi non avere il balancing ma semplicemente gestire il failower sulla wan2 come potrei fare?
    Quindi wan1 + wan2 ma il traffico viene dirottato alla wan2 solo in caso la wan1 non risponda.
    Ti ringrazio

    • Paolo Daniele

      Ciao Simone,
      puoi trovare la guida per il failover qua:
      https://www.paolodaniele.it/mikrotik-scripting-evitare-cadute-asterisk-causate-failover/

      E’ un po’ datata ma sostanzialmente fai un paio di script, che girano schedulati.
      Devi definire una rotta statica specificando un ip a tua scelta e forzandolo ad uscire dalla connessione primaria. Il primo script fa un check ping verso l’ip indicato, se perde pacchetti vuol dire che manca internet e disattiva la rotta primaria per permettere la secondaria. Il secondo script fa un silent check sulla rotta primaria, quando ritorna up, cambia la metrica distance e quindi la rimette come primaria. A presto!

  10. Ciao Paolo, la guida è fantastica e molto utile, proprio quello che cercavo.
    Volevo chiederti, è possibile fare un misto delle 2 casistiche? ovvero io ho una connessione in PPoE e una attraverso un router/modem.
    Che regole devo adottare?

    Grazie,
    Daniele

    • Paolo Daniele

      Ciao Daniele,
      riguardo la tua domanda io direi che potresti provare, anche se non l’ho mai fatto, su qesta falsariga:

      /ip route
      add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=pppoe-out1 routing-mark=to_pppo-out1 scope=30 target-scope=10
      add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=WAN2 routing-mark=to_wan2 scope=30 target-scope=10
      add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=pppoe-out1 scope=30 target-scope=10
      add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=WAN2 scope=30 target-scope=10

      A presto!

  11. Ciao Paolo,
    Ottima guida, se stai a Roma ti porto la birra, dimmi solo quale preferisci…
    Ho anche io alcune domande.
    Vorrei sapere se si possono unire due linee come descritto nell’articolo ma con router Mikrotik senza router e modem dei gestori. Ti spiego meglio… ho una linea FTTH TIM e la seconda in arrivò, vorrei unirle con gli sfp che rilascia Tim e gestire entrambe le linee con Mikrotik unendo la velocità delle due linee e se una delle due va giù resta l’altra. Ora sto con un Mikrotik CRS106-5S se non ricordo male ma da 1000 mega tira fuori 20 mega so che non va bene infatti lo devo cambiare con un’altro e poi di dico quale perché non ricordo la sigla. Grazie per la risposta, fammi sapere per la birra…

    • Paolo Daniele

      Ciao Max, ma TIM ti fa fare PPPoE oppure ti danno ip statico sulla terminazione?
      Se hai ip statico puoi seguire tranquillamente la guida solo che invece delle eth usi le sfp.
      Verifica il tipo di fibra (multi-modo o mono-modo) che ti danno e prendi gli sfp adeguati altrimenti non funziona!!
      Per la birra appena risalgo a Roma ci sentiamo!
      P.

  12. Ciao Paolo,
    grazie mille per la guida davvero utile.
    Volevo chiederti una info: con PCC , da quello che ho capito, i pacchetti di una stessa connessione TCP/UDP seguono la stessa rotta. Questo significa che facendo ad es. load balancing di 2 wan da 10Mbps l’una avrò come banda massima per connessione 10Mbps e non 20Mps? Mi spiego meglio, se scarico un file da un pc questo sarà scaricato a massimo 10Mbps o a 20Mbps?

    Grazie mille

    • Paolo Daniele

      Ciao,
      in realtà non seguono la stessa rotta perchè se fai uno speedtest (tcp) ti risulterà 20Mbps e non 10
      Fargli seguire la stessa rotta è utile, e lo puoi forzare, se devi avere connessioni dove ad es. ci sono sessioni o connessioni voip dove in quel caso è importante mantenere lo stesso flusso.
      A presto!

      • Federic087

        Ciao, non ho capito:La stessa connessione segue sempre la stessa rotta (interfaccia di uscita) oppure no? perché a volte hai detto di si a volte di no. Secondo me no, altrimenti non avresti in uno speed test la somma delle bande. A meno che lo speedtest non attivi più tcp connections per ogni download. Altra domanda: con quale IP esco nel caso dello speedtest. ME ne riporta uno a caso poi però li usa tutti e due?…sono un po’ confuso…grazie.

      • Boris Genovese

        Ciao Paolo. complimenti per il sito. A tal proposito. Volendo forzare la rotta voip verso una sola wan, escludendola dal load balance Come si può fare? Attualmente utilizzo il load balance su du pppoe. Puoi farmi qualche esempio Grazie

        • Paolo Daniele

          Ciao!
          Puoi farlo tramite la definizione dei mangle sulle porte, taggando il pacchetto dal mangle e poi creando una rotta statica che i pacchetti con quel tag escono da una delle due 😉

          • Boris Genovese

            Grazie della risposta. Nello specifico ho più linee voip su un unico dispositivo. Alcune devono uscire con wan 1 altre con wan2. Ho provato con dei mangle inserendo dst address il server voip. Funziona ma non è stabilissimo. Cosa mi consigli ?
            Grazie infinite.

          • Paolo Daniele

            Ciao Boris, il problema è legato alla “delicatezza” del protocollo voip per cui è un comportamento che mi sarei aspettato. Tieni conto che dipende anche dal tipo di apparato che usi, a seconda del throughput che generi controlla la cpu che non vada oltre il 50-60% perchè già in quel caso Mikrotik va in sofferenza!
            P.

  13. Alessandro

    Ciao Paolo
    volevo ringraziarti per la tua ottima guida. Davvero chiara e semplice da applicare.
    Avrei solo una domanda.
    Ho provato ad applicare la tua guida alla mia rete che però è costituita da 2 LAN e 2 WAN entrambe con PPPOE.
    Prima di applicare le regole di routing le 2 LAN potevano comunicare tra di loro.
    Adesso invece le 2 LAN riescono ad accedere a internet usando entrambe le WAN ma non riescono a comunicare tra di loro.

    Questo è il modo in cui ho applicato il tuo codice al mio caso:

    /ip firewall mangle
    # LAN 1
    add chain=input in-interface=pppoe-1 action=mark-connection new-connection-mark=WAN1_conn
    add chain=input in-interface=pppoe-2 action=mark-connection new-connection-mark=WAN2_conn
    add chain=output connection-mark=WAN1_conn action=mark-routing new-routing-mark=to_WAN1
    add chain=output connection-mark=WAN2_conn action=mark-routing new-routing-mark=to_WAN2
    add chain=prerouting dst-address-type=!local in-interface=bridge_1 per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=WAN1_conn passthrough=yes
    add chain=prerouting dst-address-type=!local in-interface=bridge_1 per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=WAN2_conn passthrough=yes
    add chain=prerouting connection-mark=WAN1_conn in-interface=bridge_1 action=mark-routing new-routing-mark=to_WAN1
    add chain=prerouting connection-mark=WAN2_conn in-interface=bridge_1 action=mark-routing new-routing-mark=to_WAN2
    # LAN 2
    add chain=input in-interface=pppoe-1 action=mark-connection new-connection-mark=WAN3_conn
    add chain=input in-interface=pppoe-2 action=mark-connection new-connection-mark=WAN4_conn
    add chain=output connection-mark=WAN3_conn action=mark-routing new-routing-mark=to_WAN3
    add chain=output connection-mark=WAN4_conn action=mark-routing new-routing-mark=to_WAN4
    add chain=prerouting dst-address-type=!local in-interface=bridge_2 per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=WAN3_conn passthrough=yes
    add chain=prerouting dst-address-type=!local in-interface=bridge_2 per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=WAN4_conn passthrough=yes
    add chain=prerouting connection-mark=WAN3_conn in-interface=bridge_2 action=mark-routing new-routing-mark=to_WAN3
    add chain=prerouting connection-mark=WAN4_conn in-interface=bridge_2 action=mark-routing new-routing-mark=to_WAN4

    /ip route
    add dst-address=0.0.0.0/0 gateway=pppoe-1 routing-mark=to_WAN1 check-gateway=ping
    add dst-address=0.0.0.0/0 gateway=pppoe-2 routing-mark=to_WAN2 check-gateway=ping
    add dst-address=0.0.0.0/0 gateway=pppoe-1 routing-mark=to_WAN3 check-gateway=ping
    add dst-address=0.0.0.0/0 gateway=pppoe-2 routing-mark=to_WAN4 check-gateway=ping

    /ip firewall nat
    add chain=srcnat out-interface=pppoe-1 action=masquerade
    add chain=srcnat out-interface=pppoe-2 action=masquerade

    C’è qualcosa di sbagliato? Ho pensato che ci fosse qualche regola da aggiungere nelle routes ma non sono riuscito a risolvere il problema.

    • Paolo Daniele

      Ciao Alessandro, in realtà credo che il tuo problema sia dato dalla presenza dei routing mark che configurati per aggregare ipotizzano un unico grande bocchettone da cui passa tutto il traffico. Potresti provare ad aggiustare i routing mark in maniera da fare rotte statiche per permettere la visualizzazione tra le lan, oppure provare lato fw -> filter ad aggiungere un Accept per le connessione che hanno come source LAN1 e dest LAN2 e viceversa.
      Fammi sapere!

  14. Ciao , ho seguito la tua guida per aggregare 2 pppoe e funziona alla grande , ora sono passato ad una terza connessione pppoe , quindi ne devo aggregare 3 , cosa devo modificare per farle andare o cosa devo aggiungere?

    • Paolo Daniele

      Ciao, devi semplicemente estendere i blocchi alla terza connessione.
      Come hai fatto per le due, adesso aggiungi la terza facendo riferimento all’interfaccia dove l’hai collegata e quindi al pppoe.
      A presto,
      P.

  15. Ciao Paolo,
    un bellissimo Blog, i miei complimenti!

    Posso chiederti di sentirci vi e-mail o alternativa privata?
    Ho necessità di confrontarmi con un altro professionista del settore per alcune configurazioni su MikroTik & Co.

    Grazie.
    Manuele

  16. Grazie di aver condiviso questa configurazione. Funziona alla grande

  17. Buongiorno Paolo,
    grazie e complimenti per la guida.
    non sono molto esperto su questo argomento.

    Ho una domanda in generale sul load balancing: esso permette di instradare i pacchetti dinamicamente in base alla disponibilità di banda. Può esserci il pericolo che a causa di ciò i programmi (ad es un gioco) non funzionino correttamente?
    Qualunque sia la risposta, non pretendo una spiegazione che (cmq sarebbe apprezzata) , ti chiedo di indicarmi del materiale in rete .
    Grazie

    • Paolo Daniele

      Ciao Roberto, il “pericolo” c’è e riguarda proprio quello che dici tu.
      Teoricamente quando si instaura una sessione TCP la sessione segue sempre lo stesso percorso, ma praticamente il comportamento è vario (e così rispondo anche a chi prima di te mi chiedeva questo)
      Infatti la mia è solo una configurazione di test. In produzione non uso queste config, ma preferisco il failover: ormai siamo arrivati a velocità di fibre, lte tali da non necessitare più questo tipo di config.
      A presto!
      P

      • Alessandro

        Buongiorno Paolo
        Preferirei anch’io una configurazione in failover, ma possibilmente con la possibilità di impostare la principale e quella in failover da GUI, in modo da invertirle rapidamente all’occorrenza. Avrebbe un suggerimento da darmi in merito?
        Grazie
        Alessandro

        • Paolo Daniele

          Ciao Alessandro,
          si puoi farlo tranquillamente da GUI impostando due route verso 0.0.0.0/0 con gw diversi e metriche diverse. Così ti basta semplicemente disattivare da GUI quella che vuoi mandare giù e andrai con l’altra (anche se generalmente queste cose le faccio con i netwatch o con degli script manuali)
          P.

    • Salve,
      sono molto interessato all’articolo.
      sarebbe possibile avere un ip pubblico diverso dai 2 forniti dalle Wan in modo da esporre servizi senza preoccuparsi di quale delle due sta funzionando?
      grazie

  18. Ciao,
    io ho la seguente situazione

    fastweb fttc
    eolo fwa

    per fastweb utilizzo un fritz con macaddress clonato dal fastgate
    per eolo posso utilizzare una connessione pppoe diretta

    quindi ho due domande

    1. è possibile modificare il maccaddress della lan-wan-fastweb in modo che possa effettuare il pppoe direttamente con il micro ?

    2. se la 1 non è fattibile, è possibile aggregare la wan pppoe di eolo + il fritz in lan di fastweb?

    grazie mille!

    • Paolo Daniele

      Ciao Fabio,
      sono valide entrambe le soluzioni.
      Su Mikrotik puoi facilmente “sostituire” il mac-address della LAN nelle impostazioni dell’interfaccia.
      E puoi fare il PCC anche tra LAN e WAN, ma generalmente preferisco o solo PPP o solo LAN non mixo le cose.
      A presto,
      P.

  19. Salvatore

    Ciao Paolo, complimenti per la guida è veramente fatta bene, non sono molto esperto su questo argomento e quindi volevo chiederti un consiglio, possiedo una rb mikrotik modello CRS112-8G-4S,vorrei collegare sulla eth1 una connessione internet da 30MB e sulla eth2 un altra connessione da 20mb di un gestore differente dalla prima, entrambi i router forniti dai due differenti gestori mi rilasciano tramite dhcp degli indirizi locali che mi permettono di navigare(il primo indirizzi del tipo 192.68.0.xxx, il secondo del tipo 192.168.1.xxx ti chiedevo se potevo usare il tuo script sopra descritto, Grazie anticipatamente per la tua risposta

    • Paolo Daniele

      Ciao!
      Certo, basta che sostituisci i tuoi ip a quelli che ho usato io 10.0.1.1 e 10.0.2.1

  20. Pesucci Fabio

    Ciao Paolo
    Scusa la domanda forse banale, definendo add address=172.18.1.0/24 network=172.18.1.0 broadcast=172.18.1.255 interface=eth5 , quale gateway devo configurare nei PC della LAN?

    • Paolo Daniele

      Ciao,
      grazie per la segnalazione! C’era un evidente errore di copia/incolla nella regola. address=172.18.1.1/24
      Ho già corretto lo script.
      Grazie e a presto!

      • Pesucci Fabio

        Avevo fatto anche io la stessa modifica e infatti navigavo..
        Grazie per il tuoi tutorial, sono veramente utilissimi.

  21. caio paolo, sono capitato per caso sul tuo blog perchè alla ricerca di un router ideale per fare l.b. su una rete aziendale con due wan fornite da 2 ISP differenti. La microtik mi è sempre sembrata una ottima casa per rapporto costi benefici ma non sempre immediata nelle configurazione. vorrei sapere, se puoi, se consigli per il semplice Routing (magari con possibilità di abilitare le vlan trunkundo le porte in futuro) e per load balancing (perchè no failover) un apparato tipo il Mikrotik – hEX S o qualcosa di più esoso (tipo cisco ad es.) grazie e complimenti per il blog

    • Paolo Daniele

      Ciao Emilio,
      Mikrotik è ottima come azienda, ma come ogni cosa, quanto la paghi vale!
      Dipende da quanto traffico “pensante” devi gestire, ovvero se deve fare routing + lb + pcc + etc. etc. la hex non va bene.
      Devi andare almeno su una 3011 o una 4011.
      Sulla 4011 riesce a gestire tranquillamente 400-500MB di traffico per porta anche se dicono porte giga, se ci metti routing, vlan, pcc e altro la cpu sale e quando sale troppo il throughput ne viene penalizzato.
      Per fare quello che ti serve direi o 3011 o 4011.
      A presto,
      P.

  22. Ciao,
    grazie per l’articolo veramente molto interessante.
    Possiedo il router Chateau LTE12 e volevo chiedere se è possibile fare load balancing con questo router aggregando l’interfaccia LTE interna del router e una wan esterna?
    In caso positivo che differenze ci sono rispetto agli script che hai postato?
    Grazie

    • Paolo Daniele

      Ciao Massimo,
      la configurazione dovrebbe più o meno essere uguale, solo che invece di usare le eth devi usare eth e lte come interfacce esterne.
      P.

  23. Buonasera Paolo,
    la guida funziona correttamente ed in navigazione è veramente molto più veloce aggregando le connettività.
    il mio problema si presenta se la linea Vdsl va in failover, e vado sul router 4G i servizi della centrale Voip e dei telefoni vanno fuori servizio. Come posso configurare solamente se va giù la Vdsl, entrare in totale backup con il 4G? grazie, ottima guida e ottimo forum

    • Paolo Daniele

      Buongiorno Giampaolo,
      il problema è legato alle connessioni voip che rimangono appese sulla Mikrotik.
      Bisogna droppare quelle connessioni e farle risalire quando va in 4G.
      Si può fare con un facile script integrato su un netwatch.
      P.

  24. Buonasera Paolo, ho una perplessità da sottoporti. Lo script che hai fatto va benissimo, su eth1 e eth2 abbiamo le “entrate” e su eth5 l’uscita fisica.
    Ma se volessi utilizzare una uscita virtuale così da utilizzarla all’interno della stessa macchina come ingresso per altri servizi, ad esempio la gestione di connessioni PPPoE o Hotspot? Sarebbe possibile?
    Come possibile soluzione pensavo di utilizzare la eth3 come ingresso e la eth4 come uscita, facendo un ponte tra la eth3 e la eth5 ma mi sembra una soluzione sporca.
    Spero di essermi spiegato correttamente.

    P.S. Ti ho fatto la richiesta di amicizia su facebook!

    • Paolo Daniele

      Buongiorno Bruno,
      la soluzione è davvero sporca!!! Ma spesso può essere efficace. Tieni sotto controllo la CPU Mikrotik per evitare che venga stressata dal troppo “pensare” (dipende sempre da che apparato hai sotto)
      A parte tutto, se possibile cercherei di differenziare e farlo su macchina diversa, la versatilità di mikrotik non va abusata perchè poi lo stesso apparato genera problemi!
      P.

  25. Fabio Pesucci

    Ciao Daniele
    Ho configurato così la mia rete
    WAN1 192.168.2.65/24 con gateway 192.168.2.1 su ether1
    WAN2 198.166.178.2/24 con gateway 192.168.178.1 su ether2
    ether5 192.168.0.1
    dhcp 192.168.0.0/24 su ether5 gateway 192.168.0.1

    Vorrei aggiungere una subnet 192.168.1.0/24 su ether3 oppure su ether4 , purtroppo a questo punto mi sono arenato, ti allego lo script completo, prima dell’aggiunta della suddetta subnet, hai un suggerimento?

    /interface list
    add name=WAN
    add name=LAN
    /interface wireless security-profiles
    set [ find default=yes ] supplicant-identity=MikroTik
    add authentication-types=wpa-psk,wpa2-psk,wpa-eap,wpa2-eap eap-methods=”” \
    mode=dynamic-keys name=cazzi static-algo-0=tkip static-key-0=ca551amar1 \
    supplicant-identity=”” wpa-pre-shared-key=ca551amar1 wpa2-pre-shared-key=\
    ca551amar1
    /interface wireless
    set [ find default-name=wlan1 ] country=italy disabled=no mode=ap-bridge \
    security-profile=cazzi ssid=Logan2 wireless-protocol=802.11
    set [ find default-name=wlan2 ] country=italy disabled=no mode=ap-bridge \
    security-profile=cazzi ssid=Logan5 wireless-protocol=802.11
    /ip pool
    add name=dhcp_pool1 ranges=192.168.0.2-192.168.0.254
    add name=dhcp ranges=192.168.178.3-192.168.178.254
    /ip dhcp-server
    add address-pool=dhcp_pool1 disabled=no interface=ether5 name=dhcp1
    add address-pool=dhcp disabled=no interface=ether2 name=dhcp2
    /ip neighbor discovery-settings
    set discover-interface-list=!dynamic
    /interface list member
    add interface=ether1 list=WAN
    add list=LAN
    /ip address
    add address=192.168.0.1/24 interface=ether5 network=192.168.0.0
    add address=192.168.178.2/24 interface=ether2 network=192.168.178.0
    add address=192.168.2.65/24 interface=ether1 network=192.168.2.0
    add address=192.168.1.1 interface=ether5 network=192.168.1.1
    /ip dhcp-server network
    add address=192.168.0.0/24 gateway=192.168.0.1
    add address=192.168.178.0/24 gateway=192.168.178.2 netmask=24
    /ip dns
    set allow-remote-requests=yes cache-size=5000KiB max-udp-packet-size=512 \
    servers=221.132.112.8,8.8.8.8,192.168.2.1
    /ip firewall mangle
    add action=mark-connection chain=input in-interface=ether2 \
    new-connection-mark=ether2_conn
    add action=mark-connection chain=input in-interface=ether1 \
    new-connection-mark=ether1_conn
    add action=mark-routing chain=output connection-mark=ether2_conn \
    new-routing-mark=to_ether2
    add action=mark-routing chain=output connection-mark=ether1_conn \
    new-routing-mark=to_ether1
    add action=accept chain=prerouting dst-address=192.168.178.0/24 in-interface=\
    ether5
    add action=accept chain=prerouting dst-address=192.168.2.0/24 in-interface=\
    ether5
    add action=mark-routing chain=prerouting connection-mark=ether2_conn \
    in-interface=ether5 new-routing-mark=to_ether2
    add action=mark-routing chain=prerouting connection-mark=ether1_conn \
    in-interface=ether5 new-routing-mark=to_ether1
    add action=mark-connection chain=input in-interface=ether2 \
    new-connection-mark=ether2_conn
    add action=mark-connection chain=input in-interface=ether1 \
    new-connection-mark=ether1_conn
    add action=mark-routing chain=output connection-mark=ether2_conn \
    new-routing-mark=to_ether2
    add action=mark-routing chain=output connection-mark=ether1_conn \
    new-routing-mark=to_ether1
    add action=accept chain=prerouting dst-address=192.168.178.0/24 in-interface=\
    ether5
    add action=accept chain=prerouting dst-address=192.168.2.0/24 in-interface=\
    ether5
    add action=mark-routing chain=prerouting connection-mark=ether2_conn \
    in-interface=ether5 new-routing-mark=to_ether2
    add action=mark-routing chain=prerouting connection-mark=ether1_conn \
    in-interface=ether5 new-routing-mark=to_ether1
    add action=mark-routing chain=prerouting connection-mark=ether2_conn \
    in-interface=ether5 new-routing-mark=to_ether2
    add action=mark-routing chain=prerouting connection-mark=ether1_conn \
    in-interface=ether5 new-routing-mark=to_ether1
    add action=mark-connection chain=input in-interface=ether2 \
    new-connection-mark=ether2_conn
    add action=mark-connection chain=input in-interface=ether1 \
    new-connection-mark=ether1_conn
    add action=mark-routing chain=output connection-mark=ether2_conn \
    new-routing-mark=to_ether2
    add action=mark-routing chain=output connection-mark=ether1_conn \
    new-routing-mark=to_ether1
    add action=accept chain=prerouting dst-address=192.168.178.0/24 in-interface=\
    ether5
    add action=accept chain=prerouting dst-address=192.168.2.0/24 in-interface=\
    ether5
    add action=mark-connection chain=prerouting dst-address-type=!local \
    in-interface=ether5 new-connection-mark=ether2_conn passthrough=yes \
    per-connection-classifier=both-addresses-and-ports:2/0
    add action=mark-connection chain=prerouting dst-address-type=!local \
    in-interface=ether5 new-connection-mark=ether1_conn passthrough=yes \
    per-connection-classifier=both-addresses-and-ports:2/1
    add action=mark-routing chain=prerouting connection-mark=ether2_conn \
    in-interface=ether5 new-routing-mark=to_ether2
    add action=mark-routing chain=prerouting connection-mark=ether1_conn \
    in-interface=ether5 new-routing-mark=to_ether1
    /ip firewall nat
    add action=masquerade chain=srcnat out-interface=ether2
    add action=masquerade chain=srcnat out-interface-list=WAN
    /ip route
    add check-gateway=ping distance=1 gateway=192.168.2.1 routing-mark=to_ether2
    add check-gateway=ping distance=1 gateway=192.168.2.1 routing-mark=to_ether1
    add check-gateway=ping distance=1 gateway=192.168.178.1
    add check-gateway=ping distance=2 gateway=192.168.2.1
    /system clock
    set time-zone-name=Europe/Rome

    Spero tu possa dedicare un po’ di tempo al problema

    • Paolo Daniele

      Ciao,
      purtroppo non ho molto tempo per poter testare e provare la tua config al momento.
      Quello che ricordo (perchè è una configurazione fatta per una esigenza che poi non ho più avuto) è che non potevi farlo con più subnet, ma solo con una sola di destinazione. Magari qualcun altro che bazzica qua può farti qualche consiglio! A presto!

  26. Buonasera Daniele, ho trovato la tua guida cercando come sfruttare meglio il mio mikrotik hac2 avendo una connessione vdsl Fastweb ed un router Zyxel 4G. Ho provato a modificare la tua configurazione mettendo “bridge” al posto di eth5 perchè da ignorante pensavo che così l’aggregazione mi funzionasse su tutte le porte (escluse ovviamente le wan eth1 ed eth2) ed anche in Wifi. Ma dai test fatti dal mio notebook vedo che esco sempre con Fastweb e la velocià di connessione è conforme a Fastweb. Ho quindi provato il failover staccando Fastweb da eth1 ma a quel punto non naviga proprio più! Inoltre nella parte di aggiunta delle route statiche ho visto che la regola nella voce gateway (add dst-address=0.0.0.0/0 gateway=10.0.1.1) ha lo stesso IP che viene assegnato all’iterfaccia eth. Perdonami le domande sciocche ma Mikrotik è affascinante quanto complesso per un novizio. Grazie, Fabrizio

    • Paolo Daniele

      Ciao Fabrizio,
      purtroppo non è così. non ho ben chiaro cosa tu voglia realizzare, ma se tu fai un bridge sulle porte 3-4-5 con ip interno là ti funziona sicuro. La parte di Failover lasciala gestire alle eth dirette o al massimo ad un pppoe.
      A presto,
      P.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *