OpenWrt-ում ամբողջ LAN-ի OpenVPN հաճախորդ՝ աշխատանքի կարգ
Ինտերֆեյսի պատկանելությունը, զոնայի քաղաքականությունը, քողարկումը և յուրաքանչյուր SSID-ի աղյուսակները չորս առանձին աշխատանք են։ Կատարեք դրանք հերթով, և ամբողջ երթուղիչը ծածկող թունելը կդադարի պայքարել ձեզ հետ։
Չորս անկախ աշխատանք են պետք, որպեսզի երթուղիչի ամբողջ LAN-ը հայտնվի մեկ թունելի հետևում։ Թունելի սարքին պետք են տեր, հրապատի զոնա, դեպի վերին կապուղին տանող թարգմանության նպատակ, և եթե որոշ հաճախորդներ պետք է մնան VPN-ից դուրս, ապա երթուղավորում՝ ըստ աղբյուրի հասցեի։ Թունելը, որը միանում է, բայց ոչինչ չի անցնում, սովորաբար այդ չորսից մեկի բացակայությունն է նշանակում։ Աշխատելով կախվածության հերթով՝ վերջում եղած ձախողումը պատկանում է հենց նոր փոխած քայլին։ Ներքևի յուրաքանչյուր քայլ ավարտվում է մի բանով, որ կարելի է տեսնել, և դա հաջորդ քայլը զերծ է պահում ենթադրությունից։
Որոշեք՝ ինչն է կիսում թունելը
Երթուղիչը, որը բաժանում է Wi-Fi և DHCP, կարող է ինքնուրույն վարել հաճախորդին։ Դա յուրաքանչյուր միացված սարք դնում է թունելի հետևում՝ առանց սարքային առանձին կարգավորման, և փոքր տեղամասերի մեծ մասը հենց այս դասավորությունն է ուզում։ Թունելի կտրվելիս ամենալայն ազդեցությունը նույնպես այս դասավորությանն է, որովհետև բոլոր սարքերը միաժամանակ կորցնում են իրենց ուղին։ LAN-ում ոչինչ չի պահում դուրս տանող աշխատող ուղին։
Երկրորդ երթուղիչը առաջինի հետևում, որն աշխատեցնում է հաճախորդին իր ենթացանցով, սահմանափակում է թունելը միայն իր սարքերով։ Ավելի հեշտ է հեռացնել և ավելի հեշտ բացատրել նրան, ով կժառանգի այն։ Գինը այն է, որ առանց երթուղու կամ պորտի փոխանցման երկու կողմերի միջև հասանելիություն չկա։
Ինչպես էլ լինի, LAN-ի ենթացանցերը տարբեր դարձրեք։ Նույնական միջակայքերը մի կողմին ցույց են տալիս ուղիղ միացված, և դրանից առաջացած սև խոռոչը VPN-ի խափանում է թվում ժամերով։
Թունելին տեր տվեք
Հայտարարեք թունելը որպես ցանցային ինտերֆեյս՝ անունով, սարքով և առանց սեփական արձանագրության։ Այնուհետև ցանցային համակարգը ստեղծում և կառավարում է սարքը, և ամեն ինչ հետագայում ինտերֆեյսին դիմում է անունով, ոչ թե սարքով։ Հենց դա է թույլ տալիս զոնային գտնել այն։
Մի ստեղծեք նույն սարքը երկու տեղում։ Ձեռքով պատրաստված թունելը հայտարարված ինտերֆեյսի կողքին ստեղծում է սարք, որը գոյություն ունի, բայց զոնայում չէ, կամ մեկը, որն անհետանում է վերաբեռնման ժամանակ։ Երկուսն էլ հաճախորդի ձախողում են թվում, և ոչ մեկը չի տալիս սխալ, որը կնշի իրական պատճառը։ Ընտրեք հայտարարագրային ուղին և ջնջեք ձեռքով արվածը։
Անունը նույնը պահեք ցանցի, հրապատի և VPN-ի կազմաձևում։ Զոնան ցանցերը թվարկում է անունով, ուստի մեկ տառասխալ թունելը թողնում է բոլոր զոնաներից դուրս, մինչ ինտերֆեյսն ինքը առողջ է թվում։ Առանց քաղաքականության առողջ ինտերֆեյսը ամենադժվար նկատելի վիճակն է։
Դարձրեք զոնա, ապա փոխանցեք դրա մեջ
Հրապատի զոնան այն տեղն է, որտեղ ապրում է քաղաքականությունը՝ մուտք, ելք, փոխանցում և քողարկում։ Զոնայից դուրս թունելը կառավարվում է ձեր չընտրած լռելյայններով, և դա հազվադեպ է այն, ինչ պետք է երթուղիչի հաճախորդին։ Ներքևի բլոկները հայտարարում են ինտերֆեյսը, տեղադրում այն զոնայում և թույլատրում LAN-ի երթևեկությանը մտնել այդ զոնա։
config interface 'vpn'
option device 'tun0'
option proto 'none'
config zone
option name 'vpn'
list network 'vpn'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
config forwarding
option src 'lan'
option dest 'vpn'
21.02-ից հին թողարկումներում նույն ինտերֆեյսի տողը գրվում է option ifname, ուստի նախքան տեղադրելը ստուգեք, թե տեղադրված որոնաշերտը որ ձևն է հասկանում։ Փոխանցման բլոկը այն թույլտվությունն է, որ LAN-ի երթևեկությունը ընդհանրապես կարող է օգտվել թունելից։ Առանց դրա սարքը միացած է, հաճախորդը միացած է, և ոչ մի LAN հոսթ չի հասնում թունել։ Երթուղիչի հաճախորդների ամենահաճախ հաղորդումը միացած է, բայց ինտերնետ չկա-ն է։
VPN զոնայի քողարկումը փաթեթի դուրս գալուց առաջ ամեն LAN հասցե սեղմում է երթուղիչի թունելային հասցեի մեջ։ Դա վերացնում է հեռու կողմում ձեր ենթացանցին վերադարձի երթուղու կարիքը։
Եթե հեռու կողմն արդեն երթուղավորում է ձեր LAN-ը, քողարկումն անջատելը աղբյուրի հասցեները տեսանելի է պահում և յուրաքանչյուր հաճախորդի մատյանները դարձնում իմաստալից։ Ընտրեք մեկը և գրի առեք՝ որը, որովհետև երկու ընտրությունները հետագայում տարբեր աջակցության հարցեր են ծնում։ Լռելյայն LAN-ից WAN փոխանցումը հեռացնելը առանձին որոշում է՝ իր հետևանքով։ Հեռացրեք այն և երթուղիչի սեփական ինտերնետ հասանելիությունը նույնպես կգնա դրա հետ։
NAT-ում նշեք իրական վերին կապուղին
Որոնաշերտում, որտեղ թարգմանության կանոնը ձեռքով է գրված, ելքային ինտերֆեյսը հենց այն դաշտն է, որ փչանում է։ Նշենք, որ vlan2 -ը ոչինչ չի անում, երբ սեսիան ավարտվում է ppp0-ով։ Առանց ինտերֆեյսի կանոնը կարող է թարգմանել երթևեկություն, որը պետք է մնար փակ։ Ոչ մի սխալ ինքն իրեն չի հայտարարում, որովհետև թունելը շարունակում է աշխատել։
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Փոխարինեք ppp0 -ն այդ կանոնում ip route -ից կամ աշխատող ինտերֆեյսների ցանկից վերցված ինտերֆեյսով, ապա հետևեք հաշվիչին, մինչ LAN հոսթը էջ է բեռնում։ Մեկ մատակարարով երթուղիչում վերին կապուղու համար մեկ քողարկման կանոն սովորաբար բավական է։ Թունելի ինտերֆեյսի երկրորդ կանոնը առաջինի փոխարինողը չէ։
Ապա ավելացրեք հաճախորդի պարամետրերը, որոնք որոշում են՝ ինչ է մտնում թունել։ redirect-gateway հրահանգը հաճախորդի ինտերնետ երթևեկն ուղարկում է VPN-ով, և առանց դրա թունելը տանում է միայն սերվերի հրած ուղիները։ DNS-ին դիպչելուց առաջ ստուգեք ստացված երթուղիների աղյուսակը։
Բաժանեք Wi-Fi-ը երկրորդ աղյուսակով
Մեկ երթուղային աղյուսակ չի կարող պահել երկու լռելյայն։ Ուստի երկրորդ SSID-ն, որը պետք է շրջանցի թունելը, իր ենթացանցն ու իր աղյուսակն է ուզում։ Հատկացրեք թունելային SSID-ին իր միջակայքը, ապա աղյուսակն ընտրող կանոնով միայն այդ միջակայքն ուղարկեք թունել։
OpenWrt-ի քաղաքական երթուղավորման փաթեթները հենց այդ համակցությունն են արտահայտում։ Ձեռքով էլ է ստացվում՝ աղբյուրի կանոնով և աղյուսակով, որի լռելյայնը ցույց է տալիս թունելի սարքին։
Ստուգեք բաժանումը երկու ցանցերից էլ։ Թունելային SSID-ի հաճախորդը պետք է ցույց տա VPN-ի ելքի հասցեն, իսկ սովորական SSID-ի հաճախորդը՝ մատակարարի հասցեն։ Երբ երկուսն էլ նույնն են թվում, կանոնը համապատասխանում է սխալ աղբյուրի կամ աղյուսակին բոլորովին չեն դիմում։ Փորձեք նաև կրկին միանալուց հետո, որովհետև ինտերֆեյսի անունից կախված կանոնը կոտրվում է, երբ սարքը նոր համար է ստանում։
Կասկածեք ժամացույցին և սարքի դրոշիչին
Այս persist-tun դրոշիչը թունելի սարքը տեղում է թողնում վերագործարկումների ընթացքում։ Դա սազում է սերվերին և շփոթեցնում հաճախորդին, ում վիճակը պետք է զրոյից վերակառուցվի։ Հեռացրեք այն երթուղիչի հաճախորդի խնդիրը լուծելիս, որովհետև ձախողված բանակցությունից փրկված սարքը թաքցնում է, թե որ քայլն իրականում կոտրվեց։ Վերադարձրեք այն միայն այն բանից հետո, երբ հաճախորդը վստահելիորեն միանա, և ոչ ավելի շուտ։
Ժամացույցը երկրորդ լուռ ձախողումն է։ Առանց մարտկոցային ժամացույցի երթուղիչը սկսում է էպոխայից, այսինքն՝ վկայագրի ստուգումները ձախողվում են, մինչ NTP-ն կհասնի։ Համեմատեք մատյանի ժամային նշանները իրական ժամի հետ նախքան վկայագրին դիպչելը, որովհետև միանալով բեռնումից մեկ րոպե անց՝ հաճախորդը սովորաբար սպասում է ժամանակի համաժամեցմանը։