Юнит улаан, интерфейс байгаа, туннель ихэвчлэн ажиллаж байна — энэ бол хамгийн будлиантай хослол. Тохиргоо нь дараалал: эхлээд интерфейс үүснэ, дараа нь хаяг, маршрут, шийдэгчийн тохиргоо болон аливаа дэгээ командууд ирнэ. Дөрөв дэх алхамд гарсан алдаа эхний гурвыг байранд нь үлдээдэг тул интерфейсийн нэр эхэлснийг нотолж байна, дууссаныг биш. Нэг нэмэлт баримт энэ будлианаас аварч болох байсан: бүтэлгүйтсэн алхам.

Хагас төлөв бол ердийн бүтэлгүйтэл

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

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

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

Эхний бүтэлгүйтсэн алхмыг ол

Зөвхөн одоогийн төлөв биш, юнитийн журналыг уншиж, бүтэлгүйтсэн ажиллагааны эхнээс унш. Сүүлийн мөр гарах кодыг хэлнэ; эхний алдаа юуг засахыг хэлнэ.

Эдгээр командууд юнитийн төлөв, тухайн юнитийн ачаалах журнал, туннелийн амьд төлөвийг хэвлэнэ:

systemctl status wg-quick@wg0
journalctl -u wg-quick@wg0 -b --no-pager | tail -40
wg show
ip -4 addr show dev wg0

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

Засварыг шийдэх гурван нөхцөл

Та цэвэрлэж байна уу, газар дээр нь засаж байна уу, эсвэл юнитийг ачаалах замаас хасаж байна уу — үүнийг ямар нэгэн зүйл бичихээс өмнө шийд.

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

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

Дахин оролдохын өмнө цэвэрлэ

Одоо байгаа төлөв дээр дахин оролдох нь шинэ шалтгаанаар бүтэлгүйтэж, анхны шалтгааныг нууж болно. Интерфейсийг үүсгэсэн ижил хэрэгслээр доошлуул, дараа нь юу ч үлдээгүйг батал.

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

Юнитийг биш, туннелийг нотол

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

Туннелээр хүсэлт илгээж, түүнийг үүсгэсэн төлөвийг унш:

systemctl is-active wg-quick@wg0
wg show wg0 latest-handshakes
ping -c 3 10.63.0.1
resolvectl query internal.example.net

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

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