Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Uelekezaji ni mchakato wa kutafuta njia bora ya kusambaza pakiti kupitia mitandao ya TCP/IP. Kifaa chochote kilichounganishwa kwenye mtandao wa IPv4 kina mchakato na jedwali za kuelekeza.

Nakala hii sio HOWTO, inaelezea uelekezaji tuli katika RouterOS na mifano, niliacha kwa makusudi mipangilio mingine yote (kwa mfano, srcnat ya kupata mtandao), kwa hivyo kuelewa nyenzo kunahitaji kiwango fulani cha maarifa ya mitandao na RouterOS.

Kubadilisha na kuelekeza

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kubadilisha ni mchakato wa kubadilishana pakiti ndani ya sehemu moja ya Layer2 (Ethernet, ppp, ...). Ikiwa kifaa kinaona kuwa mpokeaji wa pakiti yuko kwenye subnet sawa ya Ethernet nayo, hujifunza anwani ya mac kwa kutumia itifaki ya arp na kupitisha pakiti moja kwa moja, ikipita router. Muunganisho wa ppp (point-to-point) unaweza kuwa na washiriki wawili tu na pakiti hutumwa kila mara kwa anwani moja 0xff.

Uelekezaji ni mchakato wa kuhamisha pakiti kati ya sehemu za Layer2. Ikiwa kifaa kinataka kutuma pakiti ambayo mpokeaji wake yuko nje ya sehemu ya Ethaneti, hutazama kwenye jedwali lake la uelekezaji na kupitisha pakiti hiyo kwenye lango, ambalo linajua mahali pa kutuma pakiti inayofuata (au labda hajui, mtumaji asili wa pakiti hiyo. hawajui hili).

Njia rahisi zaidi ya kufikiria kipanga njia ni kama kifaa kilichounganishwa kwa sehemu mbili au zaidi za Layer2 na chenye uwezo wa kupitisha pakiti kati yao kwa kuamua njia bora kutoka kwa jedwali la kuelekeza.

Ikiwa unaelewa kila kitu, au tayari unajua, basi soma. Kwa wengine, ninapendekeza sana ujitambulishe na ndogo, lakini yenye uwezo sana makala.

Kuelekeza katika RouterOS na PacketFlow

Takriban utendakazi wote unaohusiana na uelekezaji tuli uko kwenye kifurushi mfumo. Mfuko wa plastiki kusafiri huongeza usaidizi wa algoriti za uelekezaji (RIP, OSPF, BGP, MME), Vichujio vya Uelekezaji na BFD.

Menyu kuu ya kusanidi njia: [IP]->[Route]. Mipangilio changamano inaweza kuhitaji pakiti kuwekewa lebo ya awali katika: [IP]->[Firewall]->[Mangle] (minyororo PREROUTING ΠΈ OUTPUT).

Kuna sehemu tatu kwenye PacketFlow ambapo maamuzi ya pakiti ya pakiti ya IP hufanywa:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  1. Pakiti za uelekezaji zilizopokelewa na kipanga njia. Katika hatua hii, inaamuliwa ikiwa pakiti itaenda kwa mchakato wa ndani au itatumwa zaidi kwa mtandao. Vifurushi vya usafiri vinapokea Pato Interface
  2. Kuelekeza pakiti za ndani zinazotoka. Pakiti zinazotoka hupokea Pato Interface
  3. Hatua ya ziada ya uelekezaji kwa pakiti zinazotoka, hukuruhusu kubadilisha uamuzi wa uelekezaji [Output|Mangle]

  • Njia ya pakiti katika vitalu 1, 2 inategemea sheria katika [IP]->[Route]
  • Njia ya pakiti katika pointi 1, 2 na 3 inategemea sheria katika [IP]->[Route]->[Rules]
  • Njia ya kifurushi katika vitalu 1, 3 inaweza kuathiriwa kwa kutumia [IP]->[Firewall]->[Mangle]

RIB, FIB, Akiba ya Njia

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Msingi wa Taarifa za Njia
Msingi ambao njia hukusanywa kutoka kwa itifaki za uelekezaji zinazobadilika, njia kutoka kwa ppp na dhcp, njia tuli na zilizounganishwa. Hifadhidata hii ina njia zote, isipokuwa zile zilizochujwa na msimamizi.

Kwa masharti, tunaweza kudhani kuwa [IP]->[Route] inaonyesha RIB.

Msingi wa Taarifa
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Msingi ambao njia bora kutoka kwa RIB zinakusanywa. Njia zote katika FIB ni amilifu na hutumiwa kusambaza pakiti. Ikiwa njia inakuwa haifanyiki (imezimwa na msimamizi (mfumo), au interface ambayo pakiti inapaswa kutumwa haifanyi kazi), njia hiyo imeondolewa kwenye FIB.

Ili kufanya uamuzi wa uelekezaji, jedwali la FIB hutumia maelezo yafuatayo kuhusu pakiti ya IP:

  • Anwani Chanzo
  • Anwani ya kwenda
  • kiolesura cha chanzo
  • Alama ya uelekezaji
  • Sheria na Masharti (DSCP)

Kuingia kwenye kifurushi cha FIB hupitia hatua zifuatazo:

  • Kifurushi kimekusudiwa kwa mchakato wa kipanga njia cha ndani?
  • Je, pakiti inategemea mfumo au sheria za mtumiaji za PBR?
    • Ikiwa ndio, basi pakiti inatumwa kwenye jedwali maalum la uelekezaji
  • Pakiti inatumwa kwenye meza kuu

Kwa masharti, tunaweza kudhani kuwa [IP]->[Route Active=yes] inaonyesha FIB.

Akiba ya uelekezaji
Utaratibu wa kuweka akiba ya njia. Router inakumbuka ambapo pakiti zilitumwa na ikiwa kuna sawa (labda kutoka kwa uunganisho sawa) inawawezesha kwenda kwa njia sawa, bila kuangalia kwenye FIB. Akiba ya njia inafutwa mara kwa mara.

Kwa wasimamizi wa RouterOS, hawakutengeneza zana za kutazama na kudhibiti Cache ya Njia, lakini wakati inaweza kulemazwa. [IP]->[Settings].

Utaratibu huu uliondolewa kwenye kernel ya linux 3.6, lakini RouterOS bado inatumia kernel 3.3.5, labda Routing cahce ni moja ya sababu.

Ongeza kidirisha cha njia

[IP]->[Route]->[+]
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  1. Subnet ambayo ungependa kuunda njia yake (chaguo-msingi: 0.0.0.0/0)
  2. IP ya lango au kiolesura ambacho pakiti itatumwa (kunaweza kuwa na kadhaa, angalia ECMP hapa chini)
  3. Ukaguzi wa Upatikanaji wa Lango
  4. Aina ya rekodi
  5. Umbali (kipimo) kwa njia
  6. Jedwali la uelekezaji
  7. IP kwa pakiti za ndani zinazotoka kupitia njia hii
  8. Madhumuni ya Upeo na Upeo Lengwa imeandikwa mwishoni mwa makala.

Bendera za njia
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  • X - Njia imezimwa na msimamizi (disabled=yes)
  • A - Njia hutumiwa kutuma pakiti
  • D - Njia imeongezwa kwa nguvu (BGP, OSPF, RIP, MME, PPP, DHCP, Imeunganishwa)
  • C - Subnet imeunganishwa moja kwa moja kwenye kipanga njia
  • S - Njia tuli
  • r,b,o,m - Njia iliyoongezwa na mojawapo ya itifaki za uelekezaji zinazobadilika
  • B,U,P - Njia ya kuchuja (inadondosha pakiti badala ya kusambaza)

Nini cha kutaja katika lango: ip-anwani au kiolesura?

Mfumo hukuruhusu kutaja zote mbili, wakati hauapa na haitoi vidokezo ikiwa ulifanya kitu kibaya.

Anwani ya IP
Anwani ya lango lazima ifikiwe juu ya Layer2. Kwa Ethaneti, hii ina maana kwamba kipanga njia lazima kiwe na anwani kutoka kwa subnet sawa kwenye mojawapo ya violesura amilifu vya ip, kwa ppp, ambayo anwani ya lango imebainishwa kwenye mojawapo ya violesura amilifu kama anwani ndogo.
Ikiwa hali ya ufikivu ya Layer2 haijatimizwa, njia inachukuliwa kuwa haitumiki na haingii kwenye FIB.

interface
Kila kitu ni ngumu zaidi na tabia ya router inategemea aina ya interface:

  • Muunganisho wa PPP (Async, PPTP, L2TP, SSTP, PPPoE, OpenVPN *) huchukua washiriki wawili tu na pakiti itatumwa kila wakati kwenye lango la upitishaji, ikiwa lango litagundua kuwa mpokeaji ni yenyewe, basi itahamisha pakiti kwenda. mchakato wake wa ndani.
    Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS
  • Ethernet inachukua uwepo wa washiriki wengi na itatuma maombi kwa interface ya arp na anwani ya mpokeaji wa pakiti, hii inatarajiwa na tabia ya kawaida kabisa kwa njia zilizounganishwa.
    Lakini unapojaribu kutumia kiolesura kama njia ya subnet ya mbali, utapata hali ifuatayo: njia inafanya kazi, ping kwenye lango hupita, lakini haifikii mpokeaji kutoka kwa subnet maalum. Ukiangalia kiolesura kupitia kinusa, utaona maombi ya arp yenye anwani kutoka kwa subnet ya mbali.
    Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Jaribu kubainisha anwani ya ip kama lango inapowezekana. Isipokuwa ni njia zilizounganishwa (zilizoundwa kiotomatiki) na miingiliano ya PPP (Async, PPTP, L2TP, SSTP, PPPoE, OpenVPN*).

OpenVPN haina kichwa cha PPP, lakini unaweza kutumia jina la kiolesura cha OpenVPN kuunda njia.

Njia Maalum Zaidi

Kanuni ya msingi ya uelekezaji. Njia inayoelezea subnet ndogo (iliyo na barakoa kubwa zaidi ya subnet) inachukua kipaumbele katika uamuzi wa uelekezaji wa pakiti. Msimamo wa maingizo kwenye jedwali la uelekezaji hauhusiani na chaguo - kanuni kuu ni Maalum Zaidi.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Njia zote kutoka kwa mpango maalum ni kazi (iko katika FIB). elekeza kwa subnets tofauti na usigombane na kila mmoja.

Ikiwa moja ya lango halipatikani, njia inayohusishwa itachukuliwa kuwa haitumiki (imeondolewa kwenye FIB) na pakiti zitatafutwa kutoka kwa njia zilizosalia.

Njia iliyo na subnet 0.0.0.0/0 wakati mwingine hupewa maana maalum na inaitwa "Njia Chaguomsingi" au "Lango la njia ya mwisho". Kwa kweli, hakuna kitu cha kichawi ndani yake na inajumuisha tu anwani zote za IPv4 zinazowezekana, lakini majina haya yanaelezea kazi yake vizuri - inaonyesha lango la kupeleka pakiti ambazo hakuna njia zingine, sahihi zaidi.

Upeo unaowezekana wa barakoa ya IPv4 ni /32, njia hii inaelekeza kwa seva pangishi mahususi na inaweza kutumika katika jedwali la kuelekeza.

Kuelewa Njia Maalum Zaidi ni muhimu kwa kifaa chochote cha TCP/IP.

umbali

Umbali (au Vipimo) unahitajika kwa uchujaji wa kiutawala wa njia hadi kwenye mtandao mdogo unaofikiwa kupitia lango nyingi. Njia iliyo na kipimo cha chini inachukuliwa kuwa kipaumbele na itajumuishwa katika FIB. Ikiwa njia iliyo na kipimo cha chini itaacha kufanya kazi, basi itabadilishwa na njia yenye kipimo cha juu zaidi katika FIB.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Ikiwa kuna njia kadhaa za subnet sawa na metric sawa, router itaongeza moja tu kwenye meza ya FIB, inayoongozwa na mantiki yake ya ndani.

Kipimo kinaweza kuchukua thamani kutoka 0 hadi 255:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  • 0 - Kipimo cha njia zilizounganishwa. Umbali 0 hauwezi kuwekwa na msimamizi
  • 1-254 - Vipimo vinavyopatikana kwa msimamizi kwa kuweka njia. Vipimo vilivyo na thamani ya chini vina kipaumbele cha juu
  • 255 - Kipimo kinapatikana kwa msimamizi kwa kuweka njia. Tofauti na 1-254, njia yenye kipimo cha 255 daima hubakia isiyotumika na haingii kwenye FIB.
  • vipimo maalum. Njia zinazotokana na itifaki za uelekezaji zinazobadilika zina viwango vya kawaida vya metri

angalia lango

Angalia lango ni kiendelezi cha MikroTik RoutesOS kwa kuangalia upatikanaji wa lango kupitia icmp au arp. Mara baada ya kila sekunde 10 (haiwezi kubadilishwa), ombi linatumwa kwa lango, ikiwa jibu halijapokelewa mara mbili, njia inachukuliwa kuwa haipatikani na imeondolewa kwenye FIB. Ikiwa lango la kuangalia limezima njia ya kuangalia itaendelea na njia itaanza kutumika tena baada ya ukaguzi mmoja uliofaulu.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Angalia lango huzima ingizo ambalo limesanidiwa na maingizo mengine yote (katika majedwali yote ya uelekezaji na njia za ecmp) na lango lililobainishwa.

Kwa ujumla, angalia lango hufanya kazi vizuri mradi tu hakuna shida na upotezaji wa pakiti kwenye lango. Angalia lango halijui kinachoendelea na mawasiliano nje ya lango lililoangaliwa, hii inahitaji zana za ziada: hati, uelekezaji unaorudiwa, itifaki za uelekezaji badilika.

Itifaki nyingi za VPN na handaki zina zana zilizojengwa ndani za kuangalia shughuli za uunganisho, kuwezesha lango la kuangalia kwao ni mzigo wa ziada (lakini mdogo sana) kwenye mtandao na utendaji wa kifaa.

Njia za ECMP

Njia Nyingi za Gharama Sawa - kutuma pakiti kwa mpokeaji kwa kutumia lango kadhaa kwa wakati mmoja kwa kutumia algoriti ya Round Robin.

Njia ya ECMP imeundwa na msimamizi kwa kubainisha lango nyingi za subnet moja (au moja kwa moja, ikiwa kuna njia mbili sawa za OSPF).
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

ECMP hutumiwa kwa kusawazisha mzigo kati ya njia mbili, kwa nadharia, ikiwa kuna njia mbili katika njia ya ecmp, basi kwa kila pakiti chaneli inayotoka inapaswa kuwa tofauti. Lakini utaratibu wa cache ya Routing hutuma pakiti kutoka kwa uunganisho kando ya njia ambayo pakiti ya kwanza ilichukua, kwa sababu hiyo, tunapata aina ya kusawazisha kulingana na viunganisho (kusawazisha kwa upakiaji wa kila-unganisho).

Ukizima Cache ya Njia, basi pakiti katika njia ya ECMP zitashirikiwa kwa usahihi, lakini kuna tatizo na NAT. Sheria ya NAT inachakata tu pakiti ya kwanza kutoka kwa unganisho (iliyobaki inachakatwa kiotomatiki), na inabadilika kuwa pakiti zilizo na anwani sawa ya chanzo huacha miingiliano tofauti.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Angalia lango haifanyi kazi katika njia za ECMP (RouterOS bug). Lakini unaweza kukabiliana na kizuizi hiki kwa kuunda njia za ziada za uthibitishaji ambazo zitazima maingizo katika ECMP.

Kuchuja kwa njia ya Njia

Chaguo la Aina huamua nini cha kufanya na kifurushi:

  • unicast - tuma kwa lango maalum (kiolesura)
  • blackhole - kutupa pakiti
  • marufuku, haipatikani - tupa pakiti na tuma ujumbe wa icmp kwa mtumaji

Kuchuja kwa kawaida hutumiwa wakati ni muhimu kupata utumaji wa pakiti kwenye njia mbaya, bila shaka, unaweza kuchuja hii kupitia firewall.

Mifano michache

Kuunganisha mambo ya msingi kuhusu uelekezaji.

Router ya kawaida ya nyumbani
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/ip route
add dst-address=0.0.0.0/0 gateway=10.10.10.1

  1. Njia tuli ya 0.0.0.0/0 (njia chaguomsingi)
  2. Njia iliyounganishwa kwenye kiolesura na mtoaji
  3. Njia iliyounganishwa kwenye kiolesura cha LAN

Kipanga njia cha kawaida cha nyumbani na PPPoE
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  1. Njia tuli ya kuelekea njia chaguomsingi, imeongezwa kiotomatiki. imeainishwa katika sifa za uunganisho
  2. Njia iliyounganishwa ya unganisho la PPP
  3. Njia iliyounganishwa kwenye kiolesura cha LAN

Kipanga njia cha kawaida cha nyumbani na watoa huduma wawili na upungufu
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

  1. Njia tuli ya kuelekea njia chaguomsingi kupitia kwa mtoa huduma wa kwanza aliye na kipimo cha 1 na ukaguzi wa upatikanaji wa lango
  2. Njia tuli ya kuelekea njia chaguomsingi kupitia kwa mtoa huduma wa pili yenye kipimo cha 2
  3. Njia zilizounganishwa

Trafiki hadi 0.0.0.0/0 inapitia 10.10.10.1 wakati lango hili linapatikana, vinginevyo itabadilika hadi 10.20.20.1

Mpango kama huo unaweza kuzingatiwa kuwa uhifadhi wa kituo, lakini sio bila shida. Iwapo mapumziko yatatokea nje ya lango la mtoa huduma (kwa mfano, ndani ya mtandao wa opereta), kipanga njia chako hakitajua kuihusu na kitaendelea kuzingatia njia kuwa hai.

Kipanga njia cha kawaida cha nyumbani na watoa huduma wawili, upungufu na ECMP
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

  1. Njia tuli za kuangalia lango la chaki
  2. Njia ya ECMP
  3. Njia zilizounganishwa

Njia za kuangalia ni bluu (rangi ya njia zisizotumika), lakini hii haiingiliani na lango la kuangalia. Toleo la sasa (6.44) la RoS linatoa kipaumbele kiotomatiki kwa njia ya ECMP, lakini ni bora kuongeza njia za majaribio kwenye jedwali zingine za uelekezaji (chaguo). routing-mark)

Kwenye Speedtest na tovuti zingine zinazofanana, hakutakuwa na ongezeko la kasi (ECMP inagawanya trafiki kwa viunganisho, si kwa pakiti), lakini programu za p2p zinapaswa kupakua kwa kasi zaidi.

Kuchuja kupitia Njia
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

  1. Njia tuli ya kuelekea njia chaguomsingi
  2. Njia tuli ya 192.168.200.0/24 juu ya handaki ya ipip
  3. Inakataza njia tuli hadi 192.168.200.0/24 kupitia kipanga njia cha ISP

Chaguo la kuchuja ambalo trafiki ya handaki haitaenda kwa kipanga njia cha mtoa huduma wakati kiolesura cha ipip kimezimwa. Mipango hiyo haihitajiki sana, kwa sababu unaweza kutekeleza kuzuia kupitia firewall.

Kitanzi cha uelekezaji
Kitanzi cha uelekezaji - hali wakati pakiti inaendesha kati ya ruta kabla ya ttl kuisha. Kawaida ni matokeo ya hitilafu ya usanidi, katika mitandao mikubwa inatibiwa na utekelezaji wa itifaki za uelekezaji wa nguvu, kwa ndogo - kwa uangalifu.

Inaonekana kitu kama hiki:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Mfano (rahisi) wa jinsi ya kupata matokeo sawa:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Mfano wa kitanzi cha Njia sio matumizi ya vitendo, lakini inaonyesha kuwa vipanga njia havijui kuhusu jedwali la uelekezaji la jirani zao.

Uelekezaji Msingi wa Sera na Majedwali ya Ziada ya Uelekezaji

Wakati wa kuchagua njia, router hutumia shamba moja tu kutoka kwa kichwa cha pakiti (Anwani ya Dst.) - hii ni njia ya msingi. Uelekezaji kulingana na masharti mengine, kama vile anwani ya chanzo, aina ya trafiki (ToS), kusawazisha bila ECMP, ni ya Policy Base Routing (PBR) na hutumia majedwali ya ziada ya uelekezaji.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Njia Maalum Zaidi ndio kanuni kuu ya uteuzi wa njia ndani ya jedwali la kuelekeza.

Kwa chaguo-msingi, sheria zote za uelekezaji zinaongezwa kwenye jedwali kuu. Msimamizi anaweza kuunda nambari kiholela ya jedwali za ziada za uelekezaji na pakiti za njia kwao. Sheria katika meza tofauti hazipingani na kila mmoja. Ikiwa kifurushi hakipati sheria inayofaa kwenye jedwali maalum, itaenda kwenye meza kuu.

Mfano na usambazaji kupitia Firewall:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  • 192.168.100.10 -> 8.8.8.8
    1. Trafiki kutoka 192.168.100.10 hupewa lebo kupitia-isp1 Π² [Prerouting|Mangle]
    2. Katika hatua ya Upangaji kwenye jedwali kupitia-isp1 hutafuta njia ya 8.8.8.8
    3. Njia imepatikana, trafiki inatumwa kwa lango 10.10.10.1
  • 192.168.200.20 -> 8.8.8.8
    1. Trafiki kutoka 192.168.200.20 hupewa lebo kupitia-isp2 Π² [Prerouting|Mangle]
    2. Katika hatua ya Upangaji kwenye jedwali kupitia-isp2 hutafuta njia ya 8.8.8.8
    3. Njia imepatikana, trafiki inatumwa kwa lango 10.20.20.1
  • Ikiwa moja ya lango (10.10.10.1 au 10.20.20.1) haipatikani, basi pakiti itaenda kwenye meza. kuu na itatafuta njia inayofaa huko

Masuala ya istilahi

RouterOS ina masuala fulani ya istilahi.
Wakati wa kufanya kazi na sheria katika [IP]->[Routes] jedwali la uelekezaji limeonyeshwa, ingawa imeandikwa kuwa lebo:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Π’ [IP]->[Routes]->[Rule] kila kitu ni sawa, katika hali ya lebo kwenye hatua ya jedwali:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Jinsi ya kutuma pakiti kwenye meza maalum ya uelekezaji

RouterOS hutoa zana kadhaa:

  • Kanuni katika [IP]->[Routes]->[Rules]
  • Alama za njia (action=mark-routing) ndani [IP]->[Firewall]->[Mangle]
  • Ugani wa VRF

Kanuni [IP]->[Route]->[Rules]
Sheria zinasindika kwa sequentially, ikiwa pakiti inafanana na masharti ya utawala, haipiti zaidi.

Kanuni za Njia hukuruhusu kupanua uwezekano wa kuelekeza, kutegemea sio tu anwani ya mpokeaji, lakini pia kwenye anwani ya chanzo na kiolesura ambacho pakiti ilipokelewa.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Sheria zinajumuisha masharti na hatua:

  • Masharti. Rudia kwa vitendo orodha ya ishara ambazo kifurushi kikaangaliwa katika FIB, ToS pekee haipo.
  • Shughuli
    • kuangalia - tuma pakiti kwenye meza
    • angalia tu kwenye meza - funga kifurushi kwenye meza, ikiwa njia haipatikani, kifurushi hakitaenda kwenye meza kuu.
    • tone - tone pakiti
    • haifikiki - tupa pakiti iliyo na arifa ya mtumaji

Katika FIB, trafiki kwa michakato ya ndani inachakatwa kwa kupita sheria [IP]->[Route]->[Rules]:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

kuashiria [IP]->[Firewall]->[Mangle]
Lebo za uelekezaji hukuruhusu kuweka lango la pakiti kwa kutumia karibu masharti yoyote ya Firewall:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kwa kweli, kwa sababu sio zote zina maana, na zingine zinaweza kufanya kazi bila utulivu.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kuna njia mbili za kuweka lebo kwenye kifurushi:

  • Mara moja kuweka alama ya uelekezaji
  • Weka kwanza alama ya uunganisho, basi kulingana na alama ya uunganisho kuweka alama ya uelekezaji

Katika makala kuhusu firewalls, niliandika kwamba chaguo la pili ni vyema. hupunguza mzigo kwenye cpu, katika kesi ya njia za kuashiria - hii si kweli kabisa. Njia hizi za kuashiria sio sawa kila wakati na kawaida hutumiwa kutatua shida kadhaa.

Mifano ya matumizi

Hebu tuendelee kwenye mifano ya kutumia Policy Base Routing, ni rahisi zaidi kuonyesha kwa nini hii yote inahitajika.

MultiWAN na kurejesha trafiki inayotoka (Pato).
Tatizo la kawaida na usanidi wa MultiWAN: Mikrotik inapatikana kutoka kwa Mtandao kupitia mtoaji "anayefanya kazi".
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Router haijali ombi la ip lilikuja, wakati wa kutoa jibu, itatafuta njia kwenye jedwali la uelekezaji ambapo njia kupitia isp1 inafanya kazi. Zaidi ya hayo, pakiti kama hiyo itachujwa njiani kwa mpokeaji.

Jambo lingine la kuvutia. Ikiwa chanzo "rahisi" nat kimesanidiwa kwenye kiolesura cha ether1: /ip fi nat add out-interface=ether1 action=masquerade kifurushi kitaenda mtandaoni na src. anwani=10.10.10.100, ambayo hufanya mambo kuwa mabaya zaidi.

Kuna njia kadhaa za kurekebisha shida, lakini yoyote kati yao itahitaji meza za ziada za uelekezaji:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Matumizi ya [IP]->[Route]->[Rules]
Bainisha jedwali la kuelekeza ambalo litatumika kwa pakiti zilizo na IP Chanzo maalum.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Inaweza kutumia action=lookup, lakini kwa trafiki ya ndani inayotoka, chaguo hili halijumuishi kabisa miunganisho kutoka kwa kiolesura kisicho sahihi.

  • Mfumo hutoa pakiti ya majibu na Src. Anwani: 10.20.20.200
  • Uamuzi wa Njia (2) hukagua hatua [IP]->[Routes]->[Rules] na pakiti hutumwa kwenye meza ya uelekezaji juu-isp2
  • Kulingana na jedwali la uelekezaji, pakiti lazima ipelekwe kwenye lango 10.20.20.1 kupitia kiolesura cha ether2.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Njia hii haihitaji Kifuatiliaji cha Muunganisho kinachofanya kazi, tofauti na kutumia jedwali la Mangle.

Matumizi ya [IP]->[Firewall]->[Mangle]
Uunganisho huanza na pakiti inayoingia, kwa hivyo tunaweka alama (action=mark-connection), kwa pakiti zinazotoka kutoka kwa unganisho lililowekwa alama, weka lebo ya uelekezaji (action=mark-routing).
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Ikiwa ips kadhaa zimeundwa kwenye kiolesura kimoja, unaweza kuongeza hali hiyo dst-address kuwa na uhakika.

  • Pakiti hufungua muunganisho kwenye kiolesura cha ether2. Kifurushi kinaingia [INPUT|Mangle] ambayo inasema kuashiria pakiti zote kutoka kwa unganisho kama kutoka-isp2
  • Mfumo hutoa pakiti ya majibu na Src. Anwani: 10.20.20.200
  • Katika hatua ya Uamuzi wa Njia(2), pakiti, kwa mujibu wa jedwali la uelekezaji, inatumwa kwa lango 10.20.20.1 kupitia kiolesura cha ether1. Unaweza kuthibitisha hili kwa kuingia kwenye vifurushi [OUTPUT|Filter]
  • Kwenye jukwaa [OUTPUT|Mangle] lebo ya muunganisho imeangaliwa kutoka-isp2 na pakiti hupokea lebo ya njia juu-isp2
  • Hatua ya Marekebisho ya Njia(3) hukagua uwepo wa lebo ya uelekezaji na kuituma kwa jedwali linalofaa la uelekezaji.
  • Kulingana na jedwali la uelekezaji, pakiti lazima ipelekwe kwenye lango 10.20.20.1 kupitia kiolesura cha ether2.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

MultiWAN na kurudisha trafiki ya dst-nat

Mfano ni ngumu zaidi, nini cha kufanya ikiwa kuna seva (kwa mfano, mtandao) nyuma ya router kwenye subnet ya kibinafsi na unahitaji kutoa upatikanaji wake kupitia watoa huduma yoyote.

/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

Kiini cha shida kitakuwa sawa, suluhisho ni sawa na chaguo la Firewall Mangle, minyororo mingine tu itatumika:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS
Mchoro hauonyeshi NAT, lakini nadhani kila kitu kiko wazi.

MultiWAN na viunganisho vya nje

Unaweza kutumia uwezo wa PBR kuunda viunganishi vingi vya vpn (SSTP katika mfano) kutoka kwa violesura tofauti vya vipanga njia.

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Jedwali za ziada za uelekezaji:

/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

Alama za kifurushi:

/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

Sheria rahisi za NAT, vinginevyo pakiti itaacha kiolesura na Src isiyo sahihi. anwani:

/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

Kuongeza:

  • Kipanga njia huunda michakato mitatu ya STTP
  • Katika hatua ya Uamuzi wa Njia (2), njia huchaguliwa kwa michakato hii kulingana na jedwali kuu la uelekezaji. Kutoka kwa njia hiyo hiyo, pakiti inapokea Src. Anwani imefungwa kwa kiolesura cha ether1
  • Π’ [Output|Mangle] pakiti kutoka kwa miunganisho tofauti hupokea lebo tofauti
  • Pakiti huingiza jedwali zinazolingana na lebo kwenye hatua ya Marekebisho ya Njia na kupokea njia mpya ya kutuma pakiti.
  • Lakini vifurushi bado vina Src. Anwani kutoka kwa ether1, kwenye jukwaa [Nat|Srcnat] anwani inabadilishwa kulingana na kiolesura

Inafurahisha, kwenye router utaona meza ifuatayo ya uunganisho:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kifuatiliaji cha Muunganisho hufanya kazi mapema [Mangle] ΠΈ [Srcnat], kwa hivyo viunganisho vyote vinatoka kwa anwani sawa, ikiwa unatazama kwa undani zaidi, basi ndani Replay Dst. Address kutakuwa na anwani baada ya NAT:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kwenye seva ya VPN (nina moja kwenye benchi ya majaribio), unaweza kuona kwamba viunganisho vyote vinatoka kwa anwani sahihi:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Shikilia njia
Kuna njia rahisi, unaweza kutaja lango maalum kwa kila moja ya anwani:

/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

Lakini njia kama hizo zitaathiri sio tu zinazotoka, lakini pia trafiki ya usafirishaji. Pamoja, ikiwa hauitaji trafiki kwa seva ya vpn ili kupitia njia zisizofaa za mawasiliano, basi itabidi uongeze sheria 6 zaidi kwa [IP]->[Routes]с type=blackhole. Katika toleo la awali - sheria 3 ndani [IP]->[Route]->[Rules].

Usambazaji wa miunganisho ya watumiaji kwa njia za mawasiliano

Rahisi, kazi za kila siku. Tena, meza za ziada za uelekezaji zitahitajika:

/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

Kutumia [IP]->[Route]->[Rules]
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Ikiwa unatumia action=lookup, basi wakati moja ya njia imezimwa, trafiki itaenda kwenye meza kuu na kupitia njia ya kazi. Ikiwa hii ni muhimu au la inategemea kazi.

Kutumia alama kwenye [IP]->[Firewall]->[Mangle]
Mfano rahisi na orodha ya anwani za ip. Kimsingi, karibu hali yoyote inaweza kutumika. Tahadhari pekee ya safu7, hata ikiwa imeunganishwa na maandiko ya uunganisho, inaweza kuonekana kuwa kila kitu kinafanya kazi kwa usahihi, lakini baadhi ya trafiki bado itaenda vibaya.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Unaweza "kuwafunga" watumiaji katika jedwali moja la kuelekeza kupitia [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

Ama kupitia [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

Retreat pro dst-address-type=!local
Hali ya ziada dst-address-type=!local ni muhimu kwamba trafiki kutoka kwa watumiaji kufikia michakato ya ndani ya router (dns, winbox, ssh, ...). Ikiwa subnets kadhaa za ndani zimeunganishwa kwenye router, ni muhimu kuhakikisha kuwa trafiki kati yao haiendi kwenye mtandao, kwa mfano, kutumia. dst-address-table.

Katika mfano kutumia [IP]->[Route]->[Rules] hakuna tofauti kama hizo, lakini trafiki hufikia michakato ya ndani. Ukweli ni kwamba kuingia kwenye kifurushi cha FIB kilichowekwa alama ndani [PREROUTING|Mangle] ina lebo ya njia na huenda kwenye jedwali la kuelekeza isipokuwa kuu, ambapo hakuna kiolesura cha ndani. Kwa upande wa Kanuni za Uelekezaji, kwanza inaangaliwa ikiwa pakiti imekusudiwa kwa mchakato wa ndani na ni katika hatua ya Mtumiaji PBR pekee ndipo inapoenda kwenye jedwali maalum la uelekezaji.

Kutumia [IP]->[Firewall]->[Mangle action=route]
Kitendo hiki kinafanya kazi tu ndani [Prerouting|Mangle] na hukuruhusu kuelekeza trafiki kwenye lango lililobainishwa bila kutumia jedwali za ziada za uelekezaji, kwa kubainisha anwani ya lango moja kwa moja:

/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

athari route ina kipaumbele cha chini kuliko sheria za uelekezaji ([IP]->[Route]->[Rules]) Katika kesi ya alama za njia, kila kitu kinategemea nafasi ya sheria, ikiwa utawala na action=route thamani zaidi kuliko action=mark-route, basi itatumika (bila kujali bendera passtrough), vinginevyo kuashiria njia.
Kuna habari kidogo sana kwenye wiki kuhusu hatua hii na hitimisho zote zinapatikana kwa majaribio, kwa hali yoyote, sikupata chaguzi wakati wa kutumia chaguo hili hutoa faida zaidi ya wengine.

Usawazishaji wa nguvu wa PPC

Per Connection Classifier - ni analogi rahisi zaidi ya ECMP. Tofauti na ECMP, inagawanya trafiki kwa viunganisho kwa ukali zaidi (ECMP haijui chochote kuhusu miunganisho, lakini inapooanishwa na Cache ya Njia, kitu kama hicho hupatikana).

PCC inachukua mashamba maalum kutoka kwa kichwa cha ip, hubadilisha kuwa thamani ya 32-bit, na kugawanya kwa dhehebu. Sehemu iliyobaki ya mgawanyiko inalinganishwa na iliyoainishwa salio na zikilingana, basi kitendo kilichobainishwa kinatumika. zaidi. Inaonekana wazimu, lakini inafanya kazi.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Mfano na anwani tatu:

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

Mfano wa usambazaji unaobadilika wa trafiki kwa src.anwani kati ya chaneli tatu:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

#Π’Π°Π±Π»ΠΈΡ†Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ
/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

Wakati wa kuashiria njia, kuna hali ya ziada: in-interface=br-lan, bila hiyo chini action=mark-routing trafiki ya majibu kutoka kwa Mtandao itapata na, kwa mujibu wa jedwali za uelekezaji, itarudi kwa mtoa huduma.

Kubadilisha njia za mawasiliano

Angalia ping ni zana nzuri, lakini inakagua tu unganisho na rika la karibu la IP, mitandao ya watoa huduma kawaida huwa na idadi kubwa ya ruta na mapumziko ya unganisho yanaweza kutokea nje ya wenzao wa karibu, na kisha kuna waendeshaji wa mawasiliano ya uti wa mgongo ambao wanaweza pia. kuwa na matatizo, kwa ujumla kuangalia ping haionyeshi habari ya kisasa kila wakati kuhusu ufikiaji wa mtandao wa kimataifa.
Iwapo watoa huduma na mashirika makubwa wana itifaki ya uelekezaji badilika ya BGP, basi watumiaji wa nyumbani na ofisini wanapaswa kufikiria kwa kujitegemea jinsi ya kuangalia ufikiaji wa mtandao kupitia njia mahususi ya mawasiliano.

Kwa kawaida, scripts hutumiwa kwamba, kupitia njia fulani ya mawasiliano, angalia upatikanaji wa anwani ya ip kwenye mtandao, huku ukichagua kitu cha kuaminika, kwa mfano, google dns: 8.8.8.8. 8.8.4.4. Lakini katika jumuiya ya Mikrotik, chombo cha kuvutia zaidi kimebadilishwa kwa hili.

Maneno machache kuhusu uelekezaji unaojirudia
Uelekezaji wa kujirudia ni muhimu wakati wa kujenga utazamaji wa Multihop BGP na uliingia katika makala kuhusu misingi ya uelekezaji tuli tu kutokana na watumiaji wa hila wa MikroTik ambao waligundua jinsi ya kutumia njia za kujirudia zilizooanishwa na lango la kuangalia ili kubadili njia za mawasiliano bila hati za ziada.

Ni wakati wa kuelewa chaguzi za upeo / lengo kwa maneno ya jumla na jinsi njia inavyounganishwa kwenye kiolesura:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  1. Njia hutafuta kiolesura cha kutuma pakiti kulingana na thamani yake ya upeo na maingizo yote kwenye jedwali kuu yenye thamani zisizozidi au sawa za mawanda ya lengo.
  2. Kutoka kwa miingiliano iliyopatikana, moja ambayo unaweza kutuma pakiti kwenye lango maalum imechaguliwa
  3. Kiolesura cha ingizo lililounganishwa limechaguliwa ili kutuma pakiti kwenye lango

Mbele ya njia ya kujirudia, kila kitu hufanyika sawa, lakini katika hatua mbili:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

  • 1-3 Njia moja zaidi imeongezwa kwa njia zilizounganishwa, ambazo lango maalum linaweza kufikiwa
  • 4-6 Kutafuta njia iliyounganishwa kwa lango la "kati".

Udanganyifu wote na utaftaji wa kujirudia hufanyika kwenye RIB, na matokeo ya mwisho tu huhamishiwa kwa FIB: 0.0.0.0/0 via 10.10.10.1 on ether1.

Mfano wa kutumia uelekezaji unaojirudia kubadili njia
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Usanidi:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Unaweza kuangalia kuwa pakiti zitatumwa kwa 10.10.10.1:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Check gateway haijui chochote kuhusu uelekezaji wa kujirudia na hutuma pings kwa 8.8.8.8, ambayo (kulingana na jedwali kuu) inapatikana kupitia lango 10.10.10.1.

Ikiwa kuna upotezaji wa mawasiliano kati ya 10.10.10.1 na 8.8.8.8, basi njia imekatwa, lakini pakiti (ikiwa ni pamoja na pings za mtihani) hadi 8.8.8.8 zinaendelea kupitia 10.10.10.1:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Ikiwa kiungo cha ether1 kinapotea, basi hali isiyofurahi hutokea wakati pakiti kabla ya 8.8.8.8 zinapitia kwa mtoa huduma wa pili:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Hili ni tatizo ikiwa unatumia NetWatch kuendesha hati wakati 8.8.8.8 haipatikani. Ikiwa kiungo kimevunjwa, NetWatch itafanya kazi kupitia njia mbadala ya mawasiliano na kudhani kuwa kila kitu kiko sawa. Imetatuliwa kwa kuongeza njia ya ziada ya kichujio:

/ip route
add dst-address=8.8.8.8 gateway=10.20.20.1 distance=100 type=blackhole

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Kuna juu ya habre makala, ambapo hali na NetWatch inazingatiwa kwa undani zaidi.

Na ndio, unapotumia nafasi kama hiyo, anwani 8.8.8.8 itakuwa ngumu kwa mmoja wa watoa huduma, kwa hivyo kuichagua kama chanzo cha dns sio wazo nzuri.

Maneno machache kuhusu Usambazaji na Usambazaji Mtandaoni (VRF)

Teknolojia ya VRF imeundwa ili kuunda ruta kadhaa pepe ndani ya moja halisi, teknolojia hii inatumiwa sana na waendeshaji simu (kawaida kwa kushirikiana na MPLS) kutoa huduma za L3VPN kwa wateja walio na anwani ndogo za mtandao zinazopishana:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Lakini VRF katika Mikrotik imepangwa kwa misingi ya meza za uelekezaji na ina idadi ya hasara, kwa mfano, anwani za ip za ndani za router zinapatikana kutoka kwa VRF zote, unaweza kusoma zaidi. ΠΏΠΎ ссылкС.

mfano wa usanidi wa vrf:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Kutoka kwa kifaa kilichounganishwa na ether2, tunaona kwamba ping huenda kwa anwani ya router kutoka kwa vrf nyingine (na hili ni tatizo), wakati ping haiendi kwenye mtandao:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Ili kufikia Mtandao, unahitaji kusajili njia ya ziada inayofikia jedwali kuu (katika istilahi za vrf, hii inaitwa kuvuja kwa njia):
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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

Hapa kuna njia mbili za kuvuja kwa njia: kutumia jedwali la uelekezaji: 172.17.0.1@main na kutumia jina la kiolesura: 172.17.0.1%wlan1.

Na weka alama kwa trafiki ya kurudi ndani [PREROUTING|Mangle]:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

/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 

Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Nyanda ndogo zilizo na anwani sawa
Shirika la ufikiaji wa subnets zilizo na anwani sawa kwenye kipanga njia sawa kwa kutumia VRF na netmap:
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Mpangilio wa kimsingi:

/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

sheria za firewall:

#ΠœΠ°Ρ€ΠΊΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ
/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

Sheria za uelekezaji wa trafiki ya kurudi:

#Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΈ интСрфСйса Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ 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

Inaongeza njia zilizopokelewa kupitia dhcp kwenye jedwali fulani la uelekezaji
VRF inaweza kuvutia ikiwa unahitaji kuongeza kiotomatiki njia inayobadilika (kwa mfano, kutoka kwa mteja wa dhcp) hadi kwa jedwali maalum la uelekezaji.

Kuongeza kiolesura kwa vrf:

/ip route vrf
add interface=ether1 routing-mark=over-isp1

Sheria za kutuma trafiki (zinazotoka na za kupita) kupitia jedwali juu-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

Njia ya ziada, ghushi ya uelekezaji wa nje kufanya kazi:

/interface bridge
add name=bare

/ip route
add dst-address=0.0.0.0/0 gateway=bare

Njia hii inahitajika tu ili pakiti za ndani zinazotoka zipitie uamuzi wa Njia (2) hapo awali [OUTPUT|Mangle] na upate lebo ya uelekezaji, ikiwa kuna njia zingine za kazi kwenye router kabla ya 0.0.0.0/0 kwenye meza kuu, haihitajiki.
Misingi ya Uelekezaji Tuli katika Mikrotik RouterOS

Minyororo connected-in ΠΈ dynamic-in Π² [Routing] -> [Filters]

Uchujaji wa njia (ya ndani na nje) ni zana ambayo kawaida hutumiwa pamoja na itifaki za uelekezaji zenye nguvu (na kwa hivyo inapatikana tu baada ya kusakinisha kifurushi. kusafiri), lakini kuna minyororo miwili ya kupendeza kwenye vichungi vinavyoingia:

  • imeunganishwa - kuchuja njia zilizounganishwa
  • dynamic-in - kuchuja njia zinazobadilika zilizopokewa na PPP na DCHP

Kuchuja hukuruhusu sio tu kutupa njia, lakini pia kubadilisha idadi ya chaguzi: umbali, alama ya uelekezaji, maoni, upeo, upeo wa lengo, ...

Hii ni zana sahihi sana na ikiwa unaweza kufanya kitu bila Vichungi vya Njia (lakini sio maandishi), basi usitumie Vichungi vya Njia, usijichanganye mwenyewe na wale ambao watasanidi kipanga njia baada yako. Katika muktadha wa uelekezaji unaobadilika, Vichujio vya Uelekezaji vitatumika mara kwa mara na kwa tija zaidi.

Kuweka Alama ya Uelekezaji kwa Njia Zenye Nguvu
Mfano kutoka kwa router ya nyumbani. Nina miunganisho miwili ya VPN iliyosanidiwa na trafiki ndani yao inapaswa kufungwa kwa mujibu wa jedwali za uelekezaji. Wakati huo huo, ninataka njia ziundwe kiotomatiki wakati kiolesura kimeamilishwa:

#ΠŸΡ€ΠΈ создании 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

Sijui kwa nini, labda mdudu, lakini ikiwa utaunda vrf kwa kiolesura cha ppp, basi njia ya 0.0.0.0/0 bado itaingia kwenye jedwali kuu. Vinginevyo, kila kitu kitakuwa rahisi zaidi.

Inalemaza Njia Zilizounganishwa
Wakati mwingine hii inahitajika:

/route filter
add chain=connected-in prefix=192.168.100.0/24 action=reject

Zana za kurekebisha hitilafu

RouterOS hutoa zana kadhaa za kurekebisha njia:

  • [Tool]->[Tourch] - hukuruhusu kutazama pakiti kwenye miingiliano
  • /ip route check - hukuruhusu kuona ni lango gani pakiti itatumwa, haifanyi kazi na meza za uelekezaji
  • /ping routing-table=<name> ΠΈ /tool traceroute routing-table=<name> - ping na kufuatilia kwa kutumia jedwali maalum la uelekezaji
  • action=log Π² [IP]->[Firewall] - zana bora ambayo hukuruhusu kufuata njia ya pakiti kando ya mtiririko wa pakiti, hatua hii inapatikana katika minyororo na meza zote.

Chanzo: mapenzi.com

Kuongeza maoni