Ρύθμιση Mikrotik ως 2 WAN Load Balancing με Fail Over – PCC Method
Στο άρθρο αυτό θα μιλήσουμε για την ρύθμιση ενός Mikrotik έτσι ώστε να χρησιμοποιεί 2 θύρες WAN (2 ξεχωριστές γραμμές internet) με failover, με την μέθοδο PCC.
Θεωρούμε ότι η πρώτη θύρα θα χρησιμοποιηθεί ως LAN Interface και οι δύο επόμενες ως WAN interfaces.
Για να κάνουμε τις ρυθμίσεις στο router συνδέουμε το ehternet καλώδιο του δικτύου μας στην τέταρτη θύρα (ή αν αυτό δεν είναι δυνατό, στην πρώτη) και αφήνουμε προς το παρόν ελεύθερες τις δύο WAN (την δεύτερη και την τρίτη θύρα).
Ανοίγουμε το Winbox (είναι το πρόγραμμα με το οποίο μπορούμε να ρυθμίσουμε ένα Mikrotik router), βρίσκουμε το Mikrotik router στην λίστα, το επιλέγουμε πατώντας κλικ πάνω στην MAC Address και πατάμε το κουμπί Connect.
Πρώτα θα δώσουμε ονόματα στις θύρες για να είναι πιο εύκολο να τις χρησιμοποιούμε στις ρυθμίσεις. Πηγαίνουμε στο menu αριστερά και επιλέγουμε Interfaces. Στο παράθυρο που ανοίγει πατάμε διπλό κλικ πάνω στην ether1. Στο νέο παράθυρο, στο πεδίο Name, πληκτρολογούμε “WAN1”. Πατάμε το κουμπί “OK”.
Πατάμε διπλό κλικ πάνω στο ether2 και στο Name πληκτρολογούμε “WAN2”. Μετά πατάμε το κουμπί “OK”.
Πατάμε διπλό κλικ πάνω στο ether3 και στο Name πληκτρολογούμε “LAN”. Πατάμε το κουμπί “OK”.
Στο τέλος η λίστα με τα Interfaces πρέπει να δείχνει κάπως έτσι.
Τώρα πρέπει να ορίσουμε τις IP διευθύνσεις που θα έχουν οι θύρες. Η κάθε θύρα WAN πρέπει να βρίσκεται στο ίδιο subnet με αυτό που βρίσκεται και η συσκευή που από την οποία παίρνει internet. Στο παράδειγμά μας θεωρούμε ότι η πρώτη συσκευή που δίνει internet βρίσκεται στην IP διεύθυνση “10.0.0.1” και η δεύτερη συσκευή βρίσκεται στην διεύθυνση “192.168.89.1”. Θα δώσουμε στην WAN1 την διεύθυνση “10.0.0.2” και στην WAN2 την διεύθυνση “192.168.89.254”. Σαν διεύθυνση της θύρας LAN θα χρησιμοποιήσουμε την “192.168.1.1”. Εσείς πρέπει να αλλάξετε αυτές τις διευθύνσεις έτσι ώστε να καλύπτουν τις προδιαγραφές του δικού σας δικτύου.
Στο menu αριστερά επιλέγουμε IP και μετά Addresses. Στο παράθυρο που ανοίγει πατάμε το κουμπί “+”. Στο νέο παράθυρο, στο πεδίο Address καταχωρούμε την διεύθυνση που θέλουμε να έχει η πρώτη WAN θύρα ακολουθούμενη από το “/24” και στο πεδίο Interface επιλέγουμε την πρώτη θύρα WAN. Πατάμε το κουμπί “OK”.
Επαναλαμβάνουμε την διαδικασία για την δεύτερη WAN θύρα.
Με τον ίδιο τρόπο ορίζουμε και την διεύθυνση της LAN θύρας.
Οι διευθύνσεις που δώσαμε στις θύρες πρέπει να φαίνονται έτσι:
Τώρα θα ξεκινήσουμε τις ρυθμίσεις για το load balancing.
Στο menu αριστερά επιλέγουμε IP και μετά Firewall. Στο παράθυρο που ανοίγει πηγαίνουμε στην σελίδα Mangle και πατάμε το κουμπί “+”. Στο νέο παράθυρο, στο πεδίο Chain επιλέγουμε input. Στο πεδίο In. Interface επιλέγουμε WAN1.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark connection. Στο πεδίο New Connection Mark καταχωρούμε “WAN1_conn”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε input. Στο πεδίο In. Interface επιλέγουμε WAN2.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark connection. Στο πεδίο New Connection Mark καταχωρούμε “WAN2_conn”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε output. Στο πεδίο Connection Mark επιλέγουμε WAN1_conn.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark routing. Στο πεδίο New Connection Mark καταχωρούμε “to_WAN1”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε output. Στο πεδίο Connection Mark επιλέγουμε WAN2_conn.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark routing. Στο πεδίο New Connection Mark καταχωρούμε “to_WAN2”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο Dst. Address καταχωρούμε το subnet της πρώτης θύρας WAN πχ “10.0.0.0/24”. Στο πεδίο In. Interface επιλέγουμε LAN.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε accept. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο Dst. Address καταχωρούμε το subnet της δεύτερης θύρας WAN πχ “192.168.89.0/24”. Στο πεδίο In. Interface επιλέγουμε LAN.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε accept. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο In. Interface επιλέγουμε LAN.
Πηγαίνουμε στην σελίδα Advanced και στο πεδίο Per Connection Classifier επιλέγουμε both addresses and ports : 2/0.
Πηγαίνουμε στην σελίδα Extra πατάμε το βελάκι στο πεδίο Dst Address Type, στο πεδίο Address Type επιλέγουμε local, και το πεδίο Invert πρέπει να είναι επιλεγμένο.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark connection. Στο πεδίο New Connection Mark καταχωρούμε “WAN1_conn”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο In. Interface επιλέγουμε LAN.
Πηγαίνουμε στην σελίδα Advanced και στο πεδίο Per Connection Classifier επιλέγουμε both addresses and ports : 2/1.
Πηγαίνουμε στην σελίδα Extra πατάμε το βελάκι στο πεδίο Dst Address Type, στο πεδίο Address Type επιλέγουμε local, και το πεδίο Invert πρέπει να είναι επιλεγμένο.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark connection. Στο πεδίο New Connection Mark καταχωρούμε “WAN1_conn”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο In. Interface επιλέγουμε LAN. Στο πεδίο Connection Mark επιλέγουμε WAN1_conn.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark routing. Στο πεδίο New Routing Mark καταχωρούμε “to_WAN1”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Πατάμε πάλι το κουμπί “+”. Στην σελίδα General, στο πεδίο Chain επιλέγουμε prerouting. Στο πεδίο In. Interface επιλέγουμε LAN. Στο πεδίο Connection Mark επιλέγουμε WAN2_conn.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε mark routing. Στο πεδίο New Routing Mark καταχωρούμε “to_WAN2”. Το πεδίο Passthrough πρέπει να είναι επιλεγμένο. Πατάμε το κουμπί “OK”.
Στο menu αριστερά επιλέγουμε IP και μετά Routes. Στο παράθυρο που ανοίγει πατάμε το κουμπί “+” και στο νέο παράθυρο, στο πεδίο Gateway καταχωρούμε την IP διεύθυνση της συσκευής που δίνει internet στην πρώτη θύρα WAN. Στο πεδίο Check Gateway επιλέγουμε ping και στο πεδίο Routing Mark επιλέγουμε to_WAN1. Πατάμε το κουμπί “OK”.
Πατάμε το κουμπί “+” και στο νέο παράθυρο, στο πεδίο Gateway καταχωρούμε την IP διεύθυνση της συσκευής που δίνει internet στην δεύτερη θύρα WAN. Στο πεδίο Check Gateway επιλέγουμε ping και στο πεδίο Routing Mark επιλέγουμε to_WAN2. Πατάμε το κουμπί “OK”.
Πατάμε το κουμπί “+” και στο νέο παράθυρο, στο πεδίο Gateway καταχωρούμε την IP διεύθυνση της συσκευής που δίνει internet στην πρώτη θύρα WAN. Στο πεδίο Check Gateway επιλέγουμε ping και στο πεδίο Distance καταχωρούμε “1”. Πατάμε το κουμπί “OK”.
Πατάμε το κουμπί “+” και στο νέο παράθυρο, στο πεδίο Gateway καταχωρούμε την IP διεύθυνση της συσκευής που δίνει internet στην δεύτερη θύρα WAN. Στο πεδίο Check Gateway επιλέγουμε ping και στο πεδίο Distance καταχωρούμε “2”. Πατάμε το κουμπί “OK”.
Στο menu αριστερά επιλέγουμε IP και μετά Firewall. Στο παράθυρο που ανοίγει πηγαίνουμε στην σελίδα NAT και πατάμε το κουμπί “+”. Στο νέο παράθυρο, πηγαίνουμε στην σελίδα General και στο πεδίο Chain επιλέγουμε srcnat και στο πεδίο Out. Interface επιλέγουμε WAN1.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε masquerade. Πατάμε το κουμπί “OK”.
Πατάμε το κουμπί “+”. Στο νέο παράθυρο, πηγαίνουμε στην σελίδα General και στο πεδίο Chain επιλέγουμε srcnat και στο πεδίο Out. Interface επιλέγουμε WAN2.
Πηγαίνουμε στην σελίδα Action και στο πεδίο Action επιλέγουμε masquerade. Πατάμε το κουμπί “OK”.
Τώρα, θα ορίσουμε τους DNS Servers. Πηγαίνουμε στο menu αριστερά, επιλέγουμε IP και μετά DNS. Στο παράθυρο που ανοίγει, στο πεδίο Servers καταχωρούμε τους DNS Servers της επιλογής μας. Στο παράδειγμά μας χρησιμοποιήσαμε τους “8.8.8.8” και “8.8.4.4”. Εσείς μπορείτε να χρησιμοποιήσετε όποιους θεωρείτε ενδεδειγμένους για το δίκτυό σας. Το πεδίο Allow Remote Requests πρέπει να είναι επιλεγμένο.
Τέλος, θα ρυθμίσουμε τον DHCP Server ώστε όσοι είναι στο δίκτυο να παίρνουν αυτόματα διευθύνσεις.
Ορίζουμε DHCP Server πηγαίνοντας στο αριστερό menu και επιλέγοντας IP -> DHCP Server. Στο παράθυρο που ανοίγει πατάμε το κουμπί DHCP Setup και στο νέο παράθυρο επιλέγουμε την θύρα LAN που έχουμε δημιουργήσει. Πατάμε το κουμπί Next.
Στο επόμενο παράθυρο αποδεχόμαστε την επιλογή του subnet στο οποίο θα δίνει διευθύνσεις ο DHCP Server πατώντας πάλι το κουμπί Next.
Στο επόμενο παράθυρο αποδεχόμαστε πατώντας Next την διεύθυνση που είχαμε ορίσει προηγουμένως για το router (στο IP -> Addresses).
Στο νέο παράθυρο επιλέγουμε την δεξαμενή (pool) των διευθύνσεων την οποία θα χρησιμοποιεί ο DHCP Server για να δίνει διευθύνσεις στους χρήστες. Μετά πατάμε το κουμπί Next.
Στο καινούριο παράθυρο, επιβεβαιώνουμε πατώντας το κουμπί Next, τους DNS Servers.
Στο τελευταίο παράθυρο, αποδεχόμαστε την τιμή που μας έχει δώσει το πρόγραμμα πατώντας Next.
Πατάμε το κουμπί ΟΚ και έχουμε τελειώσει και με την ρύθμιση του DHCP Server.
Τώρα, αυτό που έχετε να κάνετε, είναι να συνδέσετε τις θύρες WAN με τις αντίστοιχες συσκευές που δίνουν internet και τις ρυθμίσαμε ως gateways (Στο παράδειγμα μας τα 10.0.0.1 και 192.168.89.1). Επίσης να συνδέσετε την LAN θύρα στο δίκτυο, αν δεν είναι ήδη συνδεδεμένη.
Συγχαρητήρια λοιπόν, μόλις καταφέρατε να ρυθμίσετε ένα Mikrotik έτσι ώστε να λειτουργεί σαν Multi WAN Router.
ΣΗΜΕΙΩΣΕΙΣ
O παραπάνω οδηγός αφορά εκείνους που έχουν τις βασικές γνώσεις συνδέσεων δικτύου.
Για όσους γνωρίζουν πως να καταχωρήσουν κώδικα, ακολουθεί παρακάτω η λίστα των εντολών:
# WAN1 network = 10.0.0.0
# WAN1 gateway = 10.0.0.1
#
# WAN2 network = 192.168.89.0
# WAN2 gateway = 192.168.89.1
#
# LAN network = 192.168.1.0
# LAN router IP = 192.168.1.1
#
/interface ethernet
set [ find default-name=ether3 ] name=LAN
set [ find default-name=ether1 ] name=WAN1
set [ find default-name=ether2 ] name=WAN2
/ip pool
add name=dhcp_pool1 ranges=192.168.1.2-192.168.1.254
/ip dhcp-server
add address-pool=dhcp_pool1 disabled=no interface=LAN name=dhcp1
/ip address
add address=10.0.0.2/24 interface=WAN1 network=10.0.0.0
add address=192.168.89.254/24 interface=WAN2 network=192.168.89.0
add address=192.168.1.1/24 interface=LAN network=192.168.1.0
/ip dhcp-server network
add address=192.168.1.0/24 gateway=192.168.1.1
/ip dns
set allow-remote-requests=yes servers=8.8.8.8,8.8.4.4
/ip firewall mangle
add action=mark-connection chain=input in-interface=WAN1 new-connection-mark=\
WAN1_conn passthrough=yes
add action=mark-connection chain=input in-interface=WAN2 new-connection-mark=\
WAN2_conn passthrough=yes
add action=mark-routing chain=output connection-mark=WAN1_conn \
new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=output connection-mark=WAN2_conn \
new-routing-mark=to_WAN2 passthrough=yes
add action=accept chain=prerouting dst-address=10.0.0.0/24 in-interface=LAN
add action=accept chain=prerouting dst-address=192.168.89.0/24 in-interface=\
LAN
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=LAN new-connection-mark=WAN1_conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:2/0
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=LAN new-connection-mark=WAN2-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:2/1
add action=mark-routing chain=prerouting connection-mark=WAN1_conn \
in-interface=LAN new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=WAN2_conn \
in-interface=LAN new-routing-mark=to_WAN2 passthrough=yes
/ip firewall nat
add action=masquerade chain=srcnat out-interface=WAN1
add action=masquerade chain=srcnat out-interface=WAN2
/ip route
add check-gateway=ping distance=1 gateway=10.0.0.1 routing-mark=to_WAN1
add check-gateway=ping distance=1 gateway=192.168.89.1 routing-mark=to_WAN2
add check-gateway=ping distance=1 gateway=10.0.0.1
add check-gateway=ping distance=2 gateway=192.168.89.1
/system clock
set time-zone-name=Europe/Athens
Βαθμός δυσκολίας 1-10 = 6
Χρόνος προγραμματισμού = 30 λεπτά
Καλή επιτυχία!
Το νούμερο 1 κατάστημα τεχνολογίας
17 Σχόλια
Καλημέρα!
Ευχαριστούμε για τον οδηγό πραγματικά καλός!
Αλλα εμένα δεν μου αθροίζει τα 2 wan. Το failover Οκ δουλευει. Αλλα σε speedtest εχω μονο 12 . επρεπε να είναι 17.
Ξερετε ποια ρύθμιση επηρεάζει αυτό ?
17 θα γίνει μόνο σε torrent (both-addresses-and-ports ). Σε single request φυσικά και θα σου πει 12 ή 5 ( ανάλογα με το ποιο είναι πρώτο)
Καλημέρα σας.
Κάτι σας έχει ξεφύγει αγαπητέ φίλε.
Είναι δοκιμασμένο και παίζει 100%
Σας ευχαριστούμε για τα καλά σας λόγια.
Ποια είναι η primary wan που βγαίνει το LAN προς τα έξω;;
Καλησπέρα δεν υπάρχει primary wan στην ρύθμιση του load balance τα πακέτα βγαίνουν από τις δυο γραμμές.Yπάρχει συγκεκριμένη ρύθμιση για να ορίσουμε μια ip να βγαίνει από ένα gateway όπου μετά προφανώς δεν θα δουλεύει το load balance για αυτήν την ip.
Καλημέρα σας,
Ποια είναι αυτή η ρύθμιση?
Καλησπέρα Πάμε ip,address lists φτιάχνουμε μια λίστα με τις ip ή την ip που θέλουμε.Μετά πάμε ip,firewall στην καρτέλα mangle δημιουργούμε έναν νέο κανόνα στο chain επιλέγουμε το prerouting και στο In.Interface το τοπικό μας δίκτυο.Μετά πάμε στην καρτέλα Advanced στο Src.Address lists επιλέγουμε την address list που φτιάξαμε πριν και μετά στην καρτέλα Action επιλέγουμε mark routing και γράφουμε στο new routing mark πχ “to_1.1” για να το ξεχωρίσουμε στην συνεχεία στα routes.Πατάμε apply και πάμε ip,routes εκεί δημιουργούμε ένα καινούριο, σαν Dst.Address δίνουμε 0.0.0.0/0,Gateway το gateway που έχουμε,Distance:1 και Routing Mark το “to_1.1”.
both-addresses-and-ports (!?)
Έχει πρόβλημα στις τράπεζες. Θα πρέπει να κάνεις exclude για e-banking.
όταν σε κάποιο ρούτερ όμως πέσει το ιντερνετ… το μικροτικ δεν το ξέρει… γιατί κάνει Ping στην Ip του ρουτερ… και οχι σε κάποια public ώστε να ξέρει οτι υπάρχει το ιντερνετ… οπότε και δημιουργείτε αμέσως πρόβλημα.
οπότε τι το διαφορετικό θέλει στα routes?
Προσπαθώ να τροποποιήσω το παραπάνω ώστε να δουλεύει με 2 pppoe που έχω από 2 συνδέσεις ΟΤΕ. Δυστυχώς δουλεύει μόνο η μία και αν την αποσυνδέσω δεν στέλνει κίνηση στην 2η. Είναι 2 pppoe από 2 vdsl 50M/κάθε μία. Απλά θέλει προσοχή με το https για τις τράπέζες κυρίως.
Έχουμε κάποιον οδηγό γι’ αυτό παρακαλώ?
Αγαπητέ,
Ο οδηγός σου λειτούργησε κανονικότατα. Έβαλα 3x 30αρες VDSL και έπιασε 57Mbps.
H LAN μπήκε στο port5 (Gigabit) και οι WAN στις πόρτες 6,7 και 8 (fast ethernet).
Το πρόβλημα μου είναι ότι η WAN8 δεν έχει καθόλου κίνηση, ακόμα και όταν βγάλω τις υπόλοιπες 2 γραμμές.
Δοκίμασα να αλλάξω το distance απο 3 που το είχα σε 2 ή 1 αλλά δεν άλλαξε κάτι. Επίσης στο “Per Connection Classifier” έβαλα “both addresses and ports : 2/2”. Μήπως φταίει αυτό;
Τη γραμμή τη βλέπει ready.
Σε ευχαριστώ πολύ για τον οδηγό και το χρόνο σου.
Φτιάξε και άλλη μια wan δηλαδή να έχεις συνολικά 4.
Αν θυμάμαι καλά θα σου παιξει η 3 κανονικά με αυτον τον τρόπο.
Οταν βρω λίγο χρόνο θα φτιάξω και μια παραπομπή απο αυτο το άρθρο στο καινούργιο.
Να είσαι καλά.
υ.γ.
Απάντησε αν τα καταφέρεις.
Ψάχνοντας βρήκα αυτό – https://www.easysystem.al/mikrotik/3-wan-load-balancing-pcc-method/
Σε κάποιο σημείο γράφει:
———————————————–
add action=mark-connection chain=prerouting dst-address-type=!local in-interface=Local new-connection-mark=WAN1_conn per-connection-classifier=both-addresses-and-ports:3/0
add action=mark-connection chain=prerouting dst-address-type=!local in-interface=Local new-connection-mark=WAN2_conn per-connection-classifier=both-addresses-and-ports:3/1
add action=mark-connection chain=prerouting dst-address-type=!local in-interface=Local new-connection-mark=WAN3_conn per-connection-classifier=both-addresses-and-ports:3/2
———————————————–
Εγώ ακολουθόντας τον οδηγό σου, έβαλα 2/0 – 2/1 – 2/2 που μάλλον είναι λάθος στην περίπτωση μου γιατί το έγραψες για 2 WAN.
Θα το δοκιμάσω και θα σε ενημερώσω.
‘Οταν έχουμε 2 WAN with Failover πως μπορούμε να κάνουμε port forwarding για καμερες…..
Καλησπέρα ,
Το έκανα όπως το έχετε στον οδηγό ,
WAN1 50mbps
WAN2 200mbps
Pc connected with LAN
Κατεβάζω δοκιμαστικά αρχεία
Και speed test και βλέπω πως μόνο το wan1 λειτουργεί
Μπράβο πολύ καλή δουλειά ..
Καλημέρα μπορείτε να μου πείτε πως κάνουμε εξαίρεση για το https όπου αφορά κυρίως τράπεζες?