Нэг WireGuard хань нь трафикийг дамжуулж, хоёр дахь нь гар барилтыг дуусгадаг ч туннелийн цаана байгаа юунд ч хэзээ ч хүрдэггүй. Ажиллаж байгаа хань танд интерфейс, UDP порт, серверийн түлхүүр магадгүй хэвийн гэдгийг хэлдэг. Энэ нь хоёр дахь ханьийн AllowedIPs, түүний дотоод эх үүсвэрийн хаяг эсвэл тэдгээрийн хоорондын дамжуулах дүрмийн талаар юу ч хэлдэггүй. Жагсаалтыг дарааллаар нь явж, нөхцөл биелэхгүй эхний алхамд зогсоно уу.

Алхам 1: Пакетийн явах ёстой замыг бичиж аваарай

Нэг хаб дээрх хоёр клиент бие биедээ автоматаар хүрдэггүй. Хаб ба туяаны бүтцэд сервер пакетийг wg0 дээр хүлээн авч, түүнийг дахин wg0-оос нөгөө хань руу дамжуулах ёстой бөгөөд энэ нь IP дамжуулалт болон дамжуулах дүрмийг шаарддаг. Шууд хань-хань бүтцэд тал бүр нөгөөгийнхөө төгсгөлийн цэг болон нөгөөгийнхөө туннелийн хаягийг AllowedIPs дотор байлгах шаардлагатай. Ямар ч тохиргоог уншихаас өмнө аль бүтцийг засаж байгаагаа шийдээрэй.

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

Алхам 2: AllowedIPs-ийг хоёр талд харьцуулаарай, зөвхөн нэг талд биш

WireGuard AllowedIPs-ийг маршрутын хүснэгт болон хандалтын жагсаалт хэлбэрээр зэрэг ашигладаг. Илгээх үед туннелийг сонгохын тулд очих хаягийг ханьийн AllowedIPs-ээс хайдаг; хүлээн авах үед дотоод эх үүсвэрийн хаяг илгээгч ханьийн AllowedIPs дотор орох ёстой, эс бөгөөс пакетыг хаяна. Аль ч талд муж дутуу байвал ижил шинж тэмдэг гарна: тээвэр ажилладаг, ачаа алга болдог.

Файлыг биш, амьд төлөвийг уншина уу, учир нь дахин ачаалт чимээгүй бүтэлгүйтсэн байж болно: sudo wg show wg0 allowed-ips. Сервер дээр бүтэлгүйтсэн ханьийн бичлэг түүний туннелийн хаягийг агуулсан байх ёстой, жишээ нь 10.90.0.3/32. Клиент дээр серверийн ханьийн бичлэг таны шалгаж буй очих газрыг агуулсан байх ёстой, энэ нь хабын туннелийн хаяг ч бай, алсын дэд сүлжээ ч бай. Давхцсан мужууд хайлтыг хоёрдмол утгатай болгож, таны санаагүй ханьийг сонгож болзошгүй тул тэдгээрийг тусдаа байлгаарай.

Алхам 3: Дотоод эх үүсвэрийн хаягийг шалгаарай

10.90.0.3-ыг wg0-оор маршрутладаг ч пакетуудыг өөрийн Wi-Fi хаягаас илгээдэг клиентийг хүлээн авагч татгалзана, учир нь эх үүсвэр ханьийн AllowedIPs-тэй тохирохгүй. Цөм яг юу сонгодогийг ip route get 10.90.0.3 from 10.90.0.2 ашиглан, туннелийн интерфейст олгосон хаягийг ip -brief addr show wg0 ашиглан баталгаажуулаарай.

Хүлээн авагч Linux хост дээр урвуу замын шүүлт нь хоёр дахь хаалга юм. Буцах маршруттай интерфейс дээр хатуу rp_filter нь ирсэн интерфейстэй буцах зам нь тохирохгүй туннелийн трафикийг хаяж болно. Унтраахаас өмнө үр дүнтэй утгыг шалгаарай; олон топологид зөв засвар нь зам бөгөөд суларсан шүүлт биш.

Алхам 4: Хабын дамжуулалт болон буцах замыг хянаарай

Хэрэв хаб ханьийн хооронд дамжуулах ёстой бол цөмд net.ipv4.ip_forward=1 хэрэгтэй бөгөөд галт хана дамжуулагдсан урсгалыг хүлээж авах ёстой: wg0 дээр орох, wg0-оос гарах, илгээгчийн туннелийн хаягаас хүлээн авагчийн хаяг хүртэл. Түгээмэл алдаа нь UDP 51820-ийг хүлээж авдаг оролтын дүрэм байгаа ч дамжуулах дүрэм байхгүй байх] бөгөөд гар барилт амжилттай болж, ачаа үхдэг. Хүчинтэй дүрмүүдийг sudo nft list ruleset эсвэл таны галт хананы менежерийн дүйцэх командаар жагсааарай.

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

Эцэст нь гар барилтыг өгөгдлөөс тусгаарлаарай. Гар барилтыг дуусгаад том дамжуулалтад гацдаг хань нь ихэвчлэн яг тэр зам дээр MTU эсвэл MSS-ийн асуудалтай байдаг, AllowedIPs-ийн асуудал биш. Эхлээд жижиг ping-ээр, дараа нь бүрэн хэмжээтэй ping-ээр шалгаж, хоёр ханьийг харьцуулаарай.

Алхам 5: Нэг зүйлийг өөрчилж, ажиллаж байгаа ханьийг хөндөхгүй үлдээгээрэй

Бүтэлгүйтсэн зам дээр нэг л өөрчлөлт хийж, хоёр ханьийг дахин шалгаарай. Хань бүрийн AllowedIPs-ийг 0.0.0.0/0-ээр солих нь өмнө нь ажиллаж байсан ханьийг эвдэх хамгийн хурдан арга, учир нь энэ нь тухайн интерфейс дээрх бүх трафикийн маршрутын шийдвэрийг өөрчилдөг. Тэр нэг бичлэгийг засаж, дахин ачаалж, амьд төлөвийг дахин уншина уу.

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

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