Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్

పరిచయం

రష్యన్ మాట్లాడే టెలిగ్రామ్ కమ్యూనిటీ యొక్క ప్రొఫైల్ సమూహాలలో ఈ అంశంపై ప్రశ్నల యొక్క నిరుత్సాహకరమైన ఫ్రీక్వెన్సీ ద్వారా వ్యానిటీతో పాటు, కథనాన్ని చేపట్టడం ప్రేరేపించబడింది. వ్యాసం అనుభవం లేని Mikrotik RouterOS (ఇకపై ROSగా సూచించబడుతుంది) నిర్వాహకులను లక్ష్యంగా చేసుకుంది. ఇది రౌటింగ్‌కు ప్రాధాన్యతనిస్తూ మల్టీవాన్‌తో మాత్రమే వ్యవహరిస్తుంది. బోనస్‌గా, సురక్షితమైన మరియు అనుకూలమైన ఆపరేషన్‌ను నిర్ధారించడానికి కనిష్టంగా సరిపోయే సెట్టింగ్‌లు ఉన్నాయి. క్యూలు, లోడ్ బ్యాలెన్సింగ్, వ్లాన్‌లు, వంతెనలు, ఛానెల్ యొక్క స్థితి యొక్క బహుళ-దశల లోతైన విశ్లేషణ మరియు వంటి అంశాల బహిర్గతం కోసం చూస్తున్న వారు - చదవడానికి సమయం మరియు కృషిని వృథా చేయకపోవచ్చు.

మూల డేటా

పరీక్ష అంశంగా, ROS వెర్షన్ 6.45.3తో ఐదు-పోర్ట్ మైక్రోటిక్ రూటర్ ఎంచుకోబడింది. ఇది రెండు స్థానిక నెట్‌వర్క్‌లు (LAN1 మరియు LAN2) మరియు ముగ్గురు ప్రొవైడర్‌ల (ISP1, ISP2, ISP3) మధ్య ట్రాఫిక్‌ను రూట్ చేస్తుంది. ISP1కి ఛానెల్ స్థిరమైన "బూడిద" చిరునామాను కలిగి ఉంది, ISP2 - "తెలుపు", DHCP ద్వారా పొందబడింది, ISP3 - PPPoE అధికారంతో "తెలుపు". కనెక్షన్ రేఖాచిత్రం చిత్రంలో చూపబడింది:

Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్

పథకం ఆధారంగా MTK రౌటర్‌ను కాన్ఫిగర్ చేయడం పని:

  1. బ్యాకప్ ప్రొవైడర్‌కు ఆటోమేటిక్ స్విచింగ్‌ను అందించండి. ప్రధాన ప్రొవైడర్ ISP2, మొదటి రిజర్వ్ ISP1, రెండవ రిజర్వ్ ISP3.
  2. ISP1 ద్వారా మాత్రమే ఇంటర్నెట్‌కు LAN1 నెట్‌వర్క్ యాక్సెస్‌ను నిర్వహించండి.
  3. చిరునామా-జాబితా ఆధారంగా ఎంచుకున్న ప్రొవైడర్ ద్వారా స్థానిక నెట్‌వర్క్‌ల నుండి ఇంటర్నెట్‌కు ట్రాఫిక్‌ను రూట్ చేసే సామర్థ్యాన్ని అందించండి.
  4. స్థానిక నెట్‌వర్క్ నుండి ఇంటర్నెట్ (DSTNAT)కి సేవలను ప్రచురించే అవకాశాన్ని అందించండి
  5. ఇంటర్నెట్ నుండి కనీస తగినంత భద్రతను అందించడానికి ఫైర్‌వాల్ ఫిల్టర్‌ను సెటప్ చేయండి.
  6. ఎంచుకున్న సోర్స్ చిరునామాపై ఆధారపడి, రూటర్ తన స్వంత ట్రాఫిక్‌ను ముగ్గురు ప్రొవైడర్‌లలో ఎవరి ద్వారానైనా జారీ చేయగలదు.
  7. ప్రతిస్పందన ప్యాకెట్‌లు అవి వచ్చిన ఛానెల్‌కు (LANతో సహా) మళ్లించబడ్డాయని నిర్ధారించుకోండి.

గమనిక. వెర్షన్ నుండి వెర్షన్‌కు మారే ప్రారంభ కాన్ఫిగరేషన్‌లలో "అవుట్ ఆఫ్ ది బాక్స్"లో ఆశ్చర్యకరమైనవి లేవని హామీ ఇవ్వడానికి మేము రూటర్‌ను "మొదటి నుండి" కాన్ఫిగర్ చేస్తాము. Winbox కాన్ఫిగరేషన్ సాధనంగా ఎంపిక చేయబడింది, ఇక్కడ మార్పులు దృశ్యమానంగా ప్రదర్శించబడతాయి. సెట్టింగ్‌లు విన్‌బాక్స్ టెర్మినల్‌లోని ఆదేశాల ద్వారా సెట్ చేయబడతాయి. కాన్ఫిగరేషన్ కోసం భౌతిక కనెక్షన్ Ether5 ఇంటర్‌ఫేస్‌కు ప్రత్యక్ష కనెక్షన్ ద్వారా చేయబడుతుంది.

మల్టీవాన్ అంటే ఏమిటి, అది సమస్యా లేదా కుట్ర నెట్‌వర్క్‌లను నేయడం చుట్టూ మోసపూరిత తెలివైన వ్యక్తులు ఉన్నారా అనే దాని గురించి కొంచెం తార్కికం

ఒక పరిశోధనాత్మక మరియు శ్రద్ధగల నిర్వాహకుడు, అలాంటి లేదా అలాంటి స్కీమ్‌ను స్వయంగా ఏర్పాటు చేసుకుంటాడు, ఇది ఇప్పటికే సాధారణంగా పని చేస్తుందని అకస్మాత్తుగా తెలుసుకుంటాడు. అవును, అవును, మీ కస్టమ్ రూటింగ్ పట్టికలు మరియు ఇతర రూట్ నియమాలు లేకుండా, ఈ అంశంపై చాలా కథనాలు ఉన్నాయి. తనిఖీ చేద్దామా?

మేము ఇంటర్‌ఫేస్‌లు మరియు డిఫాల్ట్ గేట్‌వేలలో చిరునామాను కాన్ఫిగర్ చేయగలమా? అవును:

ISP1లో, చిరునామా మరియు గేట్‌వే నమోదు చేయబడ్డాయి దూరం=2 и చెక్-గేట్‌వే=పింగ్.
ISP2లో, డిఫాల్ట్ dhcp క్లయింట్ సెట్టింగ్ - తదనుగుణంగా, దూరం ఒకదానికి సమానంగా ఉంటుంది.
ISP3లో pppoe క్లయింట్ సెట్టింగ్‌లలో ఎప్పుడు add-default-route=అవును చాలు default-route-distance=3.

నిష్క్రమణలో NAT నమోదు చేయడం మర్చిపోవద్దు:

/ip ఫైర్‌వాల్ నాట్ యాడ్ యాక్షన్=మాస్క్వెరేడ్ చైన్=srcnat out-interface-list=WAN

ఫలితంగా, స్థానిక సైట్‌ల వినియోగదారులు ప్రధాన ISP2 ప్రొవైడర్ ద్వారా పిల్లులను డౌన్‌లోడ్ చేయడం ఆనందించండి మరియు మెకానిజం ఉపయోగించి ఛానెల్ రిజర్వేషన్ ఉంది గేట్‌వేని తనిఖీ చేయండి గమనిక 1 చూడండి

టాస్క్ యొక్క పాయింట్ 1 అమలు చేయబడింది. దాని మార్కులతో మల్టీవాన్ ఎక్కడ ఉంది? కాదు...

ఇంకా. మీరు ISP1 ద్వారా LAN నుండి నిర్దిష్ట క్లయింట్‌లను విడుదల చేయాలి:

/ip ఫైర్‌వాల్ మాంగిల్ యాడ్ యాక్షన్=రూట్ చైన్=ప్రీరౌటింగ్ dst-address-list=!బోగాన్స్
passthrough=అవును route-dst=100.66.66.1 src-address-list=Via_ISP1
/ip ఫైర్‌వాల్ మాంగిల్ యాడ్ యాక్షన్=రూట్ చైన్=ప్రీరౌటింగ్ dst-address-list=!బోగాన్స్
passthrough=నో రూట్-dst=100.66.66.1 src-address=192.168.88.0/24

టాస్క్‌లోని 2 మరియు 3 అంశాలు అమలు చేయబడ్డాయి. లేబుల్స్, స్టాంపులు, రూట్ రూల్స్, మీరు ఎక్కడ ఉన్నారు?!

ఇంటర్నెట్ నుండి క్లయింట్‌ల కోసం 172.17.17.17 చిరునామాతో మీకు ఇష్టమైన OpenVPN సర్వర్‌కు యాక్సెస్ ఇవ్వాలా? దయచేసి:

/ip క్లౌడ్ సెట్ ddns-enabled=yes

పీర్‌గా, మేము క్లయింట్‌కి అవుట్‌పుట్ ఫలితాన్ని అందిస్తాము: ":పుట్ [ip క్లౌడ్ dns-పేరు పొందండి]"

మేము ఇంటర్నెట్ నుండి పోర్ట్ ఫార్వార్డింగ్ నమోదు చేస్తాము:

/ip ఫైర్‌వాల్ నాట్ యాడ్ యాక్షన్=dst-nat chain=dstnat dst-port=1194
in-interface-list=WAN ప్రోటోకాల్=udp to-addresses=172.17.17.17

అంశం 4 సిద్ధంగా ఉంది.

మేము పాయింట్ 5 కోసం ఫైర్‌వాల్ మరియు ఇతర భద్రతను సెటప్ చేసాము, అదే సమయంలో ప్రతిదీ ఇప్పటికే వినియోగదారుల కోసం పని చేస్తున్నందుకు మేము సంతోషిస్తున్నాము మరియు ఇష్టమైన పానీయంతో కంటైనర్‌ను చేరుకుంటాము ...
అ! సొరంగాలు మర్చిపోయారు.

Google కథనం ద్వారా కాన్ఫిగర్ చేయబడిన l2tp-క్లయింట్, మీకు ఇష్టమైన డచ్ VDSకి పెరిగిందా? అవును.
IPsecతో l2tp-సర్వర్ పెరిగింది మరియు IP క్లౌడ్ నుండి DNS-పేరు ద్వారా క్లయింట్లు (పైన చూడండి.) అతుక్కుపోయారా? అవును.
మా కుర్చీలో వెనుకకు వంగి, పానీయం సిప్ చేస్తూ, మేము పనిలో 6 మరియు 7 పాయింట్లను సోమరిగా పరిశీలిస్తాము. మేము అనుకుంటున్నాము - మనకు ఇది అవసరమా? ఒకే, ఇది (సి) వలె పనిచేస్తుంది ... కాబట్టి, ఇది ఇంకా అవసరం లేకపోతే, అంతే. మల్టీవాన్ అమలు చేయబడింది.

మల్టీవాన్ అంటే ఏమిటి? ఇది ఒక రౌటర్‌కు అనేక ఇంటర్నెట్ ఛానెల్‌ల కనెక్షన్.

మీరు కథనాన్ని మరింత చదవనవసరం లేదు, ఎందుకంటే సందేహాస్పదమైన అనువర్తనాన్ని ప్రదర్శించడం కాకుండా ఏమి ఉంటుంది?

టాస్క్‌లోని 6 మరియు 7 పాయింట్లపై ఆసక్తి ఉన్నవారు మరియు పరిపూర్ణత యొక్క దురదను అనుభవించే వారి కోసం, మేము లోతుగా డైవ్ చేస్తాము.

మల్టీవాన్‌ను అమలు చేసే అతి ముఖ్యమైన పని సరైన ట్రాఫిక్ రూటింగ్. అవి: దేనితో సంబంధం లేకుండా (లేదా ఏది) చూడండి. గమనిక 3 ISP యొక్క ఛానెల్(లు) మా రౌటర్‌లోని డిఫాల్ట్ మార్గాన్ని చూస్తాయి, ఇది ప్యాకెట్ నుండి వచ్చిన ఖచ్చితమైన ఛానెల్‌కు ప్రతిస్పందనను అందించాలి. పని స్పష్టంగా ఉంది. సమస్య ఎక్కడ ఉంది? నిజమే, సాధారణ స్థానిక నెట్‌వర్క్‌లో, పని ఒకే విధంగా ఉంటుంది, కానీ అదనపు సెట్టింగ్‌లతో ఎవరూ బాధపడరు మరియు ఇబ్బందిని అనుభవించరు. వ్యత్యాసం ఏమిటంటే, ఇంటర్నెట్‌లోని ఏదైనా రూటబుల్ నోడ్‌ని మా ప్రతి ఛానెల్ ద్వారా యాక్సెస్ చేయవచ్చు మరియు సాధారణ LANలో వలె ఖచ్చితంగా నిర్దిష్టమైన వాటి ద్వారా కాదు. మరియు “ఇబ్బంది” ఏమిటంటే, ISP3 యొక్క IP చిరునామా కోసం మాకు అభ్యర్థన వస్తే, మా విషయంలో సమాధానం ISP2 ఛానెల్ ద్వారా వెళుతుంది, ఎందుకంటే డిఫాల్ట్ గేట్‌వే అక్కడ దర్శకత్వం వహించబడుతుంది. ఆకులు మరియు తప్పు అని ప్రొవైడర్ విస్మరించబడుతుంది. సమస్య గుర్తించబడింది. దాన్ని ఎలా పరిష్కరించాలి?

పరిష్కారం మూడు దశలుగా విభజించబడింది:

  1. ప్రీసెట్ చేస్తోంది. ఈ దశలో, రూటర్ యొక్క ప్రాథమిక సెట్టింగ్‌లు సెట్ చేయబడతాయి: స్థానిక నెట్‌వర్క్, ఫైర్‌వాల్, చిరునామా జాబితాలు, హెయిర్‌పిన్ NAT మొదలైనవి.
  2. మల్టీవాన్. ఈ దశలో, అవసరమైన కనెక్షన్‌లు గుర్తించబడతాయి మరియు రూటింగ్ పట్టికలుగా క్రమబద్ధీకరించబడతాయి.
  3. ISPకి కనెక్ట్ అవుతోంది. ఈ దశలో, ఇంటర్నెట్‌కు కనెక్షన్‌ని అందించే ఇంటర్‌ఫేస్‌లు కాన్ఫిగర్ చేయబడతాయి, రూటింగ్ మరియు ఇంటర్నెట్ ఛానెల్ రిజర్వేషన్ మెకానిజం సక్రియం చేయబడుతుంది.

1. ప్రీసెట్టింగ్

1.1 మేము కమాండ్‌తో రౌటర్ కాన్ఫిగరేషన్‌ను క్లియర్ చేస్తాము:

/system reset-configuration skip-backup=yes no-defaults=yes

అంగీకరిస్తున్నారు"ప్రమాదకరమైనది! ఏమైనా రీసెట్ చేయాలా? [y/N]:” మరియు, రీబూట్ చేసిన తర్వాత, మేము MAC ద్వారా Winboxతో కనెక్ట్ చేస్తాము. ఈ దశలో, కాన్ఫిగరేషన్ మరియు యూజర్ బేస్ క్లియర్ చేయబడతాయి.

1.2 కొత్త వినియోగదారుని సృష్టించండి:

/user add group=full name=knight password=ultrasecret comment=”Not horse”

దాని కింద లాగిన్ చేసి, డిఫాల్ట్‌ను తొలగించండి:

/user remove admin

గమనిక. ఇది డిఫాల్ట్ వినియోగదారుని తీసివేయడం మరియు నిలిపివేయడం కాదు, రచయిత సురక్షితమైనదిగా భావించి, ఉపయోగం కోసం సిఫార్సు చేస్తారు.

1.3 ఫైర్‌వాల్, డిస్కవరీ సెట్టింగ్‌లు మరియు ఇతర MAC సర్వర్‌లలో పనిచేసే సౌలభ్యం కోసం మేము ప్రాథమిక ఇంటర్‌ఫేస్ జాబితాలను సృష్టిస్తాము:

/interface list add name=WAN comment="For Internet"
/interface list add name=LAN comment="For Local Area"

వ్యాఖ్యలతో ఇంటర్‌ఫేస్‌లపై సంతకం చేయడం

/interface ethernet set ether1 comment="to ISP1"
/interface ethernet set ether2 comment="to ISP2"
/interface ethernet set ether3 comment="to ISP3"
/interface ethernet set ether4 comment="to LAN1"
/interface ethernet set ether5 comment="to LAN2"

మరియు ఇంటర్ఫేస్ జాబితాలను పూరించండి:

/interface list member add interface=ether1 list=WAN comment=ISP1
/interface list member add interface=ether2 list=WAN comment=ISP2 
/interface list member add interface=ether3 list=WAN comment="to ISP3"
/interface list member add interface=ether4 list=LAN  comment="LAN1"
/interface list member add interface=ether5 list=LAN  comment="LAN2"

గమనిక. అర్థమయ్యేలా వ్యాఖ్యానాలు రాయడం, దీని కోసం వెచ్చించిన సమయం విలువైనది, అంతేకాకుండా ఇది ట్రబుల్షూటింగ్ మరియు కాన్ఫిగరేషన్‌ను అర్థం చేసుకోవడంలో బాగా దోహదపడుతుంది.

ip ప్రోటోకాల్ దాని గుండా వెళ్ళనప్పటికీ, భద్రతా కారణాల దృష్ట్యా, ఈథర్ 3 ఇంటర్‌ఫేస్‌ను “WAN” ఇంటర్‌ఫేస్ జాబితాకు జోడించడం అవసరమని రచయిత భావించారు.

ఈథర్3లో PPP ఇంటర్‌ఫేస్ పెరిగిన తర్వాత, దానిని ఇంటర్‌ఫేస్ జాబితా “WAN”కి కూడా జోడించాల్సి ఉంటుందని మర్చిపోవద్దు.

1.4 మేము MAC ద్వారా ప్రొవైడర్ నెట్‌వర్క్‌ల నుండి పరిసర గుర్తింపు మరియు నియంత్రణ నుండి రూటర్‌ను దాచిపెడతాము:

/ip neighbor discovery-settings set discover-interface-list=!WAN
/tool mac-server set allowed-interface-list=LAN
/tool mac-server mac-winbox set allowed-interface-list=LAN

1.5 మేము రూటర్‌ను రక్షించడానికి అవసరమైన కనీస ఫైర్‌వాల్ ఫిల్టర్ నియమాలను సృష్టిస్తాము:

/ip firewall filter add action=accept chain=input comment="Related Established Untracked Allow" 
connection-state=established,related,untracked

(నియమం కనెక్ట్ చేయబడిన నెట్‌వర్క్‌లు మరియు రౌటర్ రెండింటి నుండి ప్రారంభించబడిన స్థాపించబడిన మరియు సంబంధిత కనెక్షన్‌లకు అనుమతిని అందిస్తుంది)

/ip firewall filter add action=accept chain=input comment="ICMP from ALL" protocol=icmp

(పింగ్ మరియు పింగ్ మాత్రమే కాదు. అన్ని icmp అనుమతించబడతాయి. MTU సమస్యలను కనుగొనడానికి చాలా ఉపయోగకరంగా ఉంటుంది)

/ip firewall filter add action=drop chain=input comment="All other WAN Drop" in-interface-list=WAN

(ఇన్‌పుట్ చైన్‌ను మూసివేసే నియమం ఇంటర్నెట్ నుండి వచ్చే అన్నింటిని నిషేధిస్తుంది)

/ip firewall filter add action=accept chain=forward 
comment="Established, Related, Untracked allow" 
connection-state=established,related,untracked

(రూటర్ గుండా వెళ్ళే స్థాపించబడిన మరియు సంబంధిత కనెక్షన్‌లను నియమం అనుమతిస్తుంది)

/ip firewall filter add action=drop chain=forward comment="Invalid drop" connection-state=invalid

(నియమం కనెక్షన్-స్టేట్=రౌటర్ ద్వారా చెల్లని పాసింగ్‌తో కనెక్షన్‌లను రీసెట్ చేస్తుంది. ఇది Mikrotik చేత గట్టిగా సిఫార్సు చేయబడింది, కానీ కొన్ని అరుదైన సందర్భాల్లో ఇది ఉపయోగకరమైన ట్రాఫిక్‌ను నిరోధించవచ్చు)

/ip firewall filter add action=drop chain=forward comment="Drop all from WAN not DSTNATed"  
connection-nat-state=!dstnat connection-state=new in-interface-list=WAN

(ఇంటర్నెట్ నుండి వచ్చిన ప్యాకెట్లను రూటర్ గుండా వెళ్ళడానికి dstnat విధానాన్ని ఆమోదించని ప్యాకెట్లను ఈ నియమం నిషేధిస్తుంది. ఇది మా బాహ్య నెట్‌వర్క్‌లతో ఒకే ప్రసార డొమైన్‌లో ఉండి, మా బాహ్య IPలను నమోదు చేసే చొరబాటుదారుల నుండి స్థానిక నెట్‌వర్క్‌లను రక్షిస్తుంది గేట్‌వే మరియు అందువలన, మా స్థానిక నెట్‌వర్క్‌లను "అన్వేషించడానికి" ప్రయత్నించండి.)

గమనిక. LAN1 మరియు LAN2 నెట్‌వర్క్‌లు విశ్వసనీయమైనవని మరియు వాటి మధ్య మరియు వాటి నుండి వచ్చే ట్రాఫిక్ ఫిల్టర్ చేయబడలేదని మనం అనుకుందాం.

1.6 నాన్-రూటబుల్ నెట్‌వర్క్‌ల జాబితాతో జాబితాను సృష్టించండి:

/ip firewall address-list
add address=0.0.0.0/8 comment=""This" Network" list=BOGONS
add address=10.0.0.0/8 comment="Private-Use Networks" list=BOGONS
add address=100.64.0.0/10 comment="Shared Address Space. RFC 6598" list=BOGONS
add address=127.0.0.0/8 comment=Loopback list=BOGONS
add address=169.254.0.0/16 comment="Link Local" list=BOGONS
add address=172.16.0.0/12 comment="Private-Use Networks" list=BOGONS
add address=192.0.0.0/24 comment="IETF Protocol Assignments" list=BOGONS
add address=192.0.2.0/24 comment=TEST-NET-1 list=BOGONS
add address=192.168.0.0/16 comment="Private-Use Networks" list=BOGONS
add address=198.18.0.0/15 comment="Network Interconnect Device Benchmark Testing"
 list=BOGONS
add address=198.51.100.0/24 comment=TEST-NET-2 list=BOGONS
add address=203.0.113.0/24 comment=TEST-NET-3 list=BOGONS
add address=224.0.0.0/4 comment=Multicast list=BOGONS
add address=192.88.99.0/24 comment="6to4 Relay Anycast" list=BOGONS
add address=240.0.0.0/4 comment="Reserved for Future Use" list=BOGONS
add address=255.255.255.255 comment="Limited Broadcast" list=BOGONS

(ఇది ఇంటర్నెట్‌కు రూట్ చేయలేని చిరునామాలు మరియు నెట్‌వర్క్‌ల జాబితా మరియు తదనుగుణంగా అనుసరించబడుతుంది.)

గమనిక. జాబితా మార్పుకు లోబడి ఉంటుంది, కాబట్టి ఔచిత్యాన్ని క్రమానుగతంగా తనిఖీ చేయమని నేను మీకు సలహా ఇస్తున్నాను.

1.7 రూటర్ కోసం DNSని సెటప్ చేయండి:

/ip dns set servers=1.1.1.1,8.8.8.8

గమనిక. ROS యొక్క ప్రస్తుత సంస్కరణలో, డైనమిక్ సర్వర్‌లు స్టాటిక్ వాటి కంటే ప్రాధాన్యతనిస్తాయి. పేరు రిజల్యూషన్ అభ్యర్థన జాబితాలోని క్రమంలో మొదటి సర్వర్‌కు పంపబడుతుంది. ప్రస్తుత సర్వర్ అందుబాటులో లేనప్పుడు తదుపరి సర్వర్‌కు బదిలీ చేయబడుతుంది. గడువు పెద్దది - 5 సెకన్ల కంటే ఎక్కువ. "పడిపోయిన సర్వర్" పునఃప్రారంభించబడినప్పుడు, తిరిగి రావడం స్వయంచాలకంగా జరగదు. ఈ అల్గోరిథం మరియు మల్టీవాన్ ఉనికిని బట్టి, ప్రొవైడర్లు అందించిన సర్వర్‌లను ఉపయోగించవద్దని రచయిత సిఫార్సు చేస్తున్నారు.

1.8 స్థానిక నెట్‌వర్క్‌ను సెటప్ చేయండి.
1.8.1 మేము LAN ఇంటర్‌ఫేస్‌లలో స్టాటిక్ IP చిరునామాలను కాన్ఫిగర్ చేస్తాము:

/ip address add interface=ether4 address=192.168.88.254/24 comment="LAN1 IP"
/ip address add interface=ether5 address=172.16.1.0/23 comment="LAN2 IP"

1.8.2 మేము ప్రధాన రౌటింగ్ పట్టిక ద్వారా మా స్థానిక నెట్‌వర్క్‌లకు మార్గాల కోసం నియమాలను సెట్ చేసాము:

/ip route rule add dst-address=192.168.88.0/24 table=main comment=”to LAN1”
/ip route rule add dst-address=172.16.0.0/23 table=main comment="to LAN2"

గమనిక. డిఫాల్ట్ మార్గం ద్వారా వెళ్లని రూటర్ ఇంటర్‌ఫేస్‌ల బాహ్య IP చిరునామాల మూలాలతో LAN చిరునామాలను యాక్సెస్ చేయడానికి ఇది త్వరిత మరియు సులభమైన మార్గాలలో ఒకటి.

1.8.3 LAN1 మరియు LAN2 కోసం హెయిర్‌పిన్ NATని ప్రారంభించండి:

/ip firewall nat add action=src-nat chain=srcnat comment="Hairpin to LAN1" 
out-interface=ether4 src-address=192.168.88.0/24 to-addresses=192.168.88.254
/ip firewall nat add action=src-nat chain=srcnat comment="Hairpin to LAN2" 
out-interface=ether5 src-address=172.16.0.0/23 to-addresses=172.16.1.0

గమనిక. నెట్‌వర్క్‌లో ఉన్నప్పుడు బాహ్య IP ద్వారా మీ వనరులను (dstnat) యాక్సెస్ చేయడానికి ఇది మిమ్మల్ని అనుమతిస్తుంది.

2. వాస్తవానికి, చాలా సరైన మల్టీవాన్ అమలు

"వారు ఎక్కడి నుండి అడిగారో సమాధానం" సమస్యను పరిష్కరించడానికి, మేము రెండు ROS సాధనాలను ఉపయోగిస్తాము: కనెక్షన్ గుర్తు и రూటింగ్ గుర్తు. కనెక్షన్ గుర్తు మీరు కోరుకున్న కనెక్షన్‌ను గుర్తించి, ఆపై ఈ లేబుల్‌తో దరఖాస్తు చేయడానికి షరతుగా పని చేయడానికి మిమ్మల్ని అనుమతిస్తుంది రూటింగ్ గుర్తు. మరియు ఇప్పటికే తో రూటింగ్ గుర్తు లో పని చేయడం సాధ్యమవుతుంది ip మార్గం и మార్గం నియమాలు. మేము సాధనాలను కనుగొన్నాము, ఇప్పుడు మీరు ఏ కనెక్షన్లను గుర్తించాలో నిర్ణయించుకోవాలి - ఒకసారి, సరిగ్గా ఎక్కడ గుర్తించాలో - రెండు.

మొదటిదానితో, ప్రతిదీ సులభం - మేము తగిన ఛానెల్ ద్వారా ఇంటర్నెట్ నుండి రౌటర్కు వచ్చే అన్ని కనెక్షన్లను గుర్తించాలి. మా విషయంలో, ఇవి మూడు లేబుల్‌లు (ఛానెళ్ల సంఖ్య ద్వారా): “conn_isp1”, “conn_isp2” మరియు “conn_isp3”.

రెండవదానితో ఉన్న స్వల్పభేదం ఏమిటంటే, ఇన్‌కమింగ్ కనెక్షన్‌లు రెండు రకాలుగా ఉంటాయి: రవాణా మరియు రౌటర్ కోసం ఉద్దేశించినవి. కనెక్షన్ మార్క్ మెకానిజం పట్టికలో పనిచేస్తుంది మింగిల్. mikrotik-trainings.com రిసోర్స్ (ప్రకటనలు కాదు) యొక్క నిపుణులచే దయచేసి సంకలనం చేయబడిన సరళీకృత రేఖాచిత్రంపై ప్యాకేజీ యొక్క కదలికను పరిగణించండి:

Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్

బాణాలను అనుసరించి, ప్యాకెట్ "" వద్దకు చేరుకోవడం మనం చూస్తాముఇన్పుట్ ఇంటర్ఫేస్", గొలుసు గుండా వెళుతుంది"ముందస్తుగా రూట్ చేస్తోంది"మరియు అప్పుడు మాత్రమే ఇది బ్లాక్‌లో రవాణా మరియు స్థానికంగా విభజించబడింది"రూటింగ్ నిర్ణయం". అందువల్ల, ఒకే రాయితో రెండు పక్షులను చంపడానికి, మేము ఉపయోగిస్తాము కనెక్షన్ గుర్తు పట్టికలో మాంగిల్ ముందస్తు రౌటింగ్ గొలుసులు ముందస్తుగా రూట్ చేస్తోంది.

వ్యాఖ్య. ROSలో, "రౌటింగ్ మార్క్" లేబుల్‌లు Ip/రూట్స్/రూల్స్ విభాగంలో "టేబుల్"గా మరియు ఇతర విభాగాలలో "రూటింగ్ మార్క్"గా జాబితా చేయబడ్డాయి. ఇది అర్థం చేసుకోవడంలో కొంత గందరగోళాన్ని ప్రవేశపెట్టవచ్చు, కానీ, వాస్తవానికి, ఇది అదే విషయం మరియు ఇది linuxలో iproute2లోని rt_tables యొక్క అనలాగ్.

2.1 మేము ప్రతి ప్రొవైడర్ నుండి ఇన్‌కమింగ్ కనెక్షన్‌లను గుర్తు చేస్తాము:

/ip firewall mangle add action=mark-connection chain=prerouting 
comment="Connmark in from ISP1" connection-mark=no-mark in-interface=ether1  new-connection-mark=conn_isp1 passthrough=no

/ip firewall mangle add action=mark-connection chain=prerouting 
comment="Connmark in from ISP2" connection-mark=no-mark in-interface=ether2  new-connection-mark=conn_isp2 passthrough=no

/ip firewall mangle add action=mark-connection chain=prerouting 
comment="Connmark in from ISP3" connection-mark=no-mark in-interface=pppoe-isp3  new-connection-mark=conn_isp3 passthrough=no

గమనిక. ఇప్పటికే గుర్తించబడిన కనెక్షన్‌లను గుర్తు పెట్టకుండా ఉండటానికి, కనెక్షన్-స్టేట్=న్యూకి బదులుగా నేను కనెక్షన్-మార్క్=నో-మార్క్ కండిషన్‌ని ఉపయోగిస్తాను ఎందుకంటే ఇది మరింత సరైనదని నేను భావిస్తున్నాను, అలాగే ఇన్‌పుట్ ఫిల్టర్‌లో చెల్లని కనెక్షన్‌లను తిరస్కరించడం కూడా సరైనదని నేను భావిస్తున్నాను.


passthrough=no - ఎందుకంటే ఈ అమలు పద్ధతిలో, రీ-మార్కింగ్ మినహాయించబడింది మరియు వేగవంతం చేయడానికి, మీరు మొదటి మ్యాచ్ తర్వాత నియమాల గణనకు అంతరాయం కలిగించవచ్చు.

మేము ఇంకా రూటింగ్‌లో ఏ విధంగానూ జోక్యం చేసుకోలేదని గుర్తుంచుకోవాలి. ఇప్పుడు తయారీ దశలు మాత్రమే ఉన్నాయి. అమలు యొక్క తదుపరి దశ స్థానిక నెట్‌వర్క్‌లోని గమ్యస్థానం నుండి ఏర్పాటు చేయబడిన కనెక్షన్ ద్వారా తిరిగి వచ్చే రవాణా ట్రాఫిక్ యొక్క ప్రాసెసింగ్. ఆ. ఆ ప్యాకెట్లు (రేఖాచిత్రం చూడండి) మార్గం వెంట రూటర్ గుండా వెళ్ళాయి:

“ఇన్‌పుట్ ఇంటర్‌ఫేస్”=>”ప్రీరౌటింగ్”=>”రూటింగ్ డెసిషన్”=>”ఫార్వర్డ్”=>”పోస్ట్ రూటింగ్”=>”అవుట్‌పుట్ ఇంటర్‌ఫేస్” మరియు స్థానిక నెట్‌వర్క్‌లోని వారి చిరునామాదారుడికి వచ్చింది.

ముఖ్యం! ROSలో, బాహ్య మరియు అంతర్గత ఇంటర్‌ఫేస్‌లలో తార్కిక విభజన లేదు. పై రేఖాచిత్రం ప్రకారం మేము ప్రతిస్పందన ప్యాకెట్ యొక్క మార్గాన్ని గుర్తించినట్లయితే, అది అభ్యర్థన వలె అదే తార్కిక మార్గాన్ని అనుసరిస్తుంది:

“ఇన్‌పుట్ ఇంటర్‌ఫేస్”=>”ప్రీరౌటింగ్”=>”రూటింగ్ డెసిషన్”=>”ఫార్వర్డ్”=>”పోస్ట్ రూటింగ్”=>”అవుట్‌పుట్ ఇంటర్‌ఫేస్” కేవలం అభ్యర్థన కోసం"ఇన్పుట్ ఇంటర్ఫేస్” ISP ఇంటర్ఫేస్, మరియు సమాధానం కోసం - LAN

2.2 మేము సంబంధిత రూటింగ్ టేబుల్‌లకు ప్రతిస్పందన రవాణా ట్రాఫిక్‌ని నిర్దేశిస్తాము:

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Routemark transit out via ISP1" connection-mark=conn_isp1 
dst-address-type=!local in-interface-list=!WAN new-routing-mark=to_isp1 passthrough=no

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Routemark transit out via ISP2" connection-mark=conn_isp2 
dst-address-type=!local in-interface-list=!WAN new-routing-mark=to_isp2 passthrough=no

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Routemark transit out via ISP3" connection-mark=conn_isp3 
dst-address-type=!local in-interface-list=!WAN new-routing-mark=to_isp3 passthrough=no

వ్యాఖ్య. in-interface-list=!WAN - మేము స్థానిక నెట్‌వర్క్ మరియు dst-address-type=!local నుండి ట్రాఫిక్‌తో మాత్రమే పని చేస్తాము, అది రూటర్ యొక్క ఇంటర్‌ఫేస్‌ల చిరునామా యొక్క గమ్యస్థాన చిరునామాను కలిగి ఉండదు.

మార్గం వెంట రూటర్‌కు వచ్చిన స్థానిక ప్యాకెట్‌ల కోసం అదే విధంగా ఉంటుంది:

“ఇన్‌పుట్ ఇంటర్‌ఫేస్”=>”ప్రీరౌటింగ్”=>”రూటింగ్ నిర్ణయం”=>”ఇన్‌పుట్”=>”స్థానిక ప్రక్రియ”

ముఖ్యం! సమాధానం క్రింది విధంగా ఉంటుంది:

”స్థానిక ప్రక్రియ”=>”రూటింగ్ నిర్ణయం”=>”అవుట్‌పుట్”=>”పోస్ట్ రూటింగ్”=>”అవుట్‌పుట్ ఇంటర్‌ఫేస్”

2.3 మేము సంబంధిత రూటింగ్ టేబుల్‌లకు ప్రతిస్పందన స్థానిక ట్రాఫిక్‌ని నిర్దేశిస్తాము:

/ip firewall mangle add action=mark-routing chain=output 
comment="Routemark local out via ISP1" connection-mark=conn_isp1 dst-address-type=!local 
new-routing-mark=to_isp1 passthrough=no

/ip firewall mangle add action=mark-routing chain=output 
comment="Routemark local out via ISP2" connection-mark=conn_isp2 dst-address-type=!local 
new-routing-mark=to_isp2 passthrough=no

/ip firewall mangle add action=mark-routing chain=output 
comment="Routemark local out via ISP3" connection-mark=conn_isp3 dst-address-type=!local 
new-routing-mark=to_isp3 passthrough=no

ఈ దశలో, అభ్యర్థన వచ్చిన ఇంటర్నెట్ ఛానెల్‌కు ప్రతిస్పందనను పంపడానికి సిద్ధం చేసే పని పరిష్కరించబడినట్లు పరిగణించబడుతుంది. ప్రతిదీ గుర్తించబడింది, లేబుల్ చేయబడింది మరియు రూట్ చేయడానికి సిద్ధంగా ఉంది.
ఈ సెటప్ యొక్క అద్భుతమైన "సైడ్" ఎఫెక్ట్ రెండు (ISP2, ISP3) ప్రొవైడర్ల నుండి DSNAT పోర్ట్ ఫార్వార్డింగ్‌తో ఒకే సమయంలో పని చేయగల సామర్థ్యం. అస్సలు కాదు, ISP1 నుండి మాకు రూటబుల్ కాని చిరునామా ఉంది. ఈ ప్రభావం ముఖ్యమైనది, ఉదాహరణకు, వేర్వేరు ఇంటర్నెట్ ఛానెల్‌లను చూసే రెండు MXలతో కూడిన మెయిల్ సర్వర్ కోసం.

బాహ్య IP రౌటర్లతో స్థానిక నెట్వర్క్ల ఆపరేషన్ యొక్క సూక్ష్మ నైపుణ్యాలను తొలగించడానికి, మేము పేరాల నుండి పరిష్కారాలను ఉపయోగిస్తాము. 1.8.2 మరియు 3.1.2.6.

అదనంగా, మీరు సమస్య యొక్క పేరా 3ని పరిష్కరించడానికి మార్కింగ్‌లతో కూడిన సాధనాన్ని ఉపయోగించవచ్చు. మేము దీన్ని ఇలా అమలు చేస్తాము:

2.4 మేము స్థానిక క్లయింట్‌ల నుండి రౌటింగ్ జాబితాల నుండి తగిన పట్టికలకు ట్రాఫిక్‌ని మళ్లిస్తాము:

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Address List via ISP1" dst-address-list=!BOGONS new-routing-mark=to_isp1 
passthrough=no src-address-list=Via_ISP1

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Address List via ISP2" dst-address-list=!BOGONS new-routing-mark=to_isp2 
passthrough=no src-address-list=Via_ISP2

/ip firewall mangle add action=mark-routing chain=prerouting 
comment="Address List via ISP3" dst-address-list=!BOGONS new-routing-mark=to_isp3 
passthrough=no src-address-list=Via_ISP3

ఫలితంగా, ఇది ఇలా కనిపిస్తుంది:

Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్

3. ISPకి కనెక్షన్‌ని సెటప్ చేయండి మరియు బ్రాండెడ్ రూటింగ్‌ని ప్రారంభించండి

3.1 ISP1కి కనెక్షన్‌ని సెటప్ చేయండి:
3.1.1 స్టాటిక్ IP చిరునామాను కాన్ఫిగర్ చేయండి:

/ip address add interface=ether1 address=100.66.66.2/30 comment="ISP1 IP"

3.1.2 స్టాటిక్ రూటింగ్‌ని సెటప్ చేయండి:
3.1.2.1. డిఫాల్ట్ "అత్యవసర" మార్గాన్ని జోడించండి:

/ip route add comment="Emergency route" distance=254 type=blackhole

గమనిక. ఈ మార్గం ప్రొవైడర్‌లలో ఎవరి లింక్‌ల స్థితితో సంబంధం లేకుండా, స్థానిక ప్రక్రియల నుండి ట్రాఫిక్‌ను రూట్ డెసిషన్ దశను దాటడానికి అనుమతిస్తుంది. అవుట్‌గోయింగ్ స్థానిక ట్రాఫిక్ యొక్క స్వల్పభేదం ఏమిటంటే, ప్యాకెట్ కనీసం ఎక్కడికైనా కదలాలంటే, ప్రధాన రౌటింగ్ టేబుల్ తప్పనిసరిగా డిఫాల్ట్ గేట్‌వేకి క్రియాశీల మార్గాన్ని కలిగి ఉండాలి. లేకపోతే, అప్పుడు ప్యాకేజీ కేవలం నాశనం చేయబడుతుంది.

ఒక సాధనం పొడిగింపుగా గేట్‌వేని తనిఖీ చేయండి ఛానెల్ స్థితి యొక్క లోతైన విశ్లేషణ కోసం, నేను పునరావృత మార్గం పద్ధతిని ఉపయోగించమని సూచిస్తున్నాను. పద్ధతి యొక్క సారాంశం ఏమిటంటే, మేము రౌటర్‌కి దాని గేట్‌వేకి నేరుగా కాకుండా, ఇంటర్మీడియట్ గేట్‌వే ద్వారా మార్గం కోసం వెతకమని చెబుతాము. 4.2.2.1, 4.2.2.2 మరియు 4.2.2.3 వరుసగా ISP1, ISP2 మరియు ISP3 కోసం "పరీక్ష" గేట్‌వేలుగా ఎంపిక చేయబడతాయి.

3.1.2.2. "ధృవీకరణ" చిరునామాకు మార్గం:

/ip route add check-gateway=ping comment="For recursion via ISP1"  
distance=1 dst-address=4.2.2.1 gateway=100.66.66.1 scope=10

గమనిక. భవిష్యత్తులో రికర్సివ్ గేట్‌వేగా 4.2.2.1ని ఉపయోగించడానికి మేము ROS టార్గెట్ స్కోప్‌లో స్కోప్ విలువను డిఫాల్ట్‌కి తగ్గిస్తాము. నేను నొక్కి చెబుతున్నాను: "పరీక్ష" చిరునామాకు మార్గం యొక్క పరిధి తప్పనిసరిగా పరీక్షను సూచించే మార్గం యొక్క లక్ష్య పరిధి కంటే తక్కువగా లేదా సమానంగా ఉండాలి.

3.1.2.3. రూటింగ్ మార్క్ లేకుండా ట్రాఫిక్ కోసం పునరావృత డిఫాల్ట్ మార్గం:

/ip route add comment="Unmarked via ISP1" distance=2 gateway=4.2.2.1

గమనిక. టాస్క్ షరతుల ప్రకారం ISP2 మొదటి బ్యాకప్‌గా ప్రకటించబడినందున దూరం=1 విలువ ఉపయోగించబడుతుంది.

3.1.2.4. "to_isp1" రౌటింగ్ గుర్తుతో ట్రాఫిక్ కోసం పునరావృత డిఫాల్ట్ మార్గం:

/ip route add comment="Marked via ISP1 Main" distance=1 gateway=4.2.2.1 
routing-mark=to_isp1

గమనిక. వాస్తవానికి, ఇక్కడ మేము చివరకు పేరా 2లో నిర్వహించిన సన్నాహక పని యొక్క ఫలాలను ఆస్వాదించడం ప్రారంభించాము.


ఈ రూట్‌లో, "to_isp1" మార్క్ రూట్‌ని కలిగి ఉన్న ట్రాఫిక్ మొత్తం మొదటి ప్రొవైడర్ యొక్క గేట్‌వేకి మళ్లించబడుతుంది, ప్రధాన టేబుల్ కోసం ప్రస్తుతం ఏ డిఫాల్ట్ గేట్‌వే సక్రియంగా ఉంది.

3.1.2.5. ISP2 మరియు ISP3 ట్యాగ్ చేయబడిన ట్రాఫిక్ కోసం మొదటి ఫాల్‌బ్యాక్ రికర్సివ్ డిఫాల్ట్ రూట్:

/ip route add comment="Marked via ISP2 Backup1" distance=2 gateway=4.2.2.1 
routing-mark=to_isp2
/ip route add comment="Marked via ISP3 Backup1" distance=2 gateway=4.2.2.1 
routing-mark=to_isp3

గమనిక. "to_isp*" చిరునామా జాబితాలో సభ్యులుగా ఉన్న స్థానిక నెట్‌వర్క్‌ల నుండి ట్రాఫిక్‌ను రిజర్వ్ చేయడానికి ఇతర విషయాలతోపాటు ఈ మార్గాలు అవసరం.

3.1.2.6. మేము ISP1 ద్వారా ఇంటర్నెట్‌కు రూటర్ యొక్క స్థానిక ట్రాఫిక్ కోసం మార్గాన్ని నమోదు చేస్తాము:

/ip route rule add comment="From ISP1 IP to Inet" src-address=100.66.66.2 table=to_isp1

గమనిక. పేరా 1.8.2 నుండి నియమాలతో కలిపి, ఇది ఇచ్చిన మూలంతో కావలసిన ఛానెల్‌కు ప్రాప్యతను అందిస్తుంది. స్థానిక వైపు IP చిరునామా (EoIP, IP-IP, GRE)ని పేర్కొనే సొరంగాలను నిర్మించడానికి ఇది కీలకం. ip రూట్ నియమాలలో నియమాలు పై నుండి క్రిందికి అమలు చేయబడినందున, షరతుల యొక్క మొదటి మ్యాచ్ వరకు, ఈ నియమం నిబంధన 1.8.2 నుండి నియమాల తర్వాత ఉండాలి.

3.1.3 మేము అవుట్‌గోయింగ్ ట్రాఫిక్ కోసం NAT నియమాన్ని నమోదు చేస్తాము:

/ip firewall nat add action=src-nat chain=srcnat comment="NAT via ISP1"  
ipsec-policy=out,none out-interface=ether1 to-addresses=100.66.66.2

గమనిక. IPsec పాలసీలలోకి వచ్చేవి మినహా బయటకు వెళ్లే ప్రతి ఒక్కటి NATim. నేను ఖచ్చితంగా అవసరమైతే తప్ప యాక్షన్=మాస్క్వెరేడ్‌ని ఉపయోగించకూడదని ప్రయత్నిస్తాను. ఇది ప్రతి కొత్త కనెక్షన్ కోసం NAT చిరునామాను గణిస్తుంది ఎందుకంటే ఇది src-nat కంటే నెమ్మదిగా మరియు ఎక్కువ వనరులు ఎక్కువగా ఉంటుంది.

3.1.4 మేము ఇతర ప్రొవైడర్ల ద్వారా యాక్సెస్ చేయకుండా నిషేధించబడిన జాబితా నుండి క్లయింట్‌లను నేరుగా ISP1 ప్రొవైడర్ యొక్క గేట్‌వేకి పంపుతాము.

/ip firewall mangle add action=route chain=prerouting comment="Address List via ISP1 only" 
dst-address-list=!BOGONS passthrough=no route-dst=100.66.66.1 
src-address-list=Via_only_ISP1 place-before=0

గమనిక. చర్య=మార్గం అధిక ప్రాధాన్యతను కలిగి ఉంటుంది మరియు ఇతర రూటింగ్ నియమాల ముందు వర్తించబడుతుంది.


place-before=0 - జాబితాలో మన నియమాన్ని మొదటి స్థానంలో ఉంచుతుంది.

3.2 ISP2కి కనెక్షన్‌ని సెటప్ చేయండి.

ISP2 ప్రొవైడర్ మాకు DHCP ద్వారా సెట్టింగ్‌లను అందిస్తుంది కాబట్టి, DHCP క్లయింట్ ట్రిగ్గర్ చేయబడినప్పుడు ప్రారంభమయ్యే స్క్రిప్ట్‌తో అవసరమైన మార్పులను చేయడం సహేతుకమైనది:

/ip dhcp-client
add add-default-route=no disabled=no interface=ether2 script=":if ($bound=1) do={r
    n    /ip route add check-gateway=ping comment="For recursion via ISP2" distance=1 
           dst-address=4.2.2.2/32 gateway=$"gateway-address" scope=10r
    n    /ip route add comment="Unmarked via ISP2" distance=1 gateway=4.2.2.2;r
    n    /ip route add comment="Marked via ISP2 Main" distance=1 gateway=4.2.2.2 
           routing-mark=to_isp2;r
    n    /ip route add comment="Marked via ISP1 Backup1" distance=2 gateway=4.2.2.2 
           routing-mark=to_isp1;r
    n    /ip route add comment="Marked via ISP3 Backup2" distance=3 gateway=4.2.2.2 
           routing-mark=to_isp3;r
    n    /ip firewall nat add action=src-nat chain=srcnat ipsec-policy=out,none 
           out-interface=$"interface" to-addresses=$"lease-address" comment="NAT via ISP2" 
           place-before=1;r
    n    if ([/ip route rule find comment="From ISP2 IP to Inet"] ="") do={r
    n        /ip route rule add comment="From ISP2 IP to Inet" 
               src-address=$"lease-address" table=to_isp2 r
    n    } else={r
    n       /ip route rule set [find comment="From ISP2 IP to Inet"] disabled=no 
              src-address=$"lease-address"r
    n    }      r
    n} else={r
    n   /ip firewall nat remove  [find comment="NAT via ISP2"];r
    n   /ip route remove [find comment="For recursion via ISP2"];r
    n   /ip route remove [find comment="Unmarked via ISP2"];r
    n   /ip route remove [find comment="Marked via ISP2 Main"];r
    n   /ip route remove [find comment="Marked via ISP1 Backup1"];r
    n   /ip route remove [find comment="Marked via ISP3 Backup2"];r
    n   /ip route rule set [find comment="From ISP2 IP to Inet"] disabled=yesr
    n}r
    n" use-peer-dns=no use-peer-ntp=no

Winbox విండోలో స్క్రిప్ట్:

Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్
గమనిక. లీజును విజయవంతంగా పొందినప్పుడు స్క్రిప్ట్ యొక్క మొదటి భాగం ప్రేరేపించబడుతుంది, రెండవది - లీజు విడుదలైన తర్వాత.గమనిక 2 చూడండి

3.3 మేము ISP3 ప్రొవైడర్‌కి కనెక్షన్‌ని సెటప్ చేసాము.

సెట్టింగ్‌ల ప్రొవైడర్ మాకు డైనమిక్‌ని అందిస్తుంది కాబట్టి, ppp ఇంటర్‌ఫేస్ పెరిగిన తర్వాత మరియు పతనం తర్వాత ప్రారంభమయ్యే స్క్రిప్ట్‌లతో అవసరమైన మార్పులను చేయడం సహేతుకమైనది.

3.3.1 మొదట మేము ప్రొఫైల్‌ను కాన్ఫిగర్ చేస్తాము:

/ppp profile
add comment="for PPPoE to ISP3" interface-list=WAN name=isp3_client 
on-down="/ip firewall nat remove  [find comment="NAT via ISP3"];r
    n/ip route remove [find comment="For recursion via ISP3"];r
    n/ip route remove [find comment="Unmarked via ISP3"];r
    n/ip route remove [find comment="Marked via ISP3 Main"];r
    n/ip route remove [find comment="Marked via ISP1 Backup2"];r
    n/ip route remove [find comment="Marked via ISP2 Backup2"];r
    n/ip route rule set [find comment="From ISP3 IP to Inet"] disabled=yes;" 
on-up="/ip route add check-gateway=ping comment="For recursion via ISP3" distance=1 
    dst-address=4.2.2.3/32 gateway=$"remote-address" scope=10r
    n/ip route add comment="Unmarked via ISP3" distance=3 gateway=4.2.2.3;r
    n/ip route add comment="Marked via ISP3 Main" distance=1 gateway=4.2.2.3 
    routing-mark=to_isp3;r
    n/ip route add comment="Marked via ISP1 Backup2" distance=3 gateway=4.2.2.3 
    routing-mark=to_isp1;r
    n/ip route add comment="Marked via ISP2 Backup2" distance=3 gateway=4.2.2.3 
    routing-mark=to_isp2;r
    n/ip firewall mangle set [find comment="Connmark in from ISP3"] 
    in-interface=$"interface";r
    n/ip firewall nat add action=src-nat chain=srcnat ipsec-policy=out,none 
    out-interface=$"interface" to-addresses=$"local-address" comment="NAT via ISP3" 
    place-before=1;r
    nif ([/ip route rule find comment="From ISP3 IP to Inet"] ="") do={r
    n   /ip route rule add comment="From ISP3 IP to Inet" src-address=$"local-address" 
    table=to_isp3 r
    n} else={r
    n   /ip route rule set [find comment="From ISP3 IP to Inet"] disabled=no 
    src-address=$"local-address"r
    n};r
    n"

Winbox విండోలో స్క్రిప్ట్:

Mikrotik RouterOSలో మల్టీవాన్ మరియు రూటింగ్
గమనిక. వరుసగా
/ip ఫైర్‌వాల్ మాంగిల్ సెట్ [వ్యాఖ్యను కనుగొనండి="ISP3 నుండి Connmark in"] in-interface=$"interface";
ఇంటర్‌ఫేస్ పేరు మార్చడాన్ని సరిగ్గా నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది, ఎందుకంటే ఇది దాని కోడ్‌తో పనిచేస్తుంది మరియు ప్రదర్శన పేరుతో కాదు.

3.3.2 ఇప్పుడు, ప్రొఫైల్ ఉపయోగించి, ppp కనెక్షన్‌ని సృష్టించండి:

/interface pppoe-client add allow=mschap2 comment="to ISP3" disabled=no 
interface=ether3 name=pppoe-isp3 password=isp3_pass profile=isp3_client user=isp3_client

చివరి టచ్‌గా, గడియారాన్ని సెట్ చేద్దాం:

/system ntp client set enabled=yes server-dns-names=0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org

చివరి వరకు చదివే వారికి

మల్టీవాన్‌ను అమలు చేయడానికి ప్రతిపాదిత మార్గం రచయిత యొక్క వ్యక్తిగత ప్రాధాన్యత మరియు ఇది మాత్రమే సాధ్యం కాదు. ROS టూల్‌కిట్ విస్తృతమైనది మరియు సౌకర్యవంతమైనది, ఇది ఒక వైపు, ప్రారంభకులకు ఇబ్బందులను కలిగిస్తుంది మరియు మరోవైపు, దాని ప్రజాదరణకు కారణం. నేర్చుకోండి, ప్రయత్నించండి, కొత్త సాధనాలు మరియు పరిష్కారాలను కనుగొనండి. ఉదాహరణకు, సంపాదించిన జ్ఞానం యొక్క అనువర్తనంగా, మల్టీవాన్ యొక్క ఈ అమలులో సాధనాన్ని భర్తీ చేయడం సాధ్యపడుతుంది. చెక్-గేట్‌వే పునరావృత మార్గాలతో నెట్‌వాచ్.

గమనికలు

  1. చెక్-గేట్‌వే - లభ్యత కోసం గేట్‌వే యొక్క రెండు వరుస విఫలమైన తనిఖీల తర్వాత మార్గాన్ని నిష్క్రియం చేయడానికి మిమ్మల్ని అనుమతించే యంత్రాంగం. ప్రతి 10 సెకన్లకు ఒకసారి చెక్ చేయబడుతుంది, దానితో పాటు ప్రతిస్పందన సమయం ముగిసింది. మొత్తంగా, అసలు మారే సమయం 20-30 సెకన్ల పరిధిలో ఉంటుంది. అటువంటి మార్పిడి సమయం సరిపోకపోతే, సాధనాన్ని ఉపయోగించడానికి ఒక ఎంపిక ఉంది నెట్‌వాచ్, చెక్ టైమర్‌ను మాన్యువల్‌గా సెట్ చేయవచ్చు. చెక్-గేట్‌వే లింక్‌పై అడపాదడపా ప్యాకెట్ నష్టంపై కాల్పులు జరపదు.

    ముఖ్యమైనది! ప్రాథమిక మార్గాన్ని నిష్క్రియం చేయడం వలన దానిని సూచించే అన్ని ఇతర మార్గాలు నిష్క్రియం చేయబడతాయి. అందువలన, వాటిని పేర్కొనడానికి చెక్-గేట్‌వే=పింగ్ అవసరం లేదు.

  2. DHCP మెకానిజంలో వైఫల్యం సంభవిస్తుంది, ఇది క్లయింట్ పునరుద్ధరణ స్థితిలో చిక్కుకున్నట్లు కనిపిస్తుంది. ఈ సందర్భంలో, స్క్రిప్ట్ యొక్క రెండవ భాగం పని చేయదు, అయితే ఇది ట్రాఫిక్ సరిగ్గా నడవకుండా నిరోధించదు, ఎందుకంటే రాష్ట్రం సంబంధిత పునరావృత మార్గాన్ని ట్రాక్ చేస్తుంది.
  3. ECMP (సమాన ధర బహుళ-మార్గం) - ROSలో అనేక గేట్‌వేలు మరియు అదే దూరంతో మార్గాన్ని సెట్ చేయడం సాధ్యపడుతుంది. ఈ సందర్భంలో, పేర్కొన్న గేట్‌వేల సంఖ్యకు అనులోమానుపాతంలో రౌండ్ రాబిన్ అల్గారిథమ్‌ని ఉపయోగించి కనెక్షన్‌లు ఛానెల్‌లలో పంపిణీ చేయబడతాయి.

వ్యాసం రాయడానికి ప్రేరణ కోసం, దాని నిర్మాణం మరియు స్వరాలు ఉంచడంలో సహాయం చేయండి - ఎవ్జెనీకి వ్యక్తిగత కృతజ్ఞతలు @jscar

మూలం: www.habr.com