يوميات مقالات تعليقات تعليقات خارجية
 
السلام عليكم، أهلا بك في صفحتي الشخصية... الساعة الآن 2:58 AM دقيقة بتوقيت الرياض
 
 

السلام عليكم جميعا،،

إلحاقاً لموضوع أسماء النطاقات العربية، أحب أن أكمل ما بدأت و لكن سوف أعرض نبذه بسيطة عن طريقة عمل أسماء النطاقات Domain Names حسب معايير الويب القياسية، و التي يتم إدارتها و تحديثها بإستمرار من قبل منظمة الايكان ICAAN.

أسماء النطاقات
   يقسم اسم النطاق إلى ثلاث أقسام، و هي كالتالي:

أولا: الإمتداد العام لأسماء النطاقات العليا (generic top-level domain (gTLD
و هي الإمتدادات التي تضاف إلى إسم النطاق، و هي تشير إلى الغرض من الموقع.
و تعتبر الإمتدادات التالية الأكثر شهرة:

امتداد النطاق الشرح
COM خاص بالشركات
NET عام
ORG خاص بالمنظمات الغير ربحية
EDU  خاصة بالجهات التعليمية

ثانيا: اختصارات أسماء الدول (country code top-level domain (ccTLD
و هي حرفان يضافان بعد الإمتداد العام ليشيران إلى الدولة التي يتبع لها الموقع.
فعلى سبيل المثال لا الحصر، يوجد الإمتدادات التالية:

امتداد النطاق الشرح
kw للكويت
sa للسعودية
eg مصر
ae الإمارات

على سبيل المثال: موقع وحدة الإنترنت هو www.isu.net.sa، اخر حرفين هما ccTLD، و يشيران إلى أن الموقع يقع تحت سيطرة خادم DNS في السعودية.

ثالثا: أسماء النطاقات المعروفة (تسمى second-level domain)

و هي أسم النطاق المعروف، و هي في هذا الموقع hmoqhim.

دعم لغات العالم 

   مؤخرا قامت الايكان ICAAN بدعم صيغة لدعم اسماء النطاقات بمختلف لغات العالم، و بحكم ان أسماء النطاقات تعتمد في ترميزها على الاسكي ASCII فقط تم القيام بعملية ذكية لإضافة رموز اليونيكود الغير موجود في الاسكي إلى اسماء النطاقات، حيث تم اعتماد صيغة تمسى puny code و هي عملية تحويل حروف اليونيكود unicode إلى رمز مقابل له في الـ ASCII بخوارزمية معينة، يمكن الإطلاع عليها تحت الرابط التالي:

http://source.icu-project.org/repos/icu/icuapps/trunk/idnbrowser/


الإشكالية فيما قامت به الإيكان هو ان مستوى دعم لغات العالم لا يتعدى second-level domain، بمعنى آخر، ان الأجزاء العلوية لأسماء النطاقات (الجزء الأول و الثاني، مثل COM, و الـ sa) ما زالت باللغة الإنجليزية، بشكل آخر، دعمهم سوف يكون بالشكل:

http://www.حسام-المقحم.net/

و هذا الشيء بالطبع لا يرضي شعوب العالم، لذلك قامت هيئة الإتصالات CTIC مشكورة بتكوين تحالف مع الدول العربية لإقناع الأيكان بتوسعة هذا الدعم ليصل إلى الإمتداد العلوي الخاص بالدول، بحيث يصبح الرابط السابق:

http://حسام-المقحم.السعودية/


على ايه حال، بعدما طرحت الايكان المعيار الجديد للـ puny code قامت المتصفحات بدعمها في الحال، حيث يمكن اي مستخدم تجريب موقع:

http://الأسهم.السعودية


و سيلاحظون أن الفايرفوكس و IE 7 يقومون بتحويل كلمة الأسهم و السعودية إلى إلى صيغة البني كود puny code المقابل له،،،

الجيد في الموضوع أن العرب و للمرة الأولى لم يرضوا بالقليل كعادتهم، و الأخوان في الهيئة يحاولون القيام بتحالف مع الدول العربية لدفع الأيكان إلى دعم اللغة العربية في مستوى ccTLD كذلك، و هو بالضبط ما عملت عليه مع الأستاذ محمد الحامد،... تطوير أداة تجعل التعريب على مستوى second-domain و ال ccTLD.

من النقاط التي لم أذكرها في الموضوع السابق هو أن الأداة تم تطويرها قبل إصدار IE 7 و قبل أن يدعم الفايرفوكس صيغة ال puny code، و كانت الأداة تعمل على متصفح الانترنت اكسبلورر قبل IE 7 و تقوم بعملية التحويل بشكل اوتماتيكي للأسماء النطاقات.

طريقة عمل الأداة

الان السؤال الخطير... ماهي الطرق المتاحة لتطوير أداة تقوم بتحويل اسم الموقع الذي يكتبه المستخدم في المتصفح و تغيير ثم ارجاعه للمتصفح لكي يطلبه من ال dns server، الطرق المتاحة هي كالتالي:


الحل الأول:
القيام بسرقة اسم الموقع الذي يكتبه المستخدم في شريط العنوانين قبل أن يقوم الأكسبلورر بطلبه من DNS Server بإستخدام طريقة Hooking على الدالة InternetCrackURL و التي يناديها الانترنت اكسبلورر من المكتبة urlmon.dll، ثم يتم التحويل إلى إسم ال Punny Code المقابل.

الحل الثاني:

- طريقة استبدال معالج بروتوكول HTTP المسجل في النظام، و الذي يمكن الإطلاع علية تحت

HCKU\PROTOCOLS\Handlers

هذا الحل سرعان ما سقط من القائمة، لسبب بسيط، و هو ان برمجة URL Moniker هو عملية صعبة و متعبة جدا :),,, و محاولة تحويل الطلبات إلى النسخة المقابلة لها في urlmon.dll سوف يتطلب مني جلسة طويلة على urlmon.dll و هو الشيء الذي لم أكن أريده بتاتاً، لأنها وجع رأس.

خاتمه

المعذرة في البداية على تأخري في طرح الجزء الثاني، و السبب بصراحة يعود إلى كسلي في البداية، و إلى ارتباط الأخ محمد ب Non-Disclosure Agreement، لذلك لا يحق لي إكمال الموضوع، و لكن سأطرح عدد من النقاط التي أتمنى أن تكون مفيده للجميع:

  • الإنترنت اكسبلورر يقوم بمناداة الدالة getaddrinfo للحصول على رقم الـ IP الخاص بكل موقع.
  • يعمل الجميع في السعودية داخل بروكسي يمثل بوابة لكل طلبات HTTP الخارجة إلى الانترنت العالمية، هذا البروكسي يحتاج إلى تعديل بسيط في الترويسة Header الخاصة بطلب HTTP لتعديل الجزء Host إلى Punny Code.


إنشاء الله سيأتي يوم لا نحتاج فيه هذه الأداة في طلب المواقع العربية بأسمائها العربية، و سيكون اسماء موقع جميع المدونين و المدونات بأسمائهم مباشرة، و كل ما سيحتاجون هو ملف علاقي، و صورة من بطاقة الأحوال، و ختم عمدة الحارة، و شهادة حسن سيرة و سلوك، و تأخذ رقم،، I'm just kidding .

تحياتي للجميع،،،

نشر بتاريخ Monday, July 16, 2007 9:03 AM
 • التصفح
 » RSS
 

 • المقالات

 » ASP.NET










 • الأرشيف





















 • اليوميات












 • الصور



جميع الحقوق محفوظة،
حسام المقحم 2006م