Чатыры незалежныя задачы ставяць усю лакальную сетку маршрутызатара за адзін тунель. Прыладзе тунеля патрэбен уласнік, зона міжсеткавага экрана, мэта пераўтварэння ў бок верхняга звяна і, калі некаторыя кліенты павінны заставацца па-за VPN, маршрутызацыя па адрасе крыніцы. У тунеля, які ўстанаўлівае злучэнне, але нічога не прапускае, звычайна не хапае аднаго з гэтых чатырох. Праца ў парадку залежнасцей азначае, што збой у канцы належыць кроку, які вы толькі што змянілі. Кожны крок ніжэй заканчваецца чымсьці, што можна паназіраць, і гэта не дае наступнаму стаць здагадкай.

Вызначце, што дзеліць тунель

Маршрутызатар, які раздае Wi-Fi і DHCP, можа сам запускаць кліент. Так кожная падключаная прылада апынаецца за тунелем без наладкі на кожную прыладу, і гэта тое, чаго хочуць большасць невялікіх пляцовак. Адначасова гэта варыянт з самым шырокім уздзеяннем, калі тунель падае, бо ўсе прылады губляюць шлях адначасова. Нішто ў лакальнай сетцы не захоўвае працоўны маршрут вонкі.

Другі маршрутызатар за першым, які запускае кліент са сваёй падсеткай, абмяжоўвае тунель сваімі прыладамі. Яго прасцей прыбраць і прасцей растлумачыць таму, хто яго атрымае. Кошт — даступнасць паміж двума бакамі без маршруту або перакідання порта.

Так ці інакш, зрабіце падсеткі лакальнай сеткі рознымі. Аднолькавыя дыяпазоны робяць адзін бок падобным да непасрэдна падключанага, і чорная дзірка, што ўзнікае, гадзінамі выглядае як збой VPN.

Дайце тунелю ўласніка

Абвясціце тунель як сеткавы інтэрфейс з імем, прыладай і без уласнага пратакола. Тады сеткавая сістэма стварае і кіруе прыладай, а ўсё далейшае звяртаецца да інтэрфейса па імені, а не па прыладзе. Менавіта гэта дазваляе зоне яго знайсці.

Не стварайце адну і тую ж прыладу ў двух месцах. Тунель, зроблены ўручную побач з абвешчаным інтэрфейсам, дае прыладу, якая існуе, але не ўключана ў зону, або тую, што знікае пры перазагрузцы. Абодва выпадкі выглядаюць як збой кліента, і ні адзін не дае памылкі, якая называе сапраўдную прычыну. Выберыце дэкларатыўны шлях і выдаліце ручны.

Трымайце імя аднолькавым у канфігурацыі сеткі, міжсеткавага экрана і VPN. Зона пералічвае сеткі па імені, таму друкарская памылка пакідае тунель па-за любой зонай, пакуль сам інтэрфейс выглядае здаровым. Здаровы інтэрфейс без палітыкі — найцяжэйшы для заўвагі стан.

Уключыце яго ў зону, потым накіруйце туды

Зона міжсеткавага экрана — гэта месца, дзе жыве палітыка: input, output, forward і masquerade. Тунель, які не ўваходзіць ні ў адну зону, кіруецца прадвызначанымі наладамі, якія вы не выбіралі, і гэта рэдка тое, што патрэбна кліенту маршрутызатара. Блокі ніжэй абвяшчаюць інтэрфейс, змшчаюць яго ў зону і дазваляюць трафіку лакальнай сеткі ўваходзіць у гэтую зону.

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, таму праверце, якую форму разбірае ўсталяваная прашыўка, перш чым устаўляць. Блок перанакіравання — гэта дазвол, які наогул дазваляе трафіку лакальнай сеткі карыстацца тунелем. Без яго прылада ўключана, кліент падключаны, і ніводзін хост лакальнай сеткі не дасягае тунеля. Гэта самая частая скарга падключана, але інтэрнэту няма ў кліентаў маршрутызатараў.

Маскарад на зоне VPN згортвае кожны адрас лакальнай сеткі ў адрас тунеля маршрутызатара, перш чым пакет выйдзе. Гэта здымае патрэбу ў зваротным маршруце да вашай падсеткі на далёкім баку.

Калі далёкі бок ужо маршрутызуе вашу лакальную сетку, выключэнне маскараду пакідае адрасы крыніцы бачнымі і робіць журналы па кожным кліенце змястоўнымі. Выберыце адно і запішыце, што менавіта, бо два варыянты пазней даюць розныя пытанні падтрымкі. Выдаленне прадвызначанага перанакіравання з лакальнай сеткі ў WAN — асобнае рашэнне з уласнымі наступствамі. Прыбярыце яго, і ўласны доступ маршрутызатара ў інтэрнэт сыдзе разам з ім.

Назавіце сапраўднае верхняе звяно ў NAT

На прашыўцы, дзе правіла пераўтварэння напісана ўручную, поле, якое збіваецца, — гэта выходны інтэрфейс. Правіла з імем vlan2 нічога не робіць, калі сеанс завяршаецца на ppp0. Правіла без інтэрфейса наогул можа пераўтвараць трафік, які павінен быў застацца прыватным. Ні адзін з гэтых пралікаў не абвяшчае сябе, бо тунель працягвае працаваць.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Замяніце ppp0 у гэтым правіле на інтэрфейс з ip route або за спісу працуючых інтэрфейсаў, потым паназірайце за лічыльнікам, пакуль хост лакальнай сеткі загружае старонку. На маршрутызатары з адным правайдарам аднага правіла маскараду для верхняга звяна звычайна дастаткова. Другое правіла для інтэрфейса тунеля не замяняе першае.

Затым дадайце опцыі кліента, якія вызначаюць, што ўваходзіць у тунель. Дырэктыва redirect-gateway накіроўвае інтэрнэт-трафік кліента праз VPN, і без яе тунель нясе толькі маршруты, якія штурхае сервер. Праверце атрыманую табліцу маршрутызацыі, перш чым кранаць DNS.

Падзяліце Wi-Fi другой табліцай

Адна табліца маршрутызацыі не ўтрымае два прадвызначаныя шляхі. Таму другі SSID, які мусіць абыходзіць тунель, патрабуе ўласнай падсеткі і ўласнай табліцы. Прызначце тунельнаму SSID уласны дыяпазон, затым накіруйце толькі гэты дыяпазон у тунель правілам, якое выбірае табліцу.

Пакеты маршрутызацыі па палітыцы на OpenWrt выказваюць менавіта гэтую камбінацыю. Уручную таксама атрымліваецца: правіла крыніцы і табліца, чыё прадвызначанае паказвае на прыладу тунеля.

Праверце падзел з абодвух сетак. Кліент на тунельным SSID павінен паказваць выходны адрас VPN, а кліент на звычайным SSID — адрас правайдара. Калі абодва выглядаюць аднолькава, правіла сустракае няправільную крыніцу або табліца наогул не чытаецца. Праверце і пасля перападключэння, бо правіла, якое залежыць ад імені інтэрфейса, ламаецца, калі прыладу перанумароўваюць.

Падазрайце гадзіннік і сцяг прылады

Сцяг persist-tun пакідае прыладу тунеля на месцы паміж перазапускамі. Гэта падыходзіць серверу і блытае кліент, чыё стан трэба будаваць з нуля. Прыбярыце яго, пакуль шукаеце няспраўнасць кліента маршрутызатара, бо прылада, якая перажывае няўдалыя перамовы, хавае, які крок сапраўды зламаўся. Вярніце яго, калі кліент будзе падключацца надзейна, і не раней.

Гадзіннік — іншы ціхі збой. Маршрутызатар без гадзінніка на батарэйцы пачынае з эпохі, а значыць праверкі сертыфікатаў правальваюцца, пакуль NTP не дагоніць. Параўнайце часавыя меткі журнала з рэальным часам, перш чым кранаць сертыфікат, бо кліент, які падключаецца праз хвіліну пасля загрузкі, звычайна чакае сінхранізацыі часу.

Падобныя артыкулы