Дамжуулалтын тест: тогтсон TCP урсгал амьд үлдэх үү?
Нөөц гарц шинэ холболт бүрийг хүлээн авч, аль хэдийн явж буй дамжуулалтыг тасалж болно. Хоёр үр дүнг шалгаж, буцах тохиолдлыг төлөвлөгөөнд үлдээгээрэй.
«Нөөц ажилладаг» гэсэн өгүүлбэрт хоёр үр дүн нуугдаж байна. Шинэ хүсэлт амжилттай болно, энэ нь сэргээлт юм. Аль хэдийн явж буй дамжуулалт үргэлжилнэ, энэ нь тасралтгүй байдал юм. Эдгээр нь өөр өөр амлалт бөгөөд ихэнх дамжуулалтын загвар эхнийхийг өгдөг бол хоёр дахь нь чимээгүйхэн хугацаа хэтэрч дуусдаг. Механизм сонгохоос өмнө аль нь хэрэгтэйгээ шийдэж, хоёрыг нь ялгаж чадахуйц тест бичээрэй.
Нэг амжилт мэт харагдах хоёр үр дүн
10.90.0.42 дээрх клиент 198.51.100.20:443 руу холбогдсон гэж төсөөлөөрэй. Үндсэн гарц үүнийг нэг нийтийн хаяг, порт руу хөрвүүлж, нөөц гарц өөр рүү хөрвүүлнэ. Клиентийн дотоод хаяг хэзээ ч өөрчлөгдөхгүй, тиймээс хүмүүс холболт амьд үлдэнэ гэж хүлээдэг.
Сервер дотоод хаягийг хардаггүй. Тэр хөрвүүлсэн төгсгөлийн цэгийг хардаг бөгөөд энэ цэг шилжүүлсний дараа өөр байна.
Тиймээс хуучин урсгал хугацаа хэтэрч дуусдаг бол мөнөөх үйлчилгээ рүү шинэ холболт шууд ажиллана. Хоёр ажиглалт нэгэн зэрэг үнэн.
Гарц өөрчлөгдөхөд сервер юу хардаг вэ
TCP холболтыг дөрвөлжөөр нь тодорхойлдог бөгөөд эх хаяг эсвэл порт өөрчлөгдөх нь хүлээн авагч хостод өөр холболт үүсгэдэг. Серверийн мэдэхгүй холболт дээр шинэ эхээс ирсэн пакетуудыг хаядаг эсвэл дахин тохируулгаар хариулдаг. VPN клиентийн хаягт энэ өөрчлөлтийн турш холбоог хадгалдаг зүйл байхгүй.
Төлөвтэй шилжүүлэлт яг үүнээс зайлсхийхийн тулд оршдог бөгөөд дамжуулагч төхөөрөмжүүдийн хооронд хөрвүүлэлтийн төлөв болон холболтын төлөвийг солилцох замаар ажилладаг. Энэ нь хосын шинж, туннелийн биш бөгөөд таамаглахын оронд зохион бүтээж, турших ёстой.
Хэнд ч тасралтгүй байдлыг амлахаас өмнө хос үнэхээр төлөв хадгалж байгаа эсэхийг шалгаарай. Доорх командууд хоёр талын одоогийн төлөвийг харуулна.
conntrack -L -d 198.51.100.20 2>/dev/null | head
ss -tin dst 198.51.100.20
tcpdump -ni any host 198.51.100.20 -c 10Яагаад ижил нийтийн хаяг хангалтгүй вэ
Хоёр замд нэг нийтийн хаяг хадгалах нь сайн эхлэл, учир нь тэгвэл сервер ижил эх төгсгөлийн цэгийг хардаг. Гэхдээ дангаараа энэ нь хангалтгүй. Дамжуулагч төхөөрөмжид хөрвүүлэлтийн төлөв, галт хананы төлөв, ашиглах боломжтой буцах зам хэрэгтэй хэвээр бөгөөд эдгээр нь шилжүүлсний дараа урсгалыг даадаг төхөөрөмж дээр байх ёстой.
RFC 3022 хаягийн хөрвүүлэлтийг тодорхойлж, хөрвүүлдэг төхөөрөмжүүдийн хоорондын төлөвийн солилцоог нөөц загварын хэсэг гэж үздэг. Хөвөгч хаяг эсвэл хуулсан профайл тохиргоог зөөдөг боловч төлөвийг зөөдөггүй.
Тиймээс зөвхөн нөөцөөр ping хийдэг тест маш бага зүй нотолдог. Ping-д алдах холболтын төлөв байхгүй.
Шаардлага хэр хүчтэйг тодорхойлоорой
Хэрэв хэрэглэгчид алдааны дараа дахин холбогдож чадвал загвар нь сэргээлтийн загвар бөгөөд хүлээн авах тест нь шинэ хүсэлт юм. Хэрэв файл дамжуулалт амьд үлдэх ёстой бол загварт төлөвийн синхрончлол, хамаагүй болгоомжтой тест хэрэгтэй. Хэрэв алсын сесс амьд үлдэх ёстой бол шаардлага бүр ч хүчтэй бөгөөд сүлжээний түвшний оронд програмын түвшний механизм шаардагдаж болно.
Шаардлагыг хэмжигдэх үр дүнтэй өгүүлбэр болгон бичээрэй, жишээ нь байршуулалт дахин эхлэхгүйгээр дуусна эсвэл оператор нэг минутын дотор дахин холбогдоно. Дараа нь түүнийг хангах хамгийн хямд механизмыг сонгоорой, энэ нь ихэвчлэн сэргээлтийн загвар байдаг.
Үндсэн зам буцаж ирэхэд юу болохыг тодорхой хэлээрэй, учир нь автомат буцаалт нөөц дээр дөнгөж сэргэсэн холболтыг тасалж болно. Тэр тохиолдол туршилтын төлөвлөгөөнд хамаарна, зүүлт тайлбарт биш.
Хуучин урсгал болон шинэ хүсэлтийг шалгаарай
Үндсэн замаар хор хөнөөлгүй урт дамжуулалт эхлүүлж, дараа нь мөнөөх үйлчилгээ рүү тусдаа шинэ хүсэлт илгээгээрэй. Програмын контекст, ажиглагдсан гарах хаяг, цагийг тэмдэглээрэй. Үндсэн замыг зөвшөөрөгдсөн аргаар тасалж, шинэ хүсэлтийг нөөцөөр дамжуулж байхдаа анхны дамжуулалтыг үргэлжлүүлэн ажиглаарай.
Гурван утгыг мэдээлээрэй: хуучин урсгал үргэлжилсэн, дахин тохируулагдсан эсвэл хугацаа хэтэрсэн эсэх; шинэ үйлдэл анх хэзээ ажилласан; буцаалт ямар нэг зүйлийг тасалсан эсэх. Тэр гурван мөр нь хүлээн авалтын бүртгэл юм.
ss -tin dst 198.51.100.20
curl -sS -o /dev/null -w '%{http_code} %{time_total}\n' https://198.51.100.20/
tcpdump -ni any port 443 -c 20Хэрэв ажлын ачаалал өгөгдөл бичдэг бол хугацаа хэтэрсний дараа тодорхойгүй үйлдлийг сохроор давтах хэрэггүй. Хариу алга болохоос өмнө бичилт хүрсэн байж магадгүй. Үр дүнг програмаас асуух эсвэл үйлдэл идемпотент байгаа газарт л дахин оролдоорой. Дараа нь хүлээн авалтын мэдэгдлийг гурван хэсэгт бичээрэй: шинэ үйлдлүүд гарцын бодлогын дагуу сэргэдэг, одоо байгаа урсгалууд баримтжуулсан таслалтын зан төлөвтэй, програмын аюулгүй үргэлжилнэ. Тэр мэдэгдэл шалгагдахуйц бөгөөд загвар юу амлахгүйг тодорхой хэлдэг.