OpenVPN-ээр LAN-д хандах боломжгүй болсон уу? Бүс, маршрут, буцах замыг шалгаарай
Рутер өөрөө локал учраас хариулдаг. Түүний ард байгаа машин руу хүрэхэд дамжуулах дүрэм, клиент дээрх угтвар, хариултын буцах зам хэрэгтэй.
Туннель амжилттай холболт мэдээлж, рутерийн өөрийн хуудас ачаалагдаж байгаа ч түүний ард байгаа машин руу диск холбох нь хугацаа хэтэрч байна. Энэ хослолд зөрчил байхгүй: рутер өөрөөрөө хариулж байгаа бөгөөд түүний ард байгаа зүйлд хүрэх нь өөр газар гаргасан өөр шийдвэр юм. Доорх шалгалтуудыг дарааллаар гүйцэтгэж, эхний бүтэлгүйтэл дээр зогсоорой, учир нь тус бүр өмнөх дээр тогтдог. Дөрөв нь тэнцвэл алдаа нь туннелийн дотор биш, дээр байна.
LAN руу явж буй пакетыг аль шүүлтүүр хардаг вэ
Рутер руу хаягласан пакет локалд зарцуулагдана; түүний ард байгаа хост руу хаягласан пакетыг дамжуулах ёстой бөгөөд галт хана эдгээр хоёр тохиолдлыг тусад нь дүгнэдэг. Тиймээс рутерт хүрэх зөвшөөрөл түүнийг давах зөвшөөрлийн талаар юу ч хэлэхгүй. Дүрмийн багцаа нуудаг firmware хоёуланг нь хэрэгжүүлдэг, ихэвчлэн LAN, интернэт эсвэл хоёуланг нь санал болгодог сонгогч хэлбэрээр. Сонгогч LAN-ыг орхивол дараагийн ямар ч шалгалт хамаагүй.
OpenWrt энэ хуваалтыг шалгах боломжтой болгодог бөгөөд ялгааг нэг удаа унших нь зүйтэй. Туннелийг дуусгадаг бүсэд LAN бүс рүү чиглэсэн дамжуулах дүрэм хэрэгтэй, харин оролтын дүрэм зөвхөн рутер дээрх үйлчилгээг зохицуулдаг. Ажиллаж байгаа удирдлагын хуудасны хажууд үхсэн LAN байх нь тэр дутуу дамжуулах дүрмийн ердийн үр дүн.
uci show firewall | grep -E "zone\[[0-9]+\]\.(name|input|forward|output)"Туннель агуулж буй бүсийн дамжуулах зорилтыг хараарай: accept бол шат нь хэрэгтэй зүйл, reject нь доорх хугацаа хэтрэлт бүрийг тайлбарладаг. Хоёр хөрш тохиргоо ижил шинж тэмдэг үүсгэдэг тул энд байхдаа тэдгээрийг хасаарай. Утасгүй тусгаарлалт нь утастай хостүүдийг утасгүй клиентүүдээс нуудаг, идэвхгүй LAN хостүүдийг офлайн гэж үздэг рутер дамжуулалт ажилласны дараа ч хариултуудыг хаяж болно.
Яагаад хуваагдсан туннель түлхсэн угтвар хэрэгтэй вэ
Бүх урсгалыг туннелээр илгээдэг клиент өөрийн өгөгдмөл маршрутаар LAN угтварыг аль хэдийн эзэмшдэг тул нэмэх зүйл байхгүй. Хуваагдсан туннель бол угтварыг тодорхой зааж өгөх шаардлагатай тохиолдол, учир нь тохиргоонд өөр юу ч үүнийг дурдаагүй. Зааврыг серверийн тохиргоонд нэмж, үйлчилгээг дахин ачаална уу.
push "route 192.168.50.0 255.255.255.0"Агуулсан профайлууд route-nopull түлхсэн маршрутуудыг үл тоомсорлодог тул мөнөөх угтвар клиентийн файлд хамаарах ёстой. Ямар ч тохиолдолд бичлэг ирснийг таамаглахгүйгээр баталгаажуулаарай, учир нь чимээгүй дарж бичих нь галт хананы асуудалтай яг адил харагдана.
ip route show | grep 192.168.50Сайт-сайт түнш түлхэлтээс илүүг шаарддаг. Сервер тэр түншийн ард ямар угтварууд байгааг мэдэх ёстой бөгөөд үүнийг түүний client-config-dir файл дахь iroute мөр хийдэг, мөн өөрийн хүснэгтэд туннель руу орох тохирох маршрут хэрэгтэй.
Хариултад хүрч чадах хаяг хэрэгтэй
Хүсэлтийг дамжуулах нь солилцооны тал хувь л юм, учир нь LAN хост туннелийн сан дахь хаяг руу хариулах ёстой. Жижиг рутерууд үүнийг ихэвчлэн туннелийн бүс дээр эх үүсвэрийг хөрвүүлэх замаар шийддэг тул хариулт рутер руу хаяглагдаж, өөр газар тохиргоо шаардахгүй. Тэр хөрвүүлэлтийг авбал хост сан руу өөрийн маршрут хэрэгтэй болно, рутер түүний өгөгдмөл гарц байхад үүнийг үнэгүй авдаг. Гараар тохируулсан хаяг, өөр гарцтай хост тэр гарцаар хариулж, клиент сесс нээгдээд дараа нь гацсныг хардаг.
tcpdump -ni tun0 host 192.168.50.20Клиент хүсэлтээ давтах үед үүнийг рутер дээр ажиллуулж, хүсэлтийн оронд хариултын очих газрыг уншаарай. Сан руу хаягласан хариулт нь буцах зам ажиллаж байгаа бөгөөд алдаа илүү гүнд байгааг илтгэнэ. Хариулт огт байхгүй бол хост пакетыг хэзээ ч хүлээж аваагүй гэсэн үг бөгөөд энэ нь таныг дүрмийн багц руу буцаана.
Зөв газарт дуусдаг шат
Дөрвөн шалгалт давхаргыг тодорхойлдог бөгөөд тус бүр нь дүгнэлт биш, нэг команд юм. Тэдгээрийг дарааллаар ажиллуулж, эхний бүтэлгүйтэл дээр зогсоорой. Дараалал нь командуудаас илүү чухал, учир нь дараагийн тэнцсэн алхам өмнөх нь яагаад бүтэлгүйтсэнийг нуудаг.
ping -c1 10.8.0.1
ping -c1 192.168.50.20
nc -vz 192.168.50.20 445
getent hosts nas.localНэрс шатны төгсгөлд хамаарах бөгөөд хэзээ ч эхэнд биш. 192.168.50.20 гэж хариулдаг ч nas.local гэж хариулдаггүй хуваалцалт нь нэрийн шийдэл эсвэл хайлтын дагавар руу заадаг бөгөөд галт хананы засвар аль нэгийг нь ч өөрчилж чадахгүй.
Эхний бүтэлгүйтсэн алхмыг тэмдэглээд, дараа нь үйлчилгээний портуудад өөрсдийн тойрог өгөөрэй, учир нь сонсогч болон хостын зөвшөөрөл нь тусдаа шаардлага. Файл хуваалцах, алсын ажлын талбар, камерын урсгал бүгд хоёуланг нь шаарддаг, LAN дэд сүлжээнд итгэдэг ч туннелийн санд итгэдэггүй хостын галт хана ping амжилттай байхад ч клиентийг хаядаг. Бүх шалгалт тэнцсэн ч програм ажиллахгүй бол алдаа туннелийн дээр байна: нэг интерфэйст холбогдсон үйлчилгээ эсвэл клиент дээр тохируулсан прокси.