עבור לתוכן

InetAddress.isReachable מסרב לעבוד ב-java

Featured Replies

פורסם

שלום,

אני מנסה לכתוב תוכנה פשוטה שבסך הכל תוודא שאני מחובר לאינטרנט וכדי לבדוק חיבור שולחת פינגים החוצה, אם 3 לא עברו אז מתחילה לצעוק.

מצאתי לכך כל מני דוגמאות באינטרנט לדוג'


String host = "127.0.0.1";
int timeOut = 3000;
boolean status = InetAddress.getByName(host).isReachable(timeOut);

הבעיה היא שאם אני מכניס משהו שונה מlocalhost זה תמיד יחזיר false.

בהתחלה חשבתי שזה 7 והפיירוול שלו שחוסמים אותי אז התחלתי בלהוסיף את כל הבינארים של ג'אווה לתוך הפיירוול, לא עבד.

כיביתי את הפיירוול, לא עבד.

יצרתי ג'אר חיצוני והרצתי אותי לבד, לא עבד.

פינג הרגיל של חלונות עובד (אז זה לא הראוטר), למרות שיש מצב שבחלונות הפקודה לא באמת עושה פינג (פאקט של ICMP) אלא עושה אזה משוה בTCP ואולי הראוטר חוסם את זה (אבל זה כבר אני מנסה להיות מקורי).

אם למישהו יש רעיון אני מאוד אודה לו.

תודה

פורסם
  • מחבר

ניסיתי לתת לו 30 שניות (30000) לא עזר...

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים