السلام عليكم ورحمة الله تعالى وبركاته
ساقدم لكم درسا جديدا وهو يتكلم عن Sockets
اذن لنبدأ اولا معنى socket
Socket : هذا المصطلح بالعربية هو يعني مقبس يقوم بالربط بين شيئين بشكل عام
ولكي تزيل اللبلس في فهم هذا المصطلح تخيل معي ابسط مثال له وهو لمبة الكهرباءبالغرفة تكون مكونة من سلك كهربائي منسدل من السقف ومتصل بـ لمبةويتوسط بينهم تلك الأداة التي تربط السلك باللمبة لكي تمدها بالتيار المطلوب وتلك الاداة في البرمجة هي Socket
اما الـ Socket برمجيا في موضوعنا فهو سيكون لربط برنامجين مختلفين باتصال مباشر ولنقل وارسال البيانات.
Client: سوف نقصد به هو العميل المستقل الذي يقوم بالاتصال بالـ Server
ويستقبل اوامر الـ Server وينفذها
وهذا يستعمل غالبا في جميع البرامج التي تحتاج الى انترنت مثل برامج ال FTP
وبرامج ارسال الرسائل
و ايضا برامج الاختراق نعم برامج الاختراق
اذن الان سنتعرف على الدوال التي سنستخدمها لعمل الاتصال و التنصت وغيره...
1- دالة WSAStartup : وهي دالة روتينية وظيفتها تقوم بتجهيز المكتبة الخاصة بالـwinsock وتهيألها للاستخدام.
(هذه الدالة هي مهمة جدا ويجب استدعائها قبل طلب اي دالة اخرى خاصة بالـ winsock)
2- دالة socket : وهي دالة تقوم بانشاء سوكت لكي نأسس الاتصال عن طريقه .
3- دالة bind : وهي لربط السوكت مع عنوان وبورت معين.
(وهي الخطوة التي تسبق عملية التنصت على البورت في آلية عمل الـ Server).
4- دالة listen : وهي تسمح لنا بالبدء بالتنصت على عنوان وبورت معين لكي نستقبل الاتصالات الواردة عليه فيما بعد.
(في برامج الاختراق التنصت يتم فقط على بورت معين اما العنوان فلا نحدد عنوان ادريس معين لكي نستقبل كل الاتصالات الواردة على البورت المعني مثل 81 ).
5- دالة accept : وهي دالة نستخدمها لقبول الاتصالات الواردة لدينا بعد ما نكون اجهزنا عملية التنصت على البورت.
6- دالة connect : وهي دالة نستخدمها للاتصال المباشر بعنوان/ادريس/ايبي معين.
(هذه الدالة تحتاج لتعبئة ستركتر خاص بها يحتوي على معلومات الاتصال الذي تريد انشاؤه العنوان - البورت - ونوع الاتصال).
7- دالة inet_addr : وهي دالة ترجعلنا بستركتر نستخدمها قبل انشاء الاتصال لتحويل ايبي معين مثل 186.24.245.23الى عنوان يفهمه الحاسوب الآلي لكي يتسطيع الاتصال به.
8- دالة gethostbyname : وهي دالة ايضا ترجعلنا بستركتر يحوي معلومات شبيهة بالدالة السابقة لكن هذي سوف نستخدمها عندما نحاول الاتصال بهوست وليس ايبي مثل Myhost.no-ip.com.
9- دالة htons : وهي ايضا دالة سوف نستخدمها قبل انشاء الاتصال بتحويل بورت معين زي 81 الى رقم اخر يفهمه الحاسب ويستطيع الاتصال به .
10- دالة recv : وهي دالة نستخدمها لاستقبال الحزم البيانية / Packets .
11- دالة send : وهي دالة نستخدمها لارسال الحزم البيانية / Packets .
12- دالة closesocket : وهي دالة نستخدمها لإغلاق السوكت عند الانتهاء منه.
13- دالة WSACleanup : وهي دالة روتينية كما الحال في الدالة رقم 1لكن هذه نستخدمها عند الانتهاء تماما من مكتبة الـwinsock .
انتها موضوع
توقيع: ADMIN