الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

network error notification research

بدأه mahmoodsami في 14 أكتوبر 2010 · 2 رد · 781 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

انا طالبة بحث من العراق ولدي بحث بال java ويتحدث عن اكتشاف الاخطاء التي تحدث بال servers او routers وارسال الخطأ الى الناتج الى موبايل المهندش المشرف عن طريق sms باستخدام موقع الكتروني ويقوم بأكتشاف الاخطاء عن طريق ارسال packet مثل ping command الى الجهاز المطلوب مراقبته وانتظار الرد اذا كان الرد ايجابا فينتقل الى الجهاز الاخر من الشبكه وفي حالة كان الرد سلبا فسيتعرف على ان الجهاز به مشكله فيقوم بتحضير message بها نوع المشكله واسم الجهاز الذي يعاني خللا ويقوم بأرسالها الى اول مهندس موجود رقمه ضمن قائمه معده سلفا تحتوي على مجموعة من عناوين لمهندسين قادرين على الاتصال بهم وانتظار الرد من المهندس ان كان قادرا على حل المشكله و في حالة عدم تمكنه او رفضه للمهمه يتم الانتقال اوتماتيكيا بع زمن معين الى عنوان المهندس الاخر وهكذا تواليا .

البرنامج الذي لدي يستطيع القيام بهذه العملية كاملة لكن هناك مشكله انه لا يستطيع ان يراقب ال routers فهو يراقب فقط ال servers فسؤالي هو كيف استطيع ان اضيف الراوتر لهذه العملية من دون ان تحدث مشاكل في البرنامج وهل استطيع ان استخدم معه ال ping command هو SNMP manager recieve trap program وفي كلا الحالتين اضافة هذا الجزء للبرنامج من دون ان يؤثر سلبا على عمل البرنامج مع العلم ان البرنامج يعمل مع java standard edition و باستخدام ال netbean وان الجزء الخاص بال sms هو مأخوذ من النت وبأستخدام موقع sms4syr.com وسوف اقوم برفع الجزء الخاص بالتعديل فقطmonitor.rar.

وشكرا.

#2

سابقاً كان لا يمكن عمل ping بسهولة في جافا لأن الSocket في جافا لا يدعم هذه العملية ،،

الذي قمت به هو محاكاة، حيث قمت بعمل سيرفر UDP ثم تتصل به بالكلاينت وترسل/تستقبل النتيجة، وهذا يتطلب وجود البرنامج (السيرفر) على السيرفر..

هناك بورت يسمى echo يعمل عادة في السيرفر (منفذ 7) ويمكن الاتصال بهذا المنفذ وارسال اي نص وسوف يرد السيرفر اذا كانت تعمل هذه الخدمة فيه، يمكنك القيام بذلك يدوياً عن طريق الاتصال بالمنفذ 7 والارسال ثم اطبع الناتج.

في جافا 5 تم تطبيق دالة isReachable في الكلاس InetAddress تقوم بعملية ping صحيحة من خلال ارسال باكت ICMP وسوف يرجع لك الناتج . لكن هذه العملية غير مضمونة وقد يتم الاتصال بالبورت 7 والارسال وهذا يرجع لطبيعة النظام الذي تعمل عليه والصلاحيات لديك، راجع:

http://www.0x13.de/index.php/code-snippets/74-icmp-ping-in-java.html

أو يمكن استدعاء برنامج ping من خلال سطر الأوامر للقيام بما تريد، يمكنك مراجعة المعاملات لهذا البرنامج من خلال ping -help.

import java.io.*;
import java.net.*;

public class PingAddress {
 public static void main(String args[]) {
	String ip = "192.168.1.2";

	try {
		// method 1
		InetAddress address = InetAddress.getByName(ip);
		System.out.println("Reach: " + address.isReachable(3000));

		// method 2
		Process p = Runtime.getRuntime().exec("ping -n 1 " + ip);
		int status = p.waitFor();
		System.out.println(ip + " is " + (status==0 ? "alive" : "dead"));

     }
     catch (UnknownHostException e) {
		System.err.println("Unable to lookup : " + ip);
     }
     catch (IOException e) {
		System.err.println("Unable to reach : " + ip);
     }
	 catch (InterruptedException e){
		e.printStackTrace();
	 }
   }
}

بالتوفيق..

تم تعديل هذه المشاركة بواسطة Wajdy Essam في 14 أكتوبر 2010 في 16:33

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#3
mahmoodsami كتب:

السلام عليكم

انا طالبة بحث من العراق ولدي بحث بال java ويتحدث عن اكتشاف الاخطاء التي تحدث بال servers او routers وارسال الخطأ الى الناتج الى موبايل المهندش المشرف عن طريق sms باستخدام موقع الكتروني ويقوم بأكتشاف الاخطاء عن طريق ارسال packet مثل ping command الى الجهاز المطلوب مراقبته وانتظار الرد اذا كان الرد ايجابا فينتقل الى الجهاز الاخر من الشبكه وفي حالة كان الرد سلبا فسيتعرف على ان الجهاز به مشكله فيقوم بتحضير message بها نوع المشكله واسم الجهاز الذي يعاني خللا ويقوم بأرسالها الى اول مهندس موجود رقمه ضمن قائمه معده سلفا تحتوي على مجموعة من عناوين لمهندسين قادرين على الاتصال بهم وانتظار الرد من المهندس ان كان قادرا على حل المشكله و في حالة عدم تمكنه او رفضه للمهمه يتم الانتقال اوتماتيكيا بع زمن معين الى عنوان المهندس الاخر وهكذا تواليا .

البرنامج الذي لدي يستطيع القيام بهذه العملية كاملة لكن هناك مشكله انه لا يستطيع ان يراقب ال routers فهو يراقب فقط ال servers فسؤالي هو كيف استطيع ان اضيف الراوتر لهذه العملية من دون ان تحدث مشاكل في البرنامج وهل استطيع ان استخدم معه ال ping command هو SNMP manager recieve trap program وفي كلا الحالتين اضافة هذا الجزء للبرنامج من دون ان يؤثر سلبا على عمل البرنامج مع العلم ان البرنامج يعمل مع java standard edition و باستخدام ال netbean وان الجزء الخاص بال sms هو مأخوذ من النت وبأستخدام موقع sms4syr.com وسوف اقوم برفع الجزء الخاص بالتعديل فقطmonitor.rar.

وشكرا.

شكرا على الرد وسوف اقوم بالتجريب وإن شاء الله خير

مواضيع مشابهة