Зөөврийн компьютер дээр ажилладаг профайл утсан дээр бүтэлгүйтдэг. Илэрхий алхам бол клиентийн тохиргоонд нэг үг солих явдал юм. Тэр үг тус болохгүй, учир нь хоёр төгсгөл нэг төрлийн урсгалын тухай ярихгүй байна.

TAP нь Ethernet хүрээг дамжуулдаг. TUN нь IP пакетыг дамжуулдаг. Android VPN апп-д IP интерфэйс өгөгддөг бөгөөд энэ нь хоёр зохион байгуулалтын нэгийг боломжтой, нөгөөг нь боломжгүй болгодог, тохиргоо юу ч гэсэн.

Харьцуулалт богино боловч үүнийг утсан дээрээ засах уу, эсвэл үйлчилгээг өөрчлөх үү гэдгийг шийддэг.

Өөр ачаалалтай хоёр төрлийн туннель

TAP интерфэйс Ethernet адаптер шиг ажилладаг. Энэ нь хүрээг дамжуулдаг, өөрөөр хэлбэл ARP, нэвтрүүлэлт болон LAN-ын IP-ээс доош дамжуулдаг бүхнийг. Энэ нь гүүр хийхийг боломжтой болгодог: туннель нэвтрүүлэлтийн домэйныг өргөтгөж, клиентүүд коммутаторт холбогдсон мэт аашилдаг.

TUN интерфэйс түүнд хаягласан IP пакетуудыг дамжуулдаг. Тохиролцох холбоосын давхарга байхгүй, ARP байхгүй, нэвтрүүлэлт байхгүй. Туннельд юу орохыг маршрутлалт шийддэг бөгөөд серверийн талын тохиргоо гүүрний оронд дэд сүлжээ ашигладаг.

Хоёр төгсгөл эдгээрийн алийг нь хийж байгаагаа тохирох ёстой. Нэг талд dev tap-г dev tun-ээр солих нь үйлчилгээг хувиргахгүй; үр дүнд нь маршрутлагдсан туннель хүлээж буй клиент ба одоо ч хүрээ илгээж буй сервер үүсч, гар барилт амжилттай болсон ч хэрэгтэй зүйл нэвтрэхгүй байж болно.

Android апп-д үнэхээр юу өгдөг вэ

Платформын VpnService API нь апп-д IP пакетын виртуал интерфэйс өгдөг бөгөөд хаяг, маршрут, MTU-аар тохируулагдсан. Тэр API-д Ethernet адаптер байхгүй бөгөөд апп үүнийг зохиож чадахгүй.

Тиймээс OpenVPN Connect нь Android дээр TAP гүүрний оронд маршрутлагдсан TUN холболтын дэмжлэгийг баримтжуулдаг. Android-ын түгээмэл асуултууд нь энэ хил хязгаарын клиентийн талын мэдэгдэл бөгөөд платформын API-тай нийцдэг.

Root эрхтэй сүлжээний хэрэгсэл, захиалгат firmware эсвэл тодорхой орчуулгын давхарга хэрэгжүүлсэн бүтээгдэхүүн нь өөр зохион байгуулалт юм. Энгийн тохиолдол бол төлөвлөх ёстой зүйл: таны файлыг импортолж, энгийн хэрэглэгчээр ажиллах боломжтой апп, IP интерфэйстэй, доор нь юу ч байхгүй.

Гэсэн ч оролдоход хэрхэн харагдах вэ

Холболт ихэвчлэн тогтоцдог. Энэ нь бүтэлгүйтлийг ойлгомжгүй болгодог: клиент холбогдсон гэж мэдээлдэг, серверийн лог хамтрагчийг харуулдаг, ямар ч апп ажиллахгүй.

Утсанд өгсөн хаяг руу илгээсэн урсгал хүрдэггүй, учир нь сервер хүрээг утас хэзээ ч байгаагүй MAC хаяг руу гүүрээр дамжуулдаг. Нэвтрүүлэлтээс хамааралтай илрүүлэлт хоосон хэвээр байна. Хэрэв LAN гүүрээр DHCP-д найдаж байгаа бол утас тэгж түрээс авахгүй, гүүртэй дэд сүлжээнд гараар өгсөн хаяг ч дутуу интерфэйсийг үүсгэхгүй.

Зарим клиент эрт, профайл импортлох үед бүтэлгүйтдэг, хэрэгжүүлж чадахгүй төхөөрөмжийн төрлийг харан. Хоёр зан төлөв ижил утгатай бөгөөд аль нь ч маршрут нэмэх, DNS солих эсвэл туннелийн хаягийн хүрээг өргөтгөхөөр засагдахгүй.

Серверийн тал юуг өөрчлөх ёстой

Засвар нь VPN үйлчилгээг удирддаг хүнд хамаарах бөгөөд ихэвчлэн шилжилт биш, нэмэлт юм. Маршрутлагдсан төхөөрөмж, өөрийн клиентийн дэд сүлжээ, хаяг олгож утсанд хэрэгтэй маршрутуудыг илгээдэг серверийн талын тохиргоотой хоёр дахь OpenVPN хувилбарыг ажиллуулаарай. Одоо байгаа гүүртэй хувилбар нь Ethernet үнэхээр хэрэгтэй төхөөрөмжүүдэд үйлчилсээр байна.

Хоёр дэлгэрэнгүй зүйл үүнийг практикт ажиллуулдаг. LAN-д шинэ клиентийн дэд сүлжээнд зориулсан буцах маршрут хэрэгтэй бөгөөд VPN хост руу чиглэсэн байх ёстой, эс бөгөөс хариу хэзээ ч буцаж ирэхгүй. Мөн туннелийн хост дээрх галт хана туннелийн интерфэйс ба LAN-ын хооронд дамжуулах ёстой бөгөөд хост өөрөөс нь хийсэн туршилт амжилттай болоход хамгийн их мартагддаг алхам нь энэ юм.

Хэрэв оператор үйлчилгээ нэмж чадахгүй бол хувилбар нь гүүрт нэгдэж чадах төхөөрөмж, өөрөөр хэлбэл утасны өмнөөс ажиллах зөөврийн компьютер эсвэл чиглүүлэгч юм. Энэ нь өөрийн удирдлагын зардалтай тойрч гарах зам бөгөөд Android тохиргоо биш.

Туннелиас биш, апп-аас шийдээрэй

Утас үнэхээр юунд хүрэх ёстойг асууж, дараа нь түүнийг зураглаарай. Нэр эсвэл хаягаар хүрэх файл хуваалцалт эсвэл интранет сайт нь IP шаардлага бөгөөд DNS нэрийг шийдэж, маршрут байгаа үед маршрутлагдсан туннель түүнийг хангана. Орон нутгийн нэвтрүүлэлтийн домэйныг үздэг илрүүлэлтийн хэрэгсэл IP шаардлага биш бөгөөд хэчнээн маршрутлалт ч үүнийг дүүргэхгүй.

RequirementTunnel that satisfies it
File server or intranet by hostnameRouted TUN, with working DNS
Broadcast or ARP-based discoveryEthernet bridging, so not an ordinary Android client
Multicast deliveryBridging or an explicit multicast relay
One application to one addressRouted TUN, narrowest possible route

Тэр хүснэгт нь илгээх хүсэлт ч мөн. Апп, түүний ашигладаг хаяг эсвэл нэр, илрүүлэлтээс хамааралтай эсэхийг хэлээрэй. Оператор тэр тайлбарын дагуу ажиллаж чадна, холбогдохгүй утасны хувьд хэн ч тэгж чадахгүй.

Эцэст нь, клиент бүрийг LAN адаптер дуурайлгахын оронд хэрэгтэй төхөөрөмжүүдэд зориулж TAP үйлчилгээг хадгалаарай. Тодорхой зорилготой хоёр үйлчилгээг бүгдэд хагас ажилладаг нэгээс дэмжихэд хялбар.

Холбоотой нийтлэлүүд