Хоёр команд хоёулаа локал үйлчилгээг Tailscale HTTPS нэрээр нийтэлдэг бөгөөд тэдгээрийг ажиллуулж буй машинаас харахад бараг ижил харагдана. Ялгаа нь дараа нь URL-д хэн хүрч чадах вэ гэдэгт байгаа бөгөөд энэ ялгаа нь таны аппликейшнд ямар хяналт хэрэгтэйг тодорхойлно. Serve хүлээн авагчийг tailnet дотор байлгадаг бол Funnel түүнийг нээлттэй интернет рүү зөөдөг. Эхлээд хүлээн авагчийг сонгоод, дараа нь түүнд тохирох командыг сонгоно уу.

Serve таны tailnet доторх асуултад хариулдаг

Serve локал портыг прокси хийдэг эсвэл таны tailnet дахь төхөөрөмжүүдэд локал агуулга үйлчилдэг бөгөөд tailnet-ийн хандалтын дүрэм бүх хүсэлтэд үргэлжлэн үйлчилнэ. 3000 порт дээрх хяналтын самбар нь зөвхөн таны төхөөрөмжүүд шийдэж, холбогдож чадах HTTPS нэрээр хүртээмжтэй болно. Энэ нь дотоод хэрэгслүүдэд тохирох анхдагч утга, учир нь хүлээн авагч tailnet-ээр аль хэдийн баталгаажсан бөгөөд та нээлттэй гадаргуу нэмэхгүй байна. URL нь энгийн вэбсайт мэт харагддаг бөгөөд хүмүүс яг ийм учраас үүнийг тэгж андуурдаг.

Serve мөн дамжуулж буй хүсэлтүүддээ tailnet хэрэглэгчийг тодорхойлсон таних тэмдгийн толгой мөрүүдийг хавсаргаж болно. Хэрэв таны аппликейшн эдгээр толгой мөрүүдэд баталгаажуулалт гэж итгэдэг бол backend-ийг localhost-д холбоно уу, ингэснээр өөр юу ч түүнд шууд хүрч чадахгүй; чиглүүлэх боломжтой хаяг дээр сонсож буй backend нь проксигоор хэзээ ч өнгөрөөгүй хүсэлтүүдийг хүлээж авч болно.

Funnel хүлээн авагчийг нээлттэй интернет болгон өөрчилдөг

Funnel сонгосон үйлчилгээг URL-тэй хэн бүхэнд нийтэлдэг бөгөөд зочдод клиент, бүртгэл эсвэл таны tailnet-ийн гишүүнчлэл шаардлагагүй. Тиймээс нөөцөд аливаа нээлттэй үйлчилгээнд хэрэглэх баталгаажуулалт, хурдны хязгаарлалт, засварууд шаардлагатай. Нээлттэй хүсэлтүүд Serve-ийн tailnet таних тэмдгийн толгой мөрүүдийг агуулдаггүй тул тэдгээрт найдаж байсан аппликейшнд Funnel-ийн дор хэрэглэгчийн таних тэмдэг огт байхгүй. Өөр нийтлэх командыг сонгох нь баталгаажуулалтын асуултад таны оронд хариулахгүй.

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

Горимыг портоос биш, клиентээс уншина уу

Ямар нэг зүйлийг хуваалцахын өмнө одоогийн байдлыг шалгана уу, учир нь хоёр горимыг нэг локал портод өөр өөр цагт тохируулж болно. Төлөвийн командууд юу үнэхээр нийтлэгдсэн, хэнд зориулагдсаныг мэдээлдэг. URL хариулж байгаа гэдгээс хүлээн авагчийг таамаглаж болохгүй.

tailscale serve status
tailscale funnel status
tailscale status --json | head -40

Командын синтакс клиентийн хувилбаруудын хооронд өөрчлөгдсөн тул хуулсан дуудлага таны зорьсноос өөр горим сонгож болно. Таны ажиллуулж буй хувилбарт зориулсан баримтжуулсан хэлбэрийг илүүд үзэж, таамаглахын оронд клиентийн хэвлэсэн баталгаажуулалтыг уншина уу. Хэрэв Serve болон Funnel тохиргоо хоёулаа байвал ил гаргахад чухал нь нээлттэй нь юм. Зорьж байгаагүй тохиргоог дээр нь өөр нэгийг нэмэхийн оронд дахин тохируулна уу.

Хэрэв гаралт хүлээн авагчийг нэрлэхгүй бол зогсоод төлөвийг дахин уншина уу. Зарлагдсан хүлээн авагчгүй нийтэлсэн URL бол таамаг бөгөөд таамаг нь дотоод хяналтын самбарууд нээлттэй интернетэд хүрэх зам юм.

Үнэхээр зорьсон хүлээн авагчтайгаа туршина уу

Үйлчилгээг нийтэлсэн машинаас биш, tailnet-ийн гаднаас туршина уу. Tailnet төхөөрөмжөөс ирсэн хүсэлт прокси ажиллаж байгааг нотолдог, гэхдээ гадны хүн хасагдсаныг нотолдоггүй. Tailscale клиентгүй, tailnet рүү чиглэлгүй сүлжээг ашиглана уу.

curl -sI https://host.tailnet-name.ts.net
curl -sI https://host.tailnet-name.ts.net --resolve host.tailnet-name.ts.net:443:203.0.113.10

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

Үйлчилгээ нийтлэх нь гадагш чиглэсэн урсгал хаанаас гардагийг хянадаг гарах зангилаа сонгохтой ижил шийдвэр биш юм. Serve болон Funnel нь таны ажиллуулж буй зүйлд хэн хүрч чадах вэ гэдэгт хариулдаг бол гарах зангилаа нь таны өөрийн холболтууд хаанаас ирж байгаа мэт харагдахыг хариулдаг. Хоёр асуултыг тус тусад нь байлгавал харьцуулалт энгийн хэвээр байна.

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