طريقة عمل سيرفر DNS محلي داخل الجهاز
① تثبيت dnsmasq (سيرفر dns محلي)
sudo apt update && sudo apt install dnsmasq② ملف الإعداد (يستمع على 5353 فقط) اعداد dns للمنفذ 5353
اولا: نفتح الملف بنانو :
sudo nano /etc/dnsmasq.confثم نضيف البيانات هذه :
# لا ألمس المنفذ 53 port=5353 listen-address=127.0.0.1 bind-interfaces # كاش 3 أيام cache-size=10000 min-cache-ttl=3600 max-cache-ttl=259200 neg-ttl=259200 domain-needed bogus-priv # خوادم عليا server=1.1.1.1 server=8.8.8.8 server=8.8.4.4ثم نعمل خروج وحفظ : (ctrl+x) و (نختار نعم) ثم (ادخال لاعتماد نفس الاسم)
③ تشغيل الخدمة:
sudo systemctl enable --now dnsmasq④ نُخبر الاتصال فقط (بدون تعديل نظامي) أن يستخدم المحلي مع المنفذ
يعني نغير اعدادات الشبكة المتصلة لكي تتصل بالسيرفر المحلي:
اولا نبحث عن اسم الشبكة المتصلة نجده تحت اسم NAME مثلا اتصالي وايفاي باسم “تلقائي Galaxy S10+ed3f”
ahmad@ahmad-sonic:~$ nmcli connection show NAME UUID TYPE DEVICE تلقائي Galaxy S10+ed3f 4fa745a9-1c77-4c71-87f3-ba0320bdfef4 wifi wlo1 lo 9e6223ed-5bdb-4f75-b827-8abb14a8b5b0 loopback lo virbr0 2ebdea49-79c7-4201-a6bf-09288a8a4b1f bridge virbr0 اتصال سلكي 1 f9607e43-533c-3973-8da2-2b575056f012 ethernet -- اتصال سلكي 2 87713776-7a90-3d27-b7dc-86eb0640f6e1 ethernet -- تلقائي A26 الخاص بـ c4b45863-93f6-4acb-aa22-a459fe157df2 wifi --يظهر اتصالي أمامه wifi وباسم: تلقائي Galaxy S10+ed3f ، وبما أنه فيه مسافات فلا يتعرف عليه الأمر بشكل صحيح ويلزم جعله داخل تنصيص ، الأن نقوم بضبط الاتصال ليستمع لسيرفر ال dns المحلي على المنفذ 5353 ونعمل الأوامر التالية سطر سطر :
nmcli connection modify "تلقائي Galaxy S10+ed3f" ipv4.dns "127.0.0.1#5353" nmcli connection modify "تلقائي Galaxy S10+ed3f" ipv4.ignore-auto-dns yes nmcli connection up "تلقائي Galaxy S10+ed3f"⑤ الآن المفترض أنه يعمل ، نقوم باختباره بحيث نطلب مرتين ويكون مدة الأول فوق 10 ملي ثانية والثانية وما بعدها يكون 0 او 1 ملي ثانية دليل انه طلبها من داخل الجهاز واكتفى ، نكتب امر الاستفسار :
dig google.comالآن يجيب في المرة الأولى بكلام كثير لكن يهمنا سرعة الرد في السطر :
;; Query time: 187 msecنلاحظ المرة الثانية :
;; Query time: 0 msecوالثالثة :
;; Query time: 1 msecهنا دليل على ان الطلب الأول ذهب يطلبه سيرفر ال dns المحلي من الانترنت واستغرق 187 ملي ثانية ، والطلبات التالية لم تستغرق إلا 0 أو 1 ملي ثانية دليل أن الرد اتى من ال dns المحلي .
وهنا سيبقى الاسم مخزن لمدة 3 ايام ويعاد طلبه بعدها ونحقق توفير للطلبات وتقليل لوقت الاستجابة .
