שגיאות פסק זמן בפרוקסי: החיבור נתקע, ואז מוותר
Updated:
פסק זמן מתסכל יותר משגיאות אחרות משום שהוא אינו מוסר דבר: אין סירוב, אין בקשת סיסמה, רק שתיקה עד שהתוכנה שלכם מוותרת. בדרך כלל חבילות הנתונים נשלחות ונעלמות, או שהפרוקסי מקבל את החיבור אך אינו משיב בזמן. המטרה היא לגלות באיזה שלב מתרחשת השתיקה.
שלושה פלטי פסק זמן שמדדנו
הגדרנו פרוקסי בדיקה שמקבל חיבורי TCP ולעולם אינו עונה, ולאחר מכן הרצנו את אותה בקשה עם שני סוגים של הגבלת זמן (הכתובת שונתה ל-203.0.113.10:8080, user123:pass456):
- הפקודה
curl --connect-timeout 10 -x http://user123:[email protected]:8080 https://example.comמחזירהcurl: (28) Proxy CONNECT aborted due to timeout. הגבלה זו מכסה רק את שלב החיבור. - החלפה ל-
-m 10(מגבלה על ההעברה כולה) מניבהcurl: (28) Connection timed out after 10002 milliseconds. - Chromium המכוון לאותו פרוקסי מדווח על
ERR_TIMED_OUT; ה-proxy checker מדווח עלtimeout.
גורמים, מהסביר ביותר לפחות
- הרשת שלכם חוסמת בשקט את יציאת הפרוקסי. רשתות Wi-Fi במשרדים, בבתי מלון ובקמפוסים נוטות להשמיט חבילות נתונים ליציאות חריגות במקום לסרב להן, וכך אתם ממתינים לנצח.
- זמן ההמתנה שהוגדר בקוד קצר מדי. פרוקסי במדינה מרוחקת זקוק לקצת יותר זמן ללחיצת היד; מגבלה של 2–3 שניות עלולה לקטוע פרוקסי שפועל באופן תקין.
- עומס יתר על הפרוקסי או על היעד. הפרוקסי מקבל את החיבור אך ממתין לאתר, וסבלנות התוכנה שלכם אוזלת קודם.
- כתובת IP שגויה. שגיאת הקלדה המובילה לכתובת שאינה מגיבה מייצרת דממה במקום סירוב.
פתרונות לפי סביבת עבודה
- Windows/Chrome: נסו את אותו פרוקסי באמצעות החיבור הסלולרי של הטלפון. אם פסק הזמן נעלם, הרשת המקורית היא זו שחוסמת; קראו על בדיקת הפרוקסי וחומת האש.
- דפדפני אנטי-דיטקט: כפתור בדיקת הפרוקסי מוגדר בדרך כלל עם זמן המתנה קבוע. נסו שוב מספר פעמים, ואם רק חלק מהפרופילים נכשלים, השוו את שורת הפרוקסי שלהם לזו של פרופיל תקין.
- Telegram: מצב שבו החיבור נתקע על התחברות לאחר הפעלת פרוקסי נובע לרוב גם הוא מפסק זמן; בדקו את הפרוקסי בבודק לפני שינוי ההגדרות ב-Telegram.
- Python requests: העבירו
timeout=(10, 30), כלומר 10 שניות להתחברות ו-30 שניות לקריאה. תפסו אתrequests.exceptions.ConnectTimeoutואתrequests.exceptions.ReadTimeoutבנפרד כדי לראות היכן הוא נתקע, והוסיפו מספר ניסיונות חוזרים במרווחי זמן במקום פסק זמן בלתי מוגבל. - curl: השתמשו ב-
--connect-timeoutכדי למדוד את שלב החיבור בלבד וב--mכדי להגביל את הפקודה כולה.
פסק זמן או סתם איטי?
פרוקסי איטי עדיין עונה, רק באיחור. בדיקת מהירות הפרוקסי מציגה זמני תגובה אמיתיים; אם הם קרובים להגדרת פסק הזמן בתוכנה שלכם, הגדילו את המגבלה או בחרו פרוקסי במדינה קרובה יותר ליעד. אם בדיקות חוזרות ונשנות אינן מקבלות מענה לעולם, מדובר בפסק זמן אמיתי, והשלב הבא הוא פתיחת פנייה לתמיכה עם תוצאת הבודק.
שלב אחר שלב
- 1
אמתו את פסק הזמן באמצעות הבודק
הדביקו את שורת הפרוקסי לתוך בודק הפרוקסי. תוצאת
timeoutפירושה שלא התקבלה תשובה בתוך מגבלת ההמתנה. - 2
החליפו רשת כדי לצמצם אפשרויות
נסו שוב דרך חבילת הגלישה הסלולרית. אם זה עובד, הרשת המקורית או חומת האש שלה הן הבעיה.
- 3
מדדו את זמן התגובה
הריצו את בדיקת מהירות הפרוקסי כדי לראות אם הפרוקסי איטי או שאינו מגיב כלל.
- 4
כווננו זמני המתנה וניסיונות חוזרים בתוכנה שלכם
העלו את מגבלת זמן החיבור לכ-10 שניות, הוסיפו ניסיונות חוזרים והפעילו את המשימה שוב.
שאלות נפוצות
האם פסק זמן של פרוקסי אומר שהפרוקסי מושבת?
לא בהכרח. מקרי פסק זמן רבים נגרמים מרשת המשתמש שחוסמת את היציאה. בצעו בדיקה מרשת אחרת לפני הסקת מסקנות.
איזה פסק זמן מומלץ להגדיר עבור פרוקסי בקוד?
כ-10 שניות לחיבור ו-30 שניות לקריאה הן נקודת פתיחה הגיונית. פרוקסי מרוחק או דפים כבדים עשויים לדרוש יותר.
מדוע פסק הזמן דרך הפרוקסי מתרחש רק באתרים מסוימים?
במקרה כזה הפרוקסי פועל, אך אתר היעד איטי או חוסם את הגישה. אם האתר מחזיר שגיאת 502 במקום שתיקה, ראו 502 Bad Gateway.
במה שונה פסק זמן מחיבור שסורב?
סירוב חוזר באופן מיידי; פסק זמן ממתין עד תום המגבלה. ראו שרת פרוקסי מסרב לחיבורים.
בחרו פרוקסי קרוב לשוק היעד שלכם
VinaProxy מציעה כתובות IP בווייטנאם, ארה"ב, יפן, דרום קוריאה, סינגפור, בריטניה והונג קונג, כך שתוכלו להישאר קרובים ליעד שלכם.
צפו במחירים