Прыкладанне iPhone не знаходзіць лакальныя прылады, калі VPN уключаны
Двое варот вырашаюць, ці зможа прыкладанне на iPhone дабрацца да прынтара або тэлевізара праз VPN: дазвол «Лакальная сетка» і маршруты самога тунеля. Правярайце іх па чарзе.
Прыкладанне прынтара паказвае пусты спіс, прыкладанне камеры паведамляе, што прылада не знойдзена, а кнопка трансляцыі ў відэапрыкладанні круціцца, пакуль не здасца. Значок VPN вісіць у радку стану, тэлефон ловіць на поўную, Safari нармальна грузіць старонкі, таму са злучэннем накшталт усё ў парадку. Потым вы адкрываеце налады самога прыкладання і не знаходзіце там ніводнага перамыкача.
Я натрапіў роўна на гэтую сцяну з этыкеткавым прынтарам у хатняй сетцы: прыкладанню ні разу не давалі доступ да лакальнай сеткі, а профіль, які я правяраў, быў поўным тунелем, што глытаў кожны пакет, адрасаваны 192.168.1.0/24. Двое незалежных варот былі зачыненыя, і адкрыццё аднаго не прыбрала б сімптом.
Двое варот паміж адным прыкладаннем і адным прынтарам
Першыя вароты — гэта рашэнне пра прыватнасць, якое належыць аперацыйнай сістэме, а не прыкладанню. iOS вырашае, ці можа прыкладанне дасылаць трафік на адрасы лакальнай сеткі, і пытае карыстальніка падчас першай спробы прыкладання. Другія вароты — табліца маршрутаў. Пакет, адрасаваны 192.168.1.50, або выходзіць па Wi-Fi да прынтара, або трапляе ў тунель, і гэты выбар запісаны ў профілі VPN.
Двое варот адмаўляюць па-рознаму, і менавіта гэта робіць дыягностыку магчымай. Забаронены дазвол забівае ўласны выклік сокета ў прыкладанні, таму прыкладанню няма чаго паведаміць, і яно адкочваецца да агульнага пустога стану. Праблема маршрутызацыі выглядае як тайм-аўт, бо пакеты пакінулі тэлефон і загінулі дзесьці на тым баку. Той жа пусты экран, іншы рамонт.
Спачатку прачытайце стан дазволу, потым чапайце VPN
Адкрыйце «Налады», далей «Прыватнасць і бяспека», далей «Лакальная сетка». Кожнае прыкладанне, што запытала доступ, з’яўляецца там з перамыкачом. Apple перамяшчала і пераназывала часткі гэтага экрана з iOS 14 да iOS 18, таму калі пункт не там, дзе вы чакаеце, увядзіце «Лакальная сетка» у пошук у наладах замест таго, каб перабіраць дрэва.
Найбольш людзей ловіць аднаразовы запыт. iOS пытае, калі прыкладанне ўпершыню дакранаецца лакальнай сеткі, і толькі тады. Націсніце «Не дазваляць», і пры наступным запуску запыт не вернецца; перамыкач — адзіны шлях назад, і ён спачатку выключаны. Пераўсталяванне прыкладання скідвае рашэнне, таму некаторыя галіны форумаў сцвярджаюць, што пераўсталяванне паправіла выяўленне. Паправіла — сціраннем забароны.
На падкантрольным ці кіраваным iPhone перамыкач часам шэры. Профіль налад прыватнасці, разасланы праз MDM, можа загадзя задаць або заблакаваць доступ да лакальнай сеткі, а заблакаваны выключаны перамыкач азначае, што рамонт — гэта змена палітыкі, а не змена тэлефона. Apple апісвае запыт і перамыкач для кожнага прыкладання тут: support.apple.com/en-us/102229.
Праверце, што тунель насамрэч маршрутызуе
Поўны тунель забірае 0.0.0.0/0 і разам з ім кожны прыватны дыяпазон. Пакеты для 10.x, 172.16.0.0/12 і 192.168.x.x ідуць на сервер, які звычайна іх адкідвае або транслюе ў сваю падсетку, таму прынтар застаецца недасяжным нават пасля выдачы дазволу. Раздзельны тунель робіць наадварот, але толькі для дыяпазонаў, пералічаных у профілі.
Профілі IKEv2, сабраныя ў Apple Configurator або пастаўленыя як .mobileconfig, выражаюць гэта наладай «дасылаць увесь трафік» плюс, у раздзельным рэжыме, яўным спісам лакальных сетак, якія трэба выключыць. Кліенцкія прыкладанні на NEPacketTunnelProvider выражаюць тое ж рашэнне праз includedRoutes. Ні тое, ні другое не відаць з радка стану, і абодва перакрываюць тое, што прыкладанне чакае ўбачыць.
Вось праверка, якой карыстаюся я. З падключаным VPN адкрыйце ў Safari старонку адміністравання роўтара па яго LAN-адрасе. Калі публічныя сайты грузяцца, а гэтая старонка ідзе ў тайм-аўт, ваш прыватны дыяпазон унутры тунеля. Калі старонка грузіцца, лакальны трафік дагэтуль выходзіць па Wi-Fi, і блакаванне дзесьці іншае.
Супстаўце сімптом з варотамі
Два прыкладанні на адным тэлефоне могуць разыходзіцца, бо дазвол выдаецца на прыкладанне, а маршруты — на профіль. Параўнайце, што менавіта не працуе, перш чым нешта мяняць: звычайна карціна сама называе вароты.
| What you see | Gate | Next step |
|---|---|---|
| Device list stays empty, Local Network switch is off | Permission | Enable the switch, force-quit the app, reopen it |
| Switch is on, router page times out, public sites load | Routing | Exclude the local range in the profile, or move to a split tunnel |
| Both pass, direct IP works, discovery stays empty | Link-local multicast | Enter the device address by hand, or check profile discovery support |
| Works by IP address, never by name such as printer.local | Name resolution | Fix mDNS reachability or use the numeric address |
| Everything fails with the VPN off, on hotel Wi-Fi | Client isolation | Change network, do not change permissions |
Радок mDNS варты заўвагі. Трафік выяўлення для Bonjour і большасці пратаколаў трансляцыі ідзе шматадрасна на 224.0.0.251 і ff02::fb у межах лакальнага сегмента, і маршрутызаваны тунель яго не пераносіць. Таму прылада можа адказваць на прамое падключэнне, ніколі не з’яўляючыся ў спісе.
Правярайце аперацыю, а не значок
Пасля перамыкання «Лакальнай сеткі» прымусова зачыніце прыкладанне праз перамыкач прыкладанняў і запусціце зноў. Працоўны працэс можа ўтрымліваць забаронены стан з часу да змены, а прыкладанне, якое і далей аддае пусты спіс, выглядае аднолькава незалежна ад таго, ці спрацаваў дазвол. Потым выканайце адну канкрэтную дзею — напрыклад, друк тэставай старонкі або запуск відэа, — замест таго каб чакаць, пакуль запоўніцца спіс прылад.
Трымайце профіль VPN нязменным на працягу параўнання. Калі выяўленне запрацавала толькі пасля адключэння, вы даведаліся, што вінаваты тунель, а не дазвол. Мяняйце па адной зменнай за спробу, інакш наступны прагон нічога вам не скажа.
Выпраўляйце ў такім парадку
Паслядоўнасць ніжэй — тая, якой я цяпер трымаюся, бо яна ніколі не пакідае тэлефон у напаўзмененым стане, дзе наступны тэст нечытабельны.
- Пераканайцеся, што прыкладанне ёсць у раздзеле «Прыватнасць і бяспека», «Лакальная сетка», і што яго перамыкач уключаны.
- Прымусова зачыніце і перазапусціце прыкладанне, потым адзін раз паўтарыце рэальную аперацыю.
- Адкрыйце старонку роўтара па LAN-адрасе пры актыўным падключэнні, каб даведацца, ці прыватны дыяпазон у тунелі.
- Калі так, адрэдагуйце профіль і выключыце лакальныя сеткі або папрасіце ўладальніка профілю зрабіць гэта.
- Калі перамыкач шэры, лічыце прыладу кіраванай і перадайце запыт адміністратару.
Звычайна дастасавальная толькі адна з іх. Калі ні адна не мяняе вынік, падазроныя, што засталіся, — сама сетка, напрыклад ізаляцыя пунктаў доступу або спіс дазволеных кліентаў, прывязаны да Wi-Fi-адрасоў, і табліца адпаведнасці вышэй паказвае, хто менавіта.