Windows дээр OpenVPN адаптер байнга тасарч байна уу? Давхар IP-г шалгаарай
Windows дээр байнга тасардаг адаптер нь ихэвчлэн хаягийн зөрчил, драйверын алдаа биш. 4198, 4199 үйл явдлыг уншиж, хоёр дахь эзэмшигчийг олоод дараа нь өвөрмөц хаяг тогтооно уу.
Windows дээр хаяг авч, түүнийгээ орхиод хэдхэн секунд тутамд үүнийг давтдаг OpenVPN адаптер нь ихэвчлэн DHCP-ийн алдаа биш. Адаптерт өөр нэг зүйл хариулж байгаа хаягыг ашиглахыг тушаадаг тул Windows түүнийг ашиглах боломжгүй гэж тэмдэглэж, клиент дахин эхэлдэг. Зөрчил нь түүний доор, үйлдлийн системийн өөрийн сүлжээний стек дотор шийдэгддэг тул клиентийн лог чимээгүй байдаг.
Энэ ялгаа чухал, учир нь туннелийн тохиргоонд чиглэсэн алдаа олборлолтын алхам бүр серверийн талын давхар хаягийг алгасах болно.
Клиентийн лог биш, Windows-ийн үйл явдлын логоос эхэл
Windows хаягийн зөрчлийг системийн логт 4198, 4199 үйл явдлын ID-тайгаар бүртгэдэг. Эхнийх нь хаягт илэрсэн зөрчлийг мэдээлдэг, хоёр дахь нь интерфэйс өөрийн тохируулсан хаягыг ашиглаж чадаагүйг мэдээлдэг. Аль нь ч OpenVPN-ийг дурдахгүй, яг үүнээс болоод тэдгээрийг анзаарахгүй байх амархан.
Сүүлийн үйл явдлуудыг татаж, тэдгээрийн цагийн тэмдгийг адаптерын шинэчлэлтийн мөчлөгтэй харьцуул: Get-WinEvent -FilterHashtable @{LogName='System'; Id=4198,4199} -MaxEvents 40 | Format-Table TimeCreated,Id,Message -Wrap. Арван таван секунд тутамд гарч буй зөрчил нь тухайн хаягт хариулсаар байгаа эзэмшигчийн эсрэг мөнөөх хаягыг дахин оролдож буй клиенттэй тохирно. Холболтын үеийн ганц зөрчил нь харин нэг удаагийн мөргөлдөөнийг илтгэнэ. Ямар ч байсан дараагийн асуулт нь хаягыг өөр хэн эзэмшиж байгаа вэ гэдэг.
Гурван зохион байгуулалт хоёр хостыг нэг хаяг дээр тавьдаг
Серверээс хаягыг хэн эзэмшиж байна гэж бодож байгааг нь асууж, дараа нь сүлжээнээс түүнд хэн хариулж байгааг асуу. grep -H ifconfig-push /etc/openvpn/ccd/* бэхэлсэн туннелийн хаяг бүр болон түүний хамаарах гэрчилгээг жагсаана. ip -4 neigh show dev tap0 гүүр хоёр дахь түвшинд юу сурсныг харуулна. Эдгээр хоёр жагсаалтыг харьцуулбал ихэнх давхардлыг нэг минутаас бага хугацаанд олно.
Гурван зохион байгуулалт бараг бүгдийг тайлбарладаг: client-config-dir-ийн бичлэг хоёр гэрчилгээнд нэг хаяг бэхэлдэг, гүүрээр холбосон tap сегмент нь өөр хост аль хэдийн статикаар эзэмшиж буй хаягыг машинд өгдөг, эсвэл хуучирсан түрээсийн файл холбогдсон хэвээр байгаа клиент өөрийн гэж боддог хаягыг буцаадаг. Гурав дахь тохиолдол хамгийн зальтай, учир нь ifconfig-pool-persist танигдсан клиентүүдэд хаягыг санаатайгаар дахин ашигладаг.
Хаягын төлөө уралдахын оронд түүнийг өвөрмөц болго
Ачааллын дараалал зөвхөн өнөөдөр хэн ялахыг шийддэг тул дахин эхлүүлэх дараалалд суурилсан аливаа засварыг түр гэж үз. Клиент бүрд өөрийн ifconfig-push мөрийг өг, эсвэл гүүр болон серверийн интерфэйсийн аль нь ч хүрэхгүй мужаас статик хаяг хуваарил. Клиентийн жагсаалтыг давхар нийтлэг нэрээр мөн шалга, учир нь duplicate-cn хоёр сессэд нэг таних тэмдэг, улмаар нэг бэхэлсэн хаяг хуваалцахыг зөвшөөрдөг. Хэрэв гүүрээр холбосон төхөөрөмжид үнэхээр тогтмол хаяг хэрэгтэй бол түүнийг өөрийн дэд сүлжээнд шилжүүлэх эсвэл сервер бүртгэдэг газарт сангаас нөөцөл.
persist файлыг ямар түрээс агуулж байгааг мэдсэний дараа л устга, тэгэхгүй бол дараагийн дахин холболт мөнөөх хаягуудыг дахин тараана.
Зөв дарааллаар дахин эхлүүлж, хаяг бүрд нэг эзэмшигчтэй гэдгийг батал
Өөрчлөлтийг эхлээд серверт хэрэглээд, дараа нь клиентүүдийг дахин холбо, ингэснээр оролцогч бүр зассан сангийн эсрэг бүртгүүлнэ. Клиентүүдийг эхлээд дахин эхлүүлбэл тэд сервер хараахан эзэлсэн гэж үзэж буй хаягуудтайгаа үлдэнэ. Дахин эхлүүлсний дараа статусын файлыг уншиж, нийтлэг нэр бүр нэг хаягтайгаар нэг удаа гарч байгааг батал. Нэг нэрэнд хоёр бичлэг байгаа нь хуучин сесс хэзээ ч хаагдаагүй гэсэн үг, сан эвдэрсэн гэсэн үг биш.
Хэрэв клиент хаягаа хадгалж чадахгүй хэвээр байвал мөнөөх хост дээрх гүүрийн интерфэйс түүнийг зөөж байгаа эсэхийг шалга. Нийлүүлэгчийн төхөөрөмжөөс хаяг өвлөсөн гүүр нь VPN сервер тэр хаягыг клиентэд аль хэдийн өгсөн байсан ч ARP-д хариулна.
Тасалбарыг хаахаасаа өмнө бүрэн шинэчлэлтийн мөчлөгийг ажигла
Нэг цэвэр уншилт юуг ч батлахгүй. Адаптерыг дор хаяж арван минут ажиглаж, дунд нь дахин холболтыг албад: Get-NetIPAddress -InterfaceAlias "OpenVPN*" | Select-Object IPAddress,AddressState. Хаяг нь дахин холболтыг даван туулж, давуу төлөвт үлдэх ёстой.
Дараа нь эхний алхмын үйл явдлын асуулгыг дахин ажиллуулж, шинэ юу ч буцаахгүй байгааг батал. Дахин холболтын турш чимээгүй лог нь зөрчил арилсны нотолгоо, харин нэг холболтын дараах чимээгүй лог нь уралдаан хараахан болоогүй гэсэн үг л юм. Эцэст нь туннель байгаа шалтгаан болох нөөцийг шалга, учир нь хаягаа алдсан гүүр нь VPN өөрөө эрүүл харагдаж байхад нийлүүлэгчийн замыг эвдэж болно.
Сангийн хүрээ, бэхэлсэн хаяг бүр, түүнийг эзэмшиж буй хост зэргийг серверийн тэмдэглэлд бич. Тэгвэл дараагийн мөргөлдөөнийг анзаарахад хэдхэн минут хангалттай, дахин олоход хагас өдөр шаардагдахгүй.