Bideraketa TCP/IP sareen bidez paketeak transmititzeko biderik onena aurkitzeko prozesua da. IPv4 sare batera konektatutako edozein gailu prozesu bat eta bideratze-taulak ditu.
Artikulu hau ez da HOWTO bat, RouterOS-en bideratze estatikoa deskribatzen du adibideekin, nahita utzi ditut gainerako ezarpenak (adibidez, srcnat Internetera sartzeko), beraz, materiala ulertzeak sareen eta RouterOSen ezagutza maila jakin bat eskatzen du.
Aldaketa eta bideratzea
Aldaketa Layer2 segmentu baten barruan (Ethernet, ppp, ...) paketeak trukatzeko prozesua da. Gailuak paketearen hartzailea berarekin Ethernet azpisare berean dagoela ikusten badu, mac helbidea ikasten du arp protokoloa erabiliz eta paketea zuzenean transmititzen du, bideratzailea saihestuz. ppp (puntutik puntu) konexio batek bi parte-hartzaile soilik izan ditzake eta paketea beti 0xff helbide batera bidaltzen da.
Bideraketa Layer2 segmentuen artean paketeak transferitzeko prozesua da. Gailu batek hartzailea Ethernet segmentutik kanpo dagoen pakete bat bidali nahi badu, bere bideratze-taulan begiratu eta paketea atebidera pasatzen du, honek badaki paketea non bidali behar duen hurrengo (edo agian ez du jakin paketearen jatorrizko igorlea. ez da horretaz jabetzen).
Bideratzaile bat pentsatzeko modurik errazena Layer2 segmentu bi edo gehiagotara konektatuta dagoen gailu bat da eta haien artean paketeak pasatzeko gai dena bideratze-taulan biderik onena zehaztuz.
Dena ulertzen baduzu, edo dagoeneko bazenekien, jarraitu irakurtzen. Gainerakoan, biziki gomendatzen dizut ezagutzea txikia, baina oso zabala
RouterOS eta PacketFlow-en bideratzea
Bideratze estatikoarekin lotutako funtzionalitate ia guztiak paketean daude sistema. Plastikozko poltsa routing bideratze-algoritmo dinamikoetarako (RIP, OSPF, BGP, MME), bideratze-iragazkiak eta BFD-en laguntza gehitzen du.
Bideraketa konfiguratzeko menu nagusia: [IP]->[Route]
. Eskema konplexuek paketeak aurrez etiketatzea eska dezakete bideratze-marka batekin: [IP]->[Firewall]->[Mangle]
(kateak PREROUTING
ΠΈ OUTPUT
).
PacketFlow-en hiru leku daude non IP paketeen bideratze-erabakiak hartzen diren:
- Bideratzaileak jasotako paketeak bideratzea. Etapa honetan, paketea prozesu lokalera joango den edo sarera gehiago bidaliko den erabakitzen da. Transit paketeak jasotzen ditu Irteera Interface
- Irteerako pakete lokalak bideratzea. Irteerako paketeak jasotzen dira Irteera Interface
- Irteerako paketeen bideratze-urrats gehigarria, bideratze-erabakia aldatzeko aukera ematen du
[Output|Mangle]
- 1., 2. blokeetako paketearen bidea arauen araberakoa da
[IP]->[Route]
- 1., 2. eta 3. puntuetako paketearen ibilbidea arauen araberakoa da
[IP]->[Route]->[Rules]
- 1., 3. blokeetako paketearen bidea erabiliz eragin daiteke
[IP]->[Firewall]->[Mangle]
RIB, FIB, bideratze cachea
Bideratze Informazio Oinarria
Bideratze dinamikoko protokoloetatik, ppp eta dhcp-etatik, ibilbide estatikoetatik eta konektatutako ibilbideetatik biltzen diren oinarria. Datu-base honek ibilbide guztiak ditu, administratzaileak iragazitakoak izan ezik.
Baldintzapean, hori suposa dezakegu [IP]->[Route]
RIB erakusten du.
Bidalketa Informazio Oinarria
RIBeko ibilbide onenak biltzen dituen oinarria. FIBeko ibilbide guztiak aktibo daude eta paketeak birbidaltzeko erabiltzen dira. Ibilbidea inaktibo geratzen bada (administratzaileak (sistemak desgaituta) edo paketea bidali behar duen interfazea aktibo ez badago), ibilbidea FIBetik kenduko da.
Bideratze-erabaki bat hartzeko, FIB taulak IP pakete bati buruzko informazio hau erabiltzen du:
- Iturburu-helbidea
- Helmuga Helbidea
- iturburu-interfazea
- Bide-marka
- ToS (DSCP)
FIB paketean sartzeak fase hauetatik igarotzen da:
- Paketea bideratzaile lokaleko prozesu baterako pentsatuta al dago?
- Paketea sistemaren edo erabiltzailearen PBR arauen menpe al dago?
- Baiezkoa bada, paketea zehaztutako bideratze-taulara bidaltzen da
- Paketea mahai nagusira bidaltzen da
Baldintzapean, hori suposa dezakegu [IP]->[Route Active=yes]
FIB bistaratzen du.
Bideratze cachea
Ibilbideen cachearen mekanismoa. Bideratzaileak paketeak non bidali diren gogoratzen du eta antzekoak badira (ustez konexio berekoak) bide beretik joaten uzten die, FIBean egiaztatu gabe. Ibilbidearen cachea aldian-aldian garbitzen da.
RouterOS-eko administratzaileentzat, ez zuten bideratze-cachea ikusteko eta kudeatzeko tresnarik egin, baina desgaitu daitekeenean. [IP]->[Settings]
.
Mekanismo hau linux 3.6 nukleotik kendu zen, baina RouterOS-ek oraindik 3.3.5 nukleoa erabiltzen du, beharbada Routing cahce da arrazoietako bat.
Gehitu ibilbidearen elkarrizketa-koadroa
[IP]->[Route]->[+]
- Ibilbide bat sortu nahi duzun azpisarea (lehenetsia: 0.0.0.0/0)
- Paketea bidaliko den atebide IP edo interfazea (hainbat egon daitezke, ikusi behean ECMP)
- Pasabidearen erabilgarritasuna egiaztatzea
- Erregistro mota
- Distantzia (metrikoa) ibilbide baterako
- Bideratze taula
- Ibilbide honen bidez tokiko irteerako paketeen IP
- Scope eta Target Scope-ren helburua artikuluaren amaieran idazten da.
Ibilbideko banderak
- X - Ibilbidea administratzaileak desgaitu du (
disabled=yes
) - A - Ibilbidea paketeak bidaltzeko erabiltzen da
- D - Ibilbidea modu dinamikoan gehitu da (BGP, OSPF, RIP, MME, PPP, DHCP, Konektatua)
- C - Azpisarea bideratzailera zuzenean konektatuta dago
- S - Ibilbide estatikoa
- r,b,o,m - Bideratze dinamikoko protokoloetako batek gehitutako ibilbidea
- B,U,P - Iragazte ibilbidea (paketeak erortzen ditu transmititu beharrean)
Zer zehaztu atebidean: ip helbidea edo interfazea?
Sistemak biak zehaztea ahalbidetzen du, zin egiten ez duen bitartean eta zerbait gaizki egin baduzu ez du aholkurik ematen.
IP helbidea
Atebidearen helbideak Layer2-n eskuragarri egon behar du. Ethernet-erako, horrek esan nahi du bideratzaileak azpisare bereko helbide bat izan behar duela ip interfaze aktiboetako batean, ppp-rako, atebide-helbidea interfaze aktiboetako batean zehaztuta dagoela azpisare-helbide gisa.
Layer2-rako irisgarritasun-baldintza betetzen ez bada, ibilbidea inaktibotzat hartuko da eta ez da FIBn sartzen.
interface
Dena konplikatuagoa da eta bideratzailearen portaera interfaze motaren araberakoa da:
- PPP (Async, PPTP, L2TP, SSTP, PPPoE, OpenVPN *) konexioak bi parte-hartzaile bakarrik hartzen ditu eta paketea beti bidaliko da atebidera transmisiorako, atebideak hartzailea bera dela hautematen badu, paketea transferituko du. bertako prozesua.
- Ethernet-ek parte-hartzaile askoren presentzia hartzen du eta arp interfazera eskaerak bidaliko ditu paketearen hartzailearen helbidearekin, hau espero da eta nahiko portaera normala da konektatutako ibilbideetarako.
Baina interfazea urruneko azpisare baterako bide gisa erabiltzen saiatzen zarenean, egoera hau jasoko duzu: ibilbidea aktibo dago, ping-a atebidera pasatzen da, baina ez da hartzailera iristen zehaztutako azpisaretik. Interfazea sniffer baten bidez ikusten baduzu, arp eskaerak ikusiko dituzu urruneko azpisare bateko helbideak.
Saiatu IP helbidea atebide gisa zehazten ahal den guztietan. Salbuespena konektatutako ibilbideak (automatikoki sortuak) eta PPP (Async, PPTP, L2TP, SSTP, PPPoE, OpenVPN*) interfazeak dira.
OpenVPN-k ez du PPP goibururik, baina OpenVPN interfazearen izena erabil dezakezu ibilbide bat sortzeko.
Ibilbide zehatzagoa
Oinarrizko bideratze-araua. Azpisare txikiagoa (azpisare maskara handiena duena) deskribatzen duen ibilbideak lehentasuna du paketearen bideratze erabakian. Bideratze-taulan sarreren posizioa ez da garrantzitsua aukerarako - arau nagusia zehatzagoa da.
Zehaztutako eskemako ibilbide guztiak aktibo daude (FIBn kokatuta). azpisare desberdinetara seinalatu eta ez dute elkarren artean gatazkarik sortu.
Atebideetako bat erabilgarri geratzen ez bada, lotutako ibilbidea inaktibotzat joko da (FIBtik kenduta) eta paketeak gainerako bideetatik bilatuko dira.
0.0.0.0/0 azpisarea duen ibilbideari esanahi berezia ematen zaio batzuetan eta "Ibilbide lehenetsia" edo "Azken baliabideko atea" deitzen zaio. Izan ere, ez du ezer magikorik eta IPv4 helbide posible guztiak biltzen ditu besterik gabe, baina izen hauek ondo deskribatzen dute bere zeregina: beste bide zehatzagorik ez duten paketeak birbidaltzeko atebidea adierazten du.
IPv4rako azpisare-maskara maximoa /32 da, ibilbide honek ostalari zehatz batera seinalatzen du eta bideratze-taulan erabil daiteke.
Ibilbide zehatzagoa ulertzea oinarrizkoa da TCP/IP gailu guztietan.
Distantzia
Distantziak (edo metrikak) beharrezkoak dira atebide anitzen bidez eskuragarri dagoen azpisare bakarrerako bideak administratiboki iragazteko. Metrika txikiagoa duen ibilbidea lehentasunezkotzat jotzen da eta FIBean sartuko da. Metrika txikiagoa duen ibilbide batek aktibo izateari uzten badio, orduan FIBn metrika altuagoa duen ibilbide batek ordezkatuko du.
Azpisare bererako hainbat bide badaude metrika berdinarekin, bideratzaileak horietako bakarra gehituko du FIB taulan, bere barne logikak gidatuta.
Neurketak 0 eta 255 arteko balioa har dezake:
- 0 - Konektatutako ibilbideetarako metrika. 0 distantzia ezin du administratzaileak ezarri
- 1-254 - Ibilbideak ezartzeko administratzaileak eskuragarri dituen metrika. Balio txikiagoa duten metrikek lehentasun handiagoa dute
- 255 - Ibilbideak ezartzeko administratzaileak eskuragarri duen metrika. 1-254 ez bezala, 255 metrika duen ibilbide bat beti geratzen da inaktibo eta ez da FIBean sartzen
- metrika zehatzak. Bideratze dinamikoko protokoloetatik eratorritako ibilbideek balio metriko estandarrak dituzte
egiaztatu atebidea
Check gateway MikroTik RoutesOS luzapena da atebidearen erabilgarritasuna egiaztatzeko icmp edo arp bidez. 10 segundotik behin (ezin da aldatu), atebidera eskaera bat bidaltzen da, erantzuna bi aldiz jasotzen ez bada, ibilbidea erabilgarritzat jotzen da eta FIBetik kentzen da. Egiaztatzeko atebidea desgaitu badu, egiaztapen-ibilbideak jarraitzen du eta ibilbidea berriro aktibo egongo da egiaztapen arrakastatsu baten ondoren.
Egiaztatu atebidea desgaitzen du konfiguratuta dagoen sarrera eta gainerako sarrera guztiak (bideratze-taula eta ecmp ibilbide guztietan) zehaztutako atebidearekin.
Orokorrean, egiaztatu atebidea ondo funtzionatzen du atebidean paketeak galtzeko arazorik ez dagoen bitartean. Check gateway-k ez daki zer gertatzen den egiaztatutako atebidetik kanpoko komunikazioarekin, honek tresna osagarriak behar ditu: script-ak, bideratze errekurtsiboa, bideratze-protokolo dinamikoak.
VPN eta tunel protokolo gehienek konexio-jarduera egiaztatzeko tresna integratuak dituzte, haientzako egiaztatzeko atebidea gaitzea sarearen eta gailuaren errendimenduan karga gehigarria (baina oso txikia) da.
ECMP ibilbideak
Equal-Cost Multi-Path - hartzaileari paketeak bidaltzea hainbat atebide erabiliz aldi berean Round Robin algoritmoa erabiliz.
Administratzaileak ECMP bide bat sortzen du azpisare baterako atebide bat baino gehiago zehaztuz (edo automatikoki, OSPF bide baliokide bi badira).
ECMP bi kanalen arteko karga orekatzeko erabiltzen da, teorian, ecmp ibilbidean bi kanal badaude, pakete bakoitzeko irteerako kanala desberdina izan beharko litzateke. Baina Routing cache mekanismoak konexiotik paketeak bidaltzen ditu lehen paketeak egin zuen ibilbidean zehar, ondorioz, konexioetan oinarritutako oreka moduko bat lortzen dugu (konexio bakoitzeko karga orekatzea).
Bideratze cachea desgaitzen baduzu, ECMP ibilbideko paketeak behar bezala partekatuko dira, baina arazo bat dago NATarekin. NAT arauak konexioko lehen paketea soilik prozesatzen du (gainerakoak automatikoki prozesatzen dira), eta iturburu-helbide bera duten paketeek interfaze desberdinak uzten dituzte.
Egiaztatu atebidea ez dabil ECMP bideetan (RouterOS akatsa). Baina muga hori gaindi dezakezu ECMP-n sarrerak desgaituko dituzten baliozkotze-bide osagarriak sortuz.
Iragazkia Bideratzearen bidez
Mota aukerak paketearekin zer egin zehazten du:
- unicast - bidali zehaztutako atebidera (interfazea)
- blackhole - pakete bat baztertu
- debekatu, iritsi ezina - baztertu paketea eta bidali icmp mezu bat igorleari
Iragazkia erabili ohi da paketeak bide okerrean bidaltzea ziurtatzeko beharrezkoa denean, noski, hori suebakiaren bidez iragazi dezakezu.
Adibide pare bat
Bideratzearen oinarrizko gauzak finkatzeko.
Etxeko bideratzaile tipikoa
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1
- Ibilbide estatikoa 0.0.0.0/0ra (bide lehenetsia)
- Ibilbidea hornitzailearekin interfazean konektatuta
- Konektatutako ibilbidea LAN interfazean
Etxeko bideratzaile tipikoa PPPoErekin
- Ibilbide estatikoa ibilbide lehenetsira, automatikoki gehitu da. konexio propietateetan zehazten da
- PPP konexiorako konektatutako ibilbidea
- Konektatutako ibilbidea LAN interfazean
Etxeko bideratzaile tipikoa bi hornitzailerekin eta erredundantziarekin
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1 distance=1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.20.20.1 distance=2
- Ibilbide estatikoa lehen hornitzailetik 1. metrika eta atebidearen erabilgarritasun egiaztapenarekin
- Ibilbide estatikoa bide lehenetsirako bigarren hornitzailetik 2 metrikarekin
- Konektatutako ibilbideak
0.0.0.0/0rako trafikoa 10.10.10.1etik igarotzen da atebide hau erabilgarri dagoen bitartean, bestela 10.20.20.1ra aldatzen da
Horrelako eskema bat kanalen erreserbatzat har daiteke, baina ez dago eragozpenik gabe. Eten bat hornitzailearen atebidetik kanpo gertatzen bada (adibidez, operadorearen sarearen barruan), zure bideratzaileak ez du horren berri izango eta ibilbidea aktibotzat jotzen jarraituko du.
Etxeko bideratzaile tipikoa bi hornitzailerekin, erredundantzia eta ECMP
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.20.20.1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.10.10.1,10.20.20.1 distance=1
- Chack atea egiaztatzeko ibilbide estatikoak
- ECMP ibilbidea
- Konektatutako ibilbideak
Egiaztatu beharreko ibilbideak urdinak dira (ibilbide inaktiboen kolorea), baina horrek ez du oztopatzen egiaztapen atebidearekin. RoS-en egungo bertsioak (6.44) lehentasun automatikoa ematen dio ECMP ibilbideari, baina hobe da proba-bideak beste bideratze-tauletan gehitzea (aukera routing-mark
)
Speedtest eta antzeko beste gune batzuetan, ez da abiadura handituko (ECMP-k trafikoa konexioen arabera banatzen du, ez paketeen arabera), baina p2p aplikazioek azkarrago deskargatu beharko lukete.
Bideratze bidez iragaztea
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1
add dst-address=192.168.200.0/24 gateway=10.30.30.1 distance=1
add dst-address=192.168.200.0/24 gateway=10.10.10.1 distance=2 type=blackhole
- Ibilbide estatikoa ibilbide lehenetsira
- Bide estatikoa 192.168.200.0/24 ipip tunelaren bidez
- ISP bideratzailearen bidez 192.168.200.0/24ra bide estatikoa debekatzea
Ipip interfazea desgaituta dagoenean tunelaren trafikoa hornitzailearen bideratzailera joango ez den iragazteko aukera bat. Horrelako eskemak oso gutxitan eskatzen dira, zeren suebakiaren bidez blokeatzea ezar dezakezu.
Bideratze-begizta
Bideratze-begizta - pakete bat bideratzaileen artean exekutatzen den egoera ttl iraungi baino lehen. Normalean konfigurazio-errore baten ondorioa da, sare handietan bideratze dinamikoko protokoloak ezarriz tratatzen da, txikietan - kontu handiz.
Honela dirudi:
Antzeko emaitza bat lortzeko adibide bat (errazena):
Bideratze-begizta adibideak ez du erabilera praktikorik, baina erakusten du bideratzaileek ez dutela beren bizilagunaren bideratze-taulari buruzko ideiarik.
Politika-oinarrizko bideraketa eta bideratze-taulak osagarriak
Ibilbide bat aukeratzerakoan, bideratzaileak paketeen goiburuko eremu bakarra erabiltzen du (Dst. Helbidea) - hau oinarrizko bideratzea da. Beste baldintza batzuetan oinarritutako bideratzea, hala nola iturburu helbidea, trafiko mota (ToS), ECMPrik gabeko orekatzea, Policy Base Routing (PBR) da eta bideratze-taula osagarriak erabiltzen ditu.
Ibilbide zehatzagoa bideratze-taularen barruan ibilbide hautatzeko arau nagusia da.
Lehenespenez, bideratze-arau guztiak taula nagusira gehitzen dira. Administratzaileak bideratze-taula gehigarri kopuru arbitrario bat sor dezake eta horietara paketeak bideratu. Taula ezberdinetako arauek ez dute elkarren arteko gatazkarik. Paketeak zehaztutako taulan arau egokirik aurkitzen ez badu, taula nagusira joango da.
Suebaki bidezko banaketaren adibidea:
- 192.168.100.10 -> 8.8.8.8
- 192.168.100.10 zenbakiko trafikoa etiketatu egiten da bidez-isp1 Π²
[Prerouting|Mangle]
- Taulan Bideratze fasean bidez-isp1 8.8.8.8rako ibilbidea bilatzen du
- Ibilbidea aurkitu da, trafikoa 10.10.10.1 atebidera bidaltzen da
- 192.168.100.10 zenbakiko trafikoa etiketatu egiten da bidez-isp1 Π²
- 192.168.200.20 -> 8.8.8.8
- 192.168.200.20 zenbakiko trafikoa etiketatu egiten da bidez-isp2 Π²
[Prerouting|Mangle]
- Taulan Bideratze fasean bidez-isp2 8.8.8.8rako ibilbidea bilatzen du
- Ibilbidea aurkitu da, trafikoa 10.20.20.1 atebidera bidaltzen da
- 192.168.200.20 zenbakiko trafikoa etiketatu egiten da bidez-isp2 Π²
- Atebideetako bat (10.10.10.1 edo 10.20.20.1) erabilgarri ez badago, paketea taulara joango da nagusia eta ibilbide egoki bat bilatuko du bertan
Terminologia gaiak
RouterOSek terminologia arazo batzuk ditu.
Arauekin lan egitean [IP]->[Routes]
bideratze-taula adierazten da, nahiz eta idatzita dagoen etiketa:
Π [IP]->[Routes]->[Rule]
dena zuzena da, taulako ekintzako etiketa baldintzan:
Nola bidali pakete bat bideratze-taula zehatz batera
RouterOS-ek hainbat tresna eskaintzen ditu:
- Arauak barruan
[IP]->[Routes]->[Rules]
- Ibilbide-markatzaileak (
action=mark-routing
) at[IP]->[Firewall]->[Mangle]
- VRF
araudia [IP]->[Route]->[Rules]
Arauak sekuentzialki prozesatzen dira, paketeak arauaren baldintzekin bat egiten badu, ez da gehiago pasatzen.
Bideratze-arauek bideratze-aukerak zabaltzeko aukera ematen dute, hartzailearen helbidean ez ezik, paketea jaso den iturburu-helbidean eta interfazean ere oinarrituz.
Arauak baldintza eta ekintza bat osatzen dute:
- Baldintzak. Ia errepikatu paketea FIBn egiaztatzen duten seinaleen zerrenda, ToS bakarrik falta da.
- Jarduera
- bilaketa - bidali pakete bat mahai batera
- Bilatu taulan bakarrik - blokeatu paketea taulan, ibilbidea aurkitzen ez bada, paketea ez da mahai nagusira joango
- bota - pakete bat bota
- iritsi ezina - baztertu paketea igorlearen jakinarazpenarekin
FIBn, tokiko prozesuetarako trafikoa arauak baztertuz prozesatzen da [IP]->[Route]->[Rules]
:
markatzea [IP]->[Firewall]->[Mangle]
Bideratze-etiketek pakete baten atea ezartzeko aukera ematen dizute Suebakiaren ia edozein baldintza erabiliz:
Praktikoki, denek ez dutelako zentzurik, eta batzuek ezegonkor funtziona dezaketelako.
Pakete bat etiketatzeko bi modu daude:
- Berehala jarri bide-marka
- Jarri lehenik konexio-marka, orduan oinarrituta konexio-marka jarri bide-marka
Suebakiei buruzko artikulu batean, bigarren aukera hobe dela idatzi nuen. CPUaren karga murrizten du, ibilbideak markatzeko kasuan - hori ez da guztiz egia. Markatzeko metodo hauek ez dira beti baliokideak eta normalean hainbat problema ebazteko erabiltzen dira.
Erabileraren adibideak
Goazen Policy Base Routing erabiltzearen adibideetara, askoz errazagoa da hori guztia zergatik behar den erakustea.
MultiWAN eta irteerako (Irteera) trafikoa itzultzeko
MultiWAN konfigurazio baten ohiko arazoa: Mikrotik Internetetik hornitzaile "aktibo" baten bidez bakarrik dago eskuragarri.
Bideratzaileari ez zaio axola zein iptara iritsi den eskaera, erantzuna sortzerakoan, bideratze-taulan ibilbide bat bilatuko du non isp1 bidezko ibilbidea aktibo dagoen. Gainera, pakete hori hartzailerako bidean iragaziko da ziurrenik.
Beste puntu interesgarri bat. Ether1 interfazean iturburu "sinple" bat konfiguratuta badago: /ip fi nat add out-interface=ether1 action=masquerade
paketea sarean jarriko da src-rekin. helbidea=10.10.10.100, eta horrek are okerrago egiten du.
Arazoa konpontzeko hainbat modu daude, baina horietako edozein bideratze-taula osagarriak beharko ditu:
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1 check-gateway=ping distance=1
add dst-address=0.0.0.0/0 gateway=10.20.20.1 check-gateway=ping distance=2
add dst-address=0.0.0.0/0 gateway=10.10.10.1 routing-mark=over-isp1
add dst-address=0.0.0.0/0 gateway=10.20.20.1 routing-mark=over-isp2
Erabili [IP]->[Route]->[Rules]
Zehaztu Iturburu IP zehaztua duten paketeetarako erabiliko den bideratze-taula.
/ip route rule
add src-address=10.10.10.100/32 action=lookup-only-in-table table=over-isp1
add src-address=10.20.20.200/32 action=lookup-only-in-table table=over-isp2
Erabil daiteke action=lookup
, baina tokiko irteerako trafikorako, aukera honek guztiz baztertzen ditu interfaze okerreko konexioak.
- Sistemak erantzun-pakete bat sortzen du Src-rekin. Helbidea: 10.20.20.200
- Bideratzearen erabakia(2) urratsak egiaztatzen ditu
[IP]->[Routes]->[Rules]
eta paketea bideratze-taulara bidaltzen da gehiegizko isp2 - Bideratze-taularen arabera, paketea 10.20.20.1 atebidera bidali behar da ether2 interfazearen bidez.
Metodo honek ez du funtzionatzen duen Connection Tracker behar, Mangle taula erabiliz ez bezala.
Erabili [IP]->[Firewall]->[Mangle]
Konexioa sarrerako pakete batekin hasten da, beraz, markatuko dugu (action=mark-connection
), markatutako konexio batetik irteerako paketeetarako, ezarri bideratze etiketa (action=mark-routing
).
/ip firewall mangle
#ΠΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²Ρ
ΠΎΠ΄ΡΡΠΈΡ
ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ
add chain=input in-interface=ether1 connection-state=new action=mark-connection new-connection-mark=from-isp1
add chain=input in-interface=ether2 connection-state=new action=mark-connection new-connection-mark=from-isp2
#ΠΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ
add chain=output connection-mark=from-isp1 action=mark-routing new-routing-mark=over-isp1 passthrough=no
add chain=output connection-mark=from-isp2 action=mark-routing new-routing-mark=over-isp2 passthrough=no
Interfaze batean hainbat ip konfiguratuta badaude, baldintza gehitu dezakezu dst-address
ziur egon.
- Pakete batek konexioa irekitzen du ether2 interfazean. Paketea sartzen da
[INPUT|Mangle]
horrek esaten du konexioko pakete guztiak markatzeko moduan tik-isp2 - Sistemak erantzun-pakete bat sortzen du Src-rekin. Helbidea: 10.20.20.200
- Routing Decision(2) fasean, paketea, bideratze-taularen arabera, 10.20.20.1 atebidera bidaltzen da ether1 interfazearen bidez. Hau egiazta dezakezu paketeetan saioa hasita
[OUTPUT|Filter]
- Agertokian
[OUTPUT|Mangle]
konexio etiketa egiaztatuta dago tik-isp2 eta paketeak ibilbide etiketa bat jasotzen du gehiegizko isp2 - Bideratzearen doikuntza(3) urratsak bideratze-etiketa bat dagoen egiaztatzen du eta bideratze-taula egokira bidaltzen du.
- Bideratze-taularen arabera, paketea 10.20.20.1 atebidera bidali behar da ether2 interfazearen bidez.
MultiWAN eta itzulera dst-nat trafikoa
Adibide bat konplikatuagoa da, zer egin zerbitzari bat (adibidez, weba) bideratzailearen atzean azpisare pribatu batean badago eta horretarako sarbidea eman behar baduzu edozein hornitzaileren bidez.
/ip firewall nat
add chain=dstnat proto=tcp dst-port=80,443 in-interface=ether1 action=dst-nat to-address=192.168.100.100
add chain=dstnat proto=tcp dst-port=80,443 in-interface=ether2 action=dst-nat to-address=192.168.100.100
Arazoaren funtsa bera izango da, irtenbidea Firewall Mangle aukeraren antzekoa da, beste kateak bakarrik erabiliko dira:
/ip firewall mangle
add chain=prerouting connection-state=new in-interface=ether1 protocol=tcp dst-port=80,443 action=mark-connection new-connection-mark=web-input-isp1
add chain=prerouting connection-state=new in-interface=ether2 protocol=tcp dst-port=80,443 action=mark-connection new-connection-mark=web-input-isp2
add chain=prerouting connection-mark=web-input-isp1 in-interface=ether3 action=mark-routing new-routing-mark=over-isp1 passthrough=no
add chain=prerouting connection-mark=web-input-isp2 in-interface=ether3 action=mark-routing new-routing-mark=over-isp2 passthrough=no
Diagramak ez du NAT erakusten, baina dena argi dagoela uste dut.
MultiWAN eta irteerako konexioak
PBR gaitasunak erabil ditzakezu router interfaze ezberdinetatik vpn (SSTP adibidean) hainbat konexio sortzeko.
Bideratze-taula osagarriak:
/ip route
add dst-address=0.0.0.0/0 gateway=192.168.100.1 routing-mark=over-isp1
add dst-address=0.0.0.0/0 gateway=192.168.200.1 routing-mark=over-isp2
add dst-address=0.0.0.0/0 gateway=192.168.0.1 routing-mark=over-isp3
add dst-address=0.0.0.0/0 gateway=192.168.100.1 distance=1
add dst-address=0.0.0.0/0 gateway=192.168.200.1 distance=2
add dst-address=0.0.0.0/0 gateway=192.168.0.1 distance=3
Paketeen marka:
/ip firewall mangle
add chain=output dst-address=10.10.10.100 proto=tcp dst-port=443 action=mark-routing new-routing-mark=over-isp1 passtrough=no
add chain=output dst-address=10.10.10.101 proto=tcp dst-port=443 action=mark-routing new-routing-mark=over-isp2 passtrough=no
add chain=output dst-address=10.10.10.102 proto=tcp dst-port=443 action=mark-routing new-routing-mark=over-isp3 passtrough=no
NAT arau sinpleak, bestela paketeak Src okerreko interfazea utziko du. helbidea:
/ip firewall nat
add chain=srcnat out-interface=ether1 action=masquerade
add chain=srcnat out-interface=ether2 action=masquerade
add chain=srcnat out-interface=ether3 action=masquerade
Analizatzen:
- Bideratzaileak hiru SSTP prozesu sortzen ditu
- Bideratze erabakia (2) etapan, prozesu horietarako ibilbide bat hautatzen da bideratze-taula nagusiaren arabera. Ibilbide beretik, paketeak Src jasotzen du. Helbidea ether1 interfazeari lotuta
- Π
[Output|Mangle]
konexio ezberdinetako paketeek etiketa desberdinak jasotzen dituzte - Paketeak etiketei dagozkien tauletan sartzen dira Bideratzearen doikuntza fasean eta paketeak bidaltzeko bide berri bat jasotzen dute.
- Baina paketeek Src dute oraindik. Helbidea ether1, eszenatokian
[Nat|Srcnat]
helbidea ordezkatzen da interfazearen arabera
Interesgarria da bideratzailean konexio-taula hau ikusiko duzu:
Connection Tracker-ek lehenago funtzionatzen du [Mangle]
ΠΈ [Srcnat]
, beraz, konexio guztiak helbide beretik datoz, zehatzago begiratuz gero, orduan Replay Dst. Address
NAT ondoren helbideak egongo dira:
VPN zerbitzarian (bat dut proba-bankuan), konexio guztiak helbide zuzenetatik datozela ikus dezakezu:
Eutsi bidea
Modu errazagoa dago, helbide bakoitzeko atebide zehatz bat zehaztu besterik ez duzu:
/ip route
add dst-address=10.10.10.100 gateway=192.168.100.1
add dst-address=10.10.10.101 gateway=192.168.200.1
add dst-address=10.10.10.102 gateway=192.168.0.1
Baina horrelako ibilbideek irteerako trafikoari ez ezik, garraiobideari ere eragingo diote. Gainera, vpn zerbitzarirako trafikoa behar ez baduzu komunikazio kanal desegokietatik joateko, orduan 6 arau gehiago gehitu beharko dituzu. [IP]->[Routes]
Ρ type=blackhole
. Aurreko bertsioan - 3 arau [IP]->[Route]->[Rules]
.
Erabiltzaileen konexioen banaketa komunikazio-kanalen arabera
Lan sinpleak, egunerokoak. Berriz ere, bideratze-taula osagarriak beharko dira:
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1 dist=1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.20.20.1 dist=2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.10.10.1 dist=1 routing-mark=over-isp1
add dst-address=0.0.0.0/0 gateway=10.20.20.1 dist=1 routing-mark=over-isp2
Erabiltzea [IP]->[Route]->[Rules]
/ip route rules
add src-address=192.168.100.0/25 action=lookup-only-in-table table=over-isp1
add src-address=192.168.100.128/25 action=lookup-only-in-table table=over-isp2
Erabili bada action=lookup
, gero kanaletako bat desgaituta dagoenean, trafikoa mahai nagusira joango da eta laneko kanaletik igaroko da. Hau beharrezkoa den ala ez zereginaren araberakoa da.
Markaketak erabiliz [IP]->[Firewall]->[Mangle]
Adibide sinple bat ip helbideen zerrendekin. Printzipioz, ia edozein baldintza erabil daiteke. Geruzaren 7 ohar bakarra, konexio-etiketekin parekatuta ere, badirudi dena ondo funtzionatzen ari dela, baina trafikoaren zati bat bide okerra joango da.
/ip firewall mangle
add chain=prerouting src-address-list=users-over-isp1 dst-address-type=!local action=mark-routing new-routing-mark=over-isp1
add chain=prerouting src-address-list=users-over-isp2 dst-address-type=!local action=mark-routing new-routing-mark=over-isp2
Bideratze-taula batean erabiltzaileak "blokeatu" ditzakezu [IP]->[Route]->[Rules]
:
/ip route rules
add routing-mark=over-isp1 action=lookup-only-in-table table=over-isp1
add routing-mark=over-isp2 action=lookup-only-in-table table=over-isp2
Edo bidez [IP]->[Firewall]->[Filter]
:
/ip firewall filter
add chain=forward routing-mark=over-isp1 out-interface=!ether1 action=reject
add chain=forward routing-mark=over-isp2 out-interface=!ether2 action=reject
Erretiroa pro dst-address-type=!local
Baldintza gehigarria dst-address-type=!local
beharrezkoa da erabiltzaileen trafikoa bideratzailearen tokiko prozesuetara iristea (dns, winbox, ssh, ...). Tokiko azpisare batzuk bideratzailera konektatzen badira, haien arteko trafikoa Internetera ez doala ziurtatu behar da, adibidez, erabiliz. dst-address-table
.
Adibidean erabiliz [IP]->[Route]->[Rules]
ez dago halako salbuespenik, baina trafikoa tokiko prozesuetara iristen da. Kontua da markatutako FIB paketean sartzea [PREROUTING|Mangle]
ibilbide-etiketa bat du eta nagusi ez den bideratze-taula batera doa, non interfaze lokalik ez dagoen. Bideratze-arauen kasuan, lehenik eta behin paketea prozesu lokal baterako pentsatuta dagoen egiaztatzen da eta Erabiltzaile PBR fasean bakarrik joaten den zehaztutako bideratze-taulara.
Erabiltzea [IP]->[Firewall]->[Mangle action=route]
Ekintza honek bakarrik funtzionatzen du [Prerouting|Mangle]
eta trafikoa zehaztutako atebidera bideratzeko aukera ematen du bideratze-taula gehigarririk erabili gabe, atebidearen helbidea zuzenean zehaztuz:
/ip firewall mangle
add chain=prerouting src-address=192.168.100.0/25 action=route gateway=10.10.10.1
add chain=prerouting src-address=192.168.128.0/25 action=route gateway=10.20.20.1
efektu route
bideratze-arauak baino lehentasun txikiagoa du ([IP]->[Route]->[Rules]
). Ibilbide-marken kasuan, dena arauen posizioaren araberakoa da, arauarekin bada action=route
baino gehiago balio du action=mark-route
, orduan erabiliko da (bandera edozein dela ere passtrough
), bestela ibilbidea markatuz.
Wikian oso informazio gutxi dago ekintza honi buruz eta ondorio guztiak esperimentalki lortzen dira, edonola ere, ez dut aukerarik aurkitu aukera hau erabiltzeak abantailak ematen dituenean besteekiko.
PPC oinarritutako oreka dinamikoa
Konexio-sailkatzaile bakoitzeko - ECMP-ren analogo malguagoa da. ECMP-k ez bezala, trafikoa konexioen arabera banatzen du zorrotzago (ECMP-k ez daki ezer konexioei buruz, baina Routing Cache-rekin parekatzen denean, antzeko zerbait lortzen da).
PCC hartzen du zehaztutako eremuak ip goiburutik, 32 biteko balio batean bihurtzen ditu eta zatitzen ditu izendatzailea. Zatiketaren gainerakoa zehaztutakoarekin alderatzen da hondarra eta bat badatoz, orduan zehaztutako ekintza aplikatuko da.
Hiru helbide dituen adibidea:
192.168.100.10: 192+168+100+10 = 470 % 3 = 2
192.168.100.11: 192+168+100+11 = 471 % 3 = 0
192.168.100.12: 192+168+100+12 = 472 % 3 = 1
Hiru kanalen artean src.address bidez trafikoaren banaketa dinamikoaren adibide bat:
#Π’Π°Π±Π»ΠΈΡΠ° ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ
/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1 dist=1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.20.20.1 dist=2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.30.30.1 dist=3 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.10.10.1 dist=1 routing-mark=over-isp1
add dst-address=0.0.0.0/0 gateway=10.20.20.1 dist=1 routing-mark=over-isp2
add dst-address=0.0.0.0/0 gateway=10.30.30.1 dist=1 routing-mark=over-isp3
#ΠΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΈ ΠΌΠ°ΡΡΡΡΡΠΎΠ²
/ip firewall mangle
add chain=prerouting in-interface=br-lan dst-address-type=!local connection-state=new per-connection-classifier=src-address:3/0 action=mark-connection new-connection-mark=conn-over-isp1
add chain=prerouting in-interface=br-lan dst-address-type=!local connection-state=new per-connection-classifier=src-address:3/1 action=mark-connection new-connection-mark=conn-over-isp2
add chain=prerouting in-interface=br-lan dst-address-type=!local connection-state=new per-connection-classifier=src-address:3/2 action=mark-connection new-connection-mark=conn-over-isp3
add chain=prerouting in-interface=br-lan connection-mark=conn-over-isp1 action=mark-routing new-routing-mark=over-isp1
add chain=prerouting in-interface=br-lan connection-mark=conn-over-isp2 action=mark-routing new-routing-mark=over-isp2
add chain=prerouting in-interface=br-lan connection-mark=conn-over-isp3 action=mark-routing new-routing-mark=over-isp3
Ibilbideak markatzean, baldintza gehigarri bat dago: in-interface=br-lan
, azpian gabe action=mark-routing
Interneteko erantzun-trafikoa lortuko da eta, bideratze-taulen arabera, hornitzailera itzuliko da.
Komunikazio kanalak aldatzea
Egiaztatu ping tresna ona da, baina gertuen dagoen IP parekoarekin konexioa egiaztatzen du, hornitzaileen sareak normalean bideratzaile ugariz osatuta daude eta konexio eten bat gerta daiteke gertuen dagoen parekidetik kanpo, eta, ondoren, bizkarrezurreko telekomunikazio-operadoreak ere badaude. arazoak izan, orokorrean check ping-ek ez du beti sare globalerako sarbideari buruzko informazio eguneratua erakusten.
Hornitzaileek eta korporazio handiek BGP bideratze dinamikoko protokoloa badute, etxeko eta bulegoko erabiltzaileek modu independentean asmatu beharko dute Interneterako sarbidea komunikazio kanal zehatz baten bidez nola egiaztatu.
Normalean, komunikazio-kanal jakin baten bidez Interneten ip helbide baten erabilgarritasuna egiaztatzen duten script-ak erabiltzen dira, fidagarria den zerbait aukeratzen duten bitartean, adibidez, google dns: 8.8.8.8. 8.8.4.4. Baina Mikrotik komunitatean tresna interesgarriagoa egokitu da horretarako.
Bideratze errekurtsiboari buruzko hitz batzuk
Bideratze errekurtsiboa beharrezkoa da Multihop BGP peering-a eraikitzean eta bideratze estatikoaren oinarriei buruzko artikuluan sartu zen MikroTik-eko erabiltzaile maltzurengatik soilik, egiaztapen atebidearekin parekatuta bide errekurtsiboak nola erabili script gehigarririk gabe komunikazio-kanalak aldatzeko.
Helmuga / xede-esparruaren aukerak termino orokorrean ulertzeko eta ibilbidea interfazeari nola lotzen den ulertzeko garaia da:
- Ibilbideak interfaze bat bilatzen du paketea bidaltzeko bere esparru-balioan eta helburu-esparru-balio berdinak edo txikiagoak dituzten taula nagusiko sarrera guztietan oinarrituta.
- Aurkitutako interfazeetatik, zehaztutako atebidera pakete bat bidal dezakezuna hautatzen da
- Aurkitutako konektatutako sarreraren interfazea hautatzen da paketea atebidera bidaltzeko
Ibilbide errekurtsibo baten aurrean, dena berdin gertatzen da, baina bi fasetan:
- 1-3 Konektatutako bideei beste bide bat gehitzen zaie, eta horren bidez zehaztutako atebidera irits daiteke
- 4-6 "Bitarteko" atebiderako konektaturiko ibilbidea bilatzea
Bilaketa errekurtsiboa duten manipulazio guztiak RIBean gertatzen dira, eta azken emaitza soilik FIBra transferitzen da: 0.0.0.0/0 via 10.10.10.1 on ether1
.
Ibilbideak aldatzeko bideratze errekurtsiboa erabiltzearen adibide bat
Konfigurazioa:
/ip route
add dst-address=0.0.0.0/0 gateway=8.8.8.8 check-gateway=ping distance=1 target-scope=10
add dst-address=8.8.8.8 gateway=10.10.10.1 scope=10
add dst-address=0.0.0.0/0 gateway=10.20.20.1 distance=2
Egiaztatu dezakezu paketeak 10.10.10.1 helbidera bidaliko direla:
Check gateway-k ez daki ezer bideratze errekurtsiboari buruz eta ping-ak bidaltzen ditu 8.8.8.8-ra, zeina (taula nagusian oinarrituta) 10.10.10.1 atebidearen bidez eskura daiteke.
10.10.10.1 eta 8.8.8.8 artean komunikazioa galtzen bada, ibilbidea deskonektatuko da, baina 8.8.8.8rako paketeek (probako pingak barne) 10.10.10.1etik jarraitzen dute:
Ether1-erako esteka galtzen bada, egoera desatsegina gertatzen da 8.8.8.8 aurreko paketeak bigarren hornitzailetik pasatzen direnean:
Arazo bat da NetWatch erabiltzen ari bazara scriptak exekutatzeko 8.8.8.8 erabilgarri ez dagoenean. Esteka hautsita badago, NetWatch-ek babeskopiako komunikazio kanalaren bidez funtzionatuko du eta dena ondo dagoela suposatuko du. Iragazki-bide gehigarri bat gehituz konpondu da:
/ip route
add dst-address=8.8.8.8 gateway=10.20.20.1 distance=100 type=blackhole
On habrΓ© dago
Eta bai, horrelako erreserba bat erabiltzean, 8.8.8.8 helbidea hornitzaileetako bati kableatutakoa izango da, beraz, dns iturri gisa aukeratzea ez da ideia ona.
Bideratze eta birbidaltze birtuala (VRF) buruzko hitz batzuk
VRF teknologia hainbat bideratzaile birtual sortzeko diseinatuta dago fisiko baten barruan, teknologia hau oso erabilia da telekomunikazio-operadoreek (normalean MPLSrekin batera) L3VPN zerbitzuak eskaintzeko azpisare-helbide gainjarri dituzten bezeroei:
Baina Mikrotik-en VRF bideratze-taulen arabera antolatuta dago eta hainbat desabantaila ditu, adibidez, bideratzailearen ip helbideak VRF guztietatik eskuragarri daude, gehiago irakurri dezakezu.
vrf konfigurazio adibidea:
/ip route vrf
add interfaces=ether1 routing-mark=vrf1
add interfaces=ether2 routing-mark=vrf2
/ip address
add address=192.168.100.1/24 interface=ether1 network=192.168.100.0
add address=192.168.200.1/24 interface=ether2 network=192.168.200.0
Ether2-ra konektatuta dagoen gailutik, ping-a beste vrf batetik bideratzailearen helbidera doala ikusten dugu (eta hau arazo bat da), ping-a, berriz, Internetera ez doan:
Internetera sartzeko, taula nagusira sartzen den ibilbide gehigarri bat erregistratu behar duzu (vrf terminologian, ibilbide-filtrazioa deitzen da):
/ip route
add distance=1 gateway=172.17.0.1@main routing-mark=vrf1
add distance=1 gateway=172.17.0.1%wlan1 routing-mark=vrf2
Hona hemen ibilbideak ihes egiteko bi modu: bideratze-taula erabiltzea: 172.17.0.1@main
eta interfazearen izena erabiliz: 172.17.0.1%wlan1
.
Eta ezarri itzulerako trafikorako markaketa [PREROUTING|Mangle]
:
/ip firewall mangle
add chain=prerouting in-interface=ether1 action=mark-connection new-connection-mark=from-vrf1 passthrough=no
add chain=prerouting connection-mark=from-vrf1 routing-mark=!vrf1 action=mark-routing new-routing-mark=vrf1 passthrough=no
add chain=prerouting in-interface=ether2 action=mark-connection new-connection-mark=from-vrf2 passthrough=no
add chain=prerouting connection-mark=from-vrf2 routing-mark=!vrf1 action=mark-routing new-routing-mark=vrf2 passthrough=no
Helbide bereko azpisareak
Bideratzaile berean helbide berdina duten azpisareetarako sarbidearen antolaketa VRF eta sare mapa erabiliz:
Oinarrizko konfigurazioa:
/ip route vrf
add interfaces=ether1 routing-mark=vrf1
add interfaces=ether2 routing-mark=vrf2
/ip address
add address=192.168.100.1/24 interface=ether1 network=192.168.100.0
add address=192.168.100.1/24 interface=ether2 network=192.168.100.0
add address=192.168.0.1/24 interface=ether3 network=192.168.0.0
suebakiaren arauak:
#ΠΠ°ΡΠΊΠΈΡΡΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ
/ip firewall mangle
add chain=prerouting dst-address=192.168.101.0/24 in-interface=ether3 action=mark-routing new-routing-mark=vrf1 passthrough=no
add chain=prerouting dst-address=192.168.102.0/24 in-interface=ether3 action=mark-routing new-routing-mark=vrf2 passthrough=no
#Π‘ΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ netmap Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌ Π°Π΄ΡΠ΅ΡΠ° "ΡΡΠΈΠΌΠ΅ΡΠ½ΡΡ
" ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ΄ΡΠ΅ΡΠΈ
/ip firewall nat
add chain=dstnat dst-address=192.168.101.0/24 in-interface=ether3 action=netmap to-addresses=192.168.100.0/24
add chain=dstnat dst-address=192.168.102.0/24 in-interface=ether3 action=netmap to-addresses=192.168.100.0/24
Itzulerako trafikoaren bideratze-arauak:
#Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΡΠ°ΡΡΡΡ route leaking, Π½ΠΎ ΠΏΠΎ ΡΡΡΠΈ ΡΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π½Π°Π»ΠΎΠ³ connected ΠΌΠ°ΡΡΡΡΡΠ°
/ip route
add distance=1 dst-address=192.168.0.0/24 gateway=ether3 routing-mark=vrf1
add distance=1 dst-address=192.168.0.0/24 gateway=ether3 routing-mark=vrf2
Dhcp bidez jasotako ibilbideak gehitzea bideratze-taula jakin batean
VRF interesgarria izan daiteke ibilbide dinamiko bat automatikoki gehitu behar baduzu (adibidez, dhcp bezero batetik) bideratze-taula zehatz batean.
Interfazea gehitzea vrf-i:
/ip route vrf
add interface=ether1 routing-mark=over-isp1
Trafikoa (irteerakoa eta igarobidea) taulatik bidaltzeko arauak gehiegizko isp1:
/ip firewall mangle
add chain=output out-interface=!br-lan action=mark-routing new-routing-mark=over-isp1 passthrough=no
add chain=prerouting in-interface=br-lan dst-address-type=!local action=mark-routing new-routing-mark=over-isp1 passthrough=no
Irteerako bideratze lanera bideratzeko bide gehigarria eta faltsua:
/interface bridge
add name=bare
/ip route
add dst-address=0.0.0.0/0 gateway=bare
Ibilbide hau bakarrik behar da irteerako pakete lokalak Bideratze erabakitik (2) aurretik pasa daitezen [OUTPUT|Mangle]
eta lortu bideratze-etiketa, taula nagusian 0.0.0.0/0 baino lehen bideratzailean beste ibilbide aktibo batzuk badaude, ez da beharrezkoa.
katean connected-in
ΠΈ dynamic-in
Π² [Routing] -> [Filters]
Ibilbide-iragazkia (sarrera eta irteera) bideratze dinamikoko protokoloekin batera erabili ohi den tresna bat da (eta, beraz, paketea instalatu ondoren bakarrik eskuragarri dago). routing), baina bi kate interesgarri daude sarrerako iragazkietan:
- connect-in β konektatutako ibilbideak iragazten
- dynamic-in - PPP eta DCHP-ek jasotako ibilbide dinamikoak iragazten ditu
Iragazkiak ibilbideak baztertzeaz gain, hainbat aukera alda ditzakezu: distantzia, bide-marka, iruzkina, esparrua, xede-esparrua,...
Tresna oso zehatza da eta bideratze-iragazkirik gabe zerbait egin dezakezun (baina ez script-ak), ez erabili bideratze-iragazkiak, ez nahastu zeure burua eta zure ondoren bideratzailea konfiguratuko dutenak. Bideratze dinamikoaren testuinguruan, bideratze-iragazkiak askoz maizago eta produktiboago erabiliko dira.
Ibilbide dinamikoetarako bide-marka ezartzea
Etxeko bideratzaile baten adibidea. Bi VPN konexio konfiguratuta dauzkat eta horien trafikoa bideratze-taulen arabera bildu behar da. Aldi berean, interfazea aktibatzen denean ibilbideak automatikoki sortzea nahi dut:
#ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ vpn ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ default route ΠΈ Π·Π°Π΄Π°Π΅ΠΌ Π΄ΠΈΡΡΠ°Π½ΡΠΈΡ
/interface pptp-client
add connect-to=X.X.X.X add-default-route=yes default-route-distance=101 ...
add connect-to=Y.Y.Y.Y add-default-route=yes default-route-distance=100 ...
#Π€ΠΈΠ»ΡΡΡΠ°ΠΌΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΌΠ°ΡΡΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠΎΠ΄ΡΠ΅ΡΠΈ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΈ
/routing filter
add chain=dynamic-in distance=100 prefix=0.0.0.0/0 action=passthrough set-routing-mark=over-vpn1
add chain=dynamic-in distance=101 prefix=0.0.0.0/0 action=passthrough set-routing-mark=over-vpn2
Ez dakit zergatik, seguruenik akats bat, baina ppp interfazerako vrf bat sortzen baduzu, 0.0.0.0/0-rako bidea oraindik taula nagusira sartuko da. Bestela, dena are errazagoa izango litzateke.
Konektatutako ibilbideak desgaitzea
Batzuetan hau beharrezkoa da:
/route filter
add chain=connected-in prefix=192.168.100.0/24 action=reject
Arazketa tresnak
RouterOS-ek hainbat tresna eskaintzen ditu bideraketa arazketarako:
[Tool]->[Tourch]
- interfazeetan paketeak ikusteko aukera ematen du/ip route check
- paketea zein atebidetara bidaliko den ikusteko aukera ematen du, ez du funtzionatzen bideratze-taulekin/ping routing-table=<name>
ΠΈ/tool traceroute routing-table=<name>
- Egin ping eta trazatu zehaztutako bideratze-taula erabilizaction=log
Π²[IP]->[Firewall]
- Pakete baten ibilbidea pakete-fluxuan zehar trazatzeko aukera ematen duen tresna bikaina, ekintza hau kate eta taula guztietan dago eskuragarri
Iturria: www.habr.com