Dnsmasq على CentOS 7.3 - شبكات SME

الفهرس العام للسلسلة: شبكات الحاسوب للشركات الصغيرة والمتوسطة: مقدمة

مرحبا اصدقاء !. نخصص هذه المقالة ل دنسماسك برنامج بسيط للغاية يقدم خدمات DNS - DHCP باستخدام برنامج واحد. أفضل الوثائق الموجودة حول هذا البرنامج هي تلك المثبتة مع الحزمة نفسها الموجودة في /usr/share/doc/dnsmasq-2.66/، ملف التكوين - كامل الأمثلة- /etc/dnsmasq.conf، والتي حصل عليها الأمر رجل dnsmasq. كما أنه من الصحي جدًا زيارة موقع رسمي.

[root @ dns ~] # ls -l /usr/share/doc/dnsmasq-2.66/
مجموع 136 rw-r - r--. 1 جذر جذر 18007 أبريل 17 2013 نسخ -rw-r-r-. 1 جذر جذر 59811 نوفمبر 11 13:20 CHANGELOG -rw-r - r--. 1 جذر الجذر 5164 أبريل 17 2013 واجهة DBus -rw-r - r--. 1 جذر جذر 5009 أبريل 17 2013 doc.html -rw-r - r--. 1 جذر جذر 25075 17 أبريل 2013 الأسئلة الشائعة -rw-r - r--. 1 جذر 12019 17 أبريل 2013 setup.html
  • الإجراء الموضح في المنشور صالح أيضًا لـ Debian 8 "Jessie". ملف التكوين / etc / dnsmasq هو نفسه. في Jessie ، ربما تحتاج فقط إلى تثبيت حزمة dnsmasq الخاصة بك ولا شيء غير ذلك. أكتبه لأنني أعتبر أنه من غير الضروري عمل مقال منفصل لـ Dnsmasq في دبيان. لحسن الحظ ، الدلائل المتعلقة بالتوثيق والتكوين هي نفسها،

Dnsmaq هو من صنع سيمون كيلي.

ما هو دنسماسك؟

البرمجيات الحرة دنسماسك هو الخادم DNS وكيل شحن y DHCP لشبكات الكمبيوتر الصغيرة. مثال نموذجي هو الشبكات الموجودة في شركاتنا الصغيرة والمتوسطة. يتطلب القليل من موارد الأجهزة لتشغيله ويمكن تشغيله على منصات مختلفة مثل Linux و BSD و Android و OS X. وهو مدرج في جميع مستودعات توزيعات Linux و BSD تقريبًا.

الخادم DHCP من دنسماسك يمكنك استئجار عناوين IP بشكل ديناميكي وثابت لشبكات متعددة ذات نطاقات مختلفة من عناوين IP. يتكامل مع الخادم DNS ويسمح للأجهزة المحلية التي تحصل على عنوان IP بالظهور على أنها مسجلة في DNS مع سجلات DNS الصحيحة الخاصة بها ، سواء المباشرة أو العكسية.

الطريقة الأصلية للعمل دنسماسك لتخزين سجلات DNS التي تم الحصول عليها من خلال الاستعلامات المرسلة إلى الناقلون، يقلل العبء على هذه ويحسن الأداء العام لسرعة الاستجابة لاستعلامات DNS المختلفة.

يدعم المعايير الحديثة مثل IPv6 y DNSSEC، بداية - حذاء عبر الشبكة مع دعم البروتوكولات بوتب, المبسط، و PXE.

في عالم Linux ، يُستخدم Dnsmasq على نطاق واسع في الخوادم للأجهزة التي لا تحتوي على قرص صلب وعملاء رفيع. في نظام التشغيل Microsoft® Windows ، مع البرنامج ARDENCE®، يتم استخدام مكافئ -to Dnsmasq- كخادم DHCP يسمى النامي.

في أي سيناريو يمكننا استخدام Dnsmasq؟

إذا ركضنا رجل dnsmasq في CentOS ، سنحصل على صفحة هذا الدليل باللغة الإنجليزية. في الملف dnsmasq.8.gz -اللغة الإسبانية- الذي تم تثبيته مع توزيع Debian 8 «Jessie» ، ينعكس بالضبط ما يلي:

حدود

  • القيم الافتراضية لحدود الموارد متحفظة بشكل عام ومناسبة للاستخدام على أجهزة من نوع جهاز التوجيه. عالق مع المعالجات البطيئة والذاكرة المنخفضة. في الأجهزة أكثر  قادر ، من الممكن زيادة الحدود ودعم المزيد العملاء. ينطبق ما يلي على dnsmasq-2.37: الإصدارات السابقة لا تفعل ذلك لقد تسلقوا بشكل جيد.
  • Dnsmasq قادر على دعم DNS و DHCP على الأقل ألف (1,000،XNUMX) العملاء. يجب ألا تكون أوقات الإيجار قصيرة جدًا (أقل من واحد زمن). يمكن زيادة قيمة –dns-forward-max: ابدأ بـ ما يعادل عدد العملاء وزيادته إذا كان DNS. لاحظ أن أداء DNS يعتمد أيضًا على الخوادم المنبع DNS. يمكن زيادة حجم ذاكرة التخزين المؤقت DNS: الحد مطلوب 10,000 اسم والاسم الافتراضي (150) منخفض جدًا. يؤدي إرسال SIGUSR1 إلى dnsmasq إلى إنشاء معلومات bitacore مفيد لضبط حجم ذاكرة التخزين المؤقت. راجع قسم الملاحظات للحصول على التفاصيل.
  • خادم TFTP المدمج قادر على دعم عمليات نقل متعددة الملفات المتزامنة: الحد المطلق مرتبط بعدد معالجات الملفات المسموح بها لعملية ما وقدرة النظام ‐حدد استدعاء مؤقت () لدعم عدد كبير من مقابض الملفات. إذا تم تعيين الحد على قيمة عالية جدًا باستخدام –tftp-max ، فسيتم إلغاء مقياسه وسيتم تسجيل الحد الفعلي عند بدء التشغيل. لاحظ أن المزيد من التحويلات ممكن عندما يتم إرسال نفس الملف ماذا عند كل عبريرسل ferencia ملفًا مختلفًا. من الممكن استخدام dnsmasq لرفض الإعلان على الويب باستخدام قائمة خوادم البانر المعروفة ، جميعها تصل إلى 127.0.0.1 أو 0.0.0.0 في / etc / hosts أو في ملف hosts إضافي. يمكن للقائمة كن طويلا جدا. تم اختبار Dnsmasq بنجاح بملايين الأسماء. يحتاج حجم الملف هذا إلى وحدة معالجة مركزية 1 جيجا هرتز وتقريبي60 ميجا رام.

لم أكتب أو أعدل الفقرات أعلاه إطلاقا. تنعكس لأنها تأتي في رجل في الإسبانية من dnsmasq 2.72 تحديث من مستودع دبيان 8.6. من خلالهم ومن الممارسة في استخدام هذا البرنامج ، يمكننا أن نستنتج أنه من النادر - وليس من المستحيل - العثور على سيناريو في شبكات الشركات الصغيرة والمتوسطة لدينا يتجاوز مقدار عملاء 1000 أو أجهزة الكمبيوتر المتصلة بالشبكة المحلية.

  • Dnsmasq قادر على دعم DNS و DHCP على الأقل ألف (1,000،XNUMX) الزبائن.

الاعتبارات جانبا

لطالما أذهلني أن البرنامج الحائز على جوائز برنامج ClearOS Enterprise 5.2 SP1 سوف تستخدم Dnsmasq - المرتبطة به NTP- كخادم بنية أساسية افتراضيًا ، والاستمرار في استخدامه على هذا النحو - على الأقل حتى الإصدار 7.xxx- في الإصدارات تدفع مقابل تثبيت Active Directory® استنادًا إلى Samba 4. وهذا أمر سيئ للغاية بالنسبة لنا ، عشاق البرمجيات الحرة ، تلك الشركة ClearFoundationسيتوقف عن توفير برامج بهذه الجودة في الإصدارات بعد 5.xxx من أجل تحقيق مكاسب مالية أفضل. أعتقد أنه يأتي بنتائج عكسية للشركة نفسها.

على الرغم من أنني أ مروحة دبيان -وأنا لا أريد أن أقوم بدعاية من اختياري الشخصي للغاية على الإطلاق- لطالما أعجبت بالشركة شركة Red Hat®، Inc نموذج عملها جعلها رائدة البرمجيات الحرة بلا منازع. بالإضافة إلى ذلك ، فهي الراعي للنسخة الثنائية CentOS - البرمجيات الحرة 100٪ - لنظام التشغيل النجمي Red Hat® Enterprise Linux - RHEL. لشيء يقال أن CentOS هو RHEL غير مدعوم ؟؟؟؟

  • لدي تشغيل وحدة تحكم المجال الأساسية Samba Clasic NT 4.0 Style على أساس برنامج ClearOS Enterprise 5.2 SP1 لأكثر من 4 سنوات في شبكة شركة لديها عملاء Windows XP و 7 و 8 و Windows Server 2003 و Windows Server 2012. ما الذي يمكن دغدغة قيمتي التسجيل لكل عميل Windows من إصدار أعلى من XP؟ هذا صحيح. ما الذي يعمل بشكل أفضل؟ هذا صحيح أيضًا. أن عدد الفرق لا يصل إلى 100؟ صحيح أيضا.

الفطرة السليمة

  • على الرغم من أن "الحس السليم هو أقل الحواس شيوعًا" بالنسبة لي ، ضع نفسك أولاً في "احتياجاتك" ثم حدد المشهد الفني وفقًا لما تحتاج إلى التعبير عنه وحلّه وفقًا لخطك الخاص.
  • لا تستخدم صاروخًا عابرًا للقارات لقتل بعوضة. لا تعقد الحياة دون داع: ابدأ بأبسط الحلول. إذا لم تحل بهذه الطريقة ، فرفع درجة التعقيد نقطة واحدة ، وهكذا.

لنقم بتثبيت CentOS 7 و Dnsmasq

لتثبيت النظام الأساسي ، نسترشد بالمقال CentOS 7 Hypervisor I وفي اختيار الحزم ، نحدد فقط الخيار «خادم البنية التحتية«. المعلمات العامة التي سنستخدمها في إعداد هذه المقالة هي كما يلي:

اسم FQDN للجهاز الظاهري: dns.fromlinux.fan
عنوان IP: 10.10.10.5

يقوم CentOS 7 بتثبيت ملف dnsmasq الافتراضي

نعم أعزائي القراء ، في CentOS 7 الحزمة دنسماسك أثناء تثبيت خادم البنية التحتية و أفترض مقارنة بالخيارات الأخرى أيضًا.

[root @ dns ~] # yum info dnsmasq
الإضافات المحملة: الأسرع ، المرآة ، langpacks تحميل سرعات المرآة من الحزم المثبتة في ملف المضيف المخبأ الاسم: dnsmasq Architecture: x86_64 الإصدار: 2.66 الإصدار: 21.el7 الحجم: 464 k
المستودع: مثبت
من المستودع: ملخص centos-base: عنوان URL خفيف الوزن لخادم DNS / التخزين المؤقت لـ DHCP: http://www.thekelleys.org.uk/dnsmasq/ الترخيص: GPLv2 الوصف: Dnsmasq خفيف الوزن وسهل تكوين معيد توجيه DNS و DHCP: الخادم . وهو مصمم لتوفير DNS ، واختيارياً ، DHCP ، إلى: شبكة صغيرة. يمكن أن يخدم أسماء الأجهزة المحلية التي هي: ليست في DNS العالمي. يتكامل خادم DHCP مع DNS: server ويسمح للأجهزة ذات العناوين المخصصة لـ DHCP بالظهور: في DNS بأسماء تم تكوينها إما في كل مضيف أو في: ملف تكوين مركزي. يدعم Dnsmasq الثابت والديناميكي: عقود إيجار DHCP و BOOTP لتمهيد الشبكة للأجهزة الخالية من الأقراص.

الإصدار دنسماسك المثبت هو 2.66 ، ويتوافق مع إصدار CentOS:

[root @ dns ~] # cat / proc / version
إصدار Linux 3.10.0-514.6.1.el7.x86_64 (builder@kbuilder.dev.centos.org) (إصدار مجلس التعاون الخليجي 4.8.5 20150623 (ريد هات 4.8.5-11) (دول مجلس التعاون الخليجي)) # 1 SMP الأربعاء 18 يناير 13:06:36 بالتوقيت العالمي المنسق 2017

دعونا نقوم بتمكين وتهيئة ملف dnsmasq

[root @ dns ~] # nano / etc / hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.10.10.5 dns.fromlinux.fan dns

[root @ dns ~] # اسم مضيف
DNS
[root @ dns ~] # hostname -f
dns.fromlinux.fan


[root @ dns ~] # systemctl تمكين dnsmasq
[root @ DNS ~] # systemctl بدء dnsmasq
[root @ dns ~] # systemctl status dnsmasq
● dnsmasq.service - خادم تخزين DNS المؤقت. تم التحميل: تم تحميله (/usr/lib/systemd/system/dnsmasq.service ؛ مُمكّن ؛ الإعداد المسبق للمورد: معطل) نشط: نشط (قيد التشغيل) منذ السبت 2017-02-18 11:47:19 EST ؛ قبل 4 ثوانٍ معرّف المنتج الرئيسي: 1179 (dnsmasq) مجموعة المجموعة: / system.slice/dnsmasq.service └─1179 / usr / sbin / dnsmasq -k 18 فبراير 11:47:19 نظام DNS systemd [1]: بدأ خادم التخزين المؤقت لنظام أسماء النطاقات .. فبراير 18 11:47:19 dns systemd [1]: بدء خادم التخزين المؤقت DNS .... 18 فبراير 11:47:19 dns dnsmasq [1179]: بدأ الإصدار 2.66 cachesize 150 Feb 18 11:47:19 dns dnsmasq [1179 ]: تجميع خيارات الوقت: IPv6 GNU-getopt DB ... 18 فبراير 11:47:19 dns dnsmasq [1179]: قراءة /etc/resolv.conf فبراير 18 11:47:19 dns dnsmasq [1179]: تجاهل خادم الأسماء 127.0.0.1 - محلي في ... فبراير 18 11:47:19 dns dnsmasq [1179]: قراءة / etc / hosts - 3 عناوين تلميح: تم حذف بعض الأسطر ، استخدم -l لتظهر بالكامل.

لا تنس الخطوة التالية:

[root @ dns ~] # mv /etc/dnsmasq.conf /etc/dnsmasq.conf.original

عناوين IP الثابتة

باستخدام Dnsmasq ، يتم الإعلان عن عناوين الخوادم أو أجهزة الكمبيوتر التي تتطلب IP ثابتًا - كلاهما IPv4 و IPv6 - في الملف / الخ / المضيفين:

[root @ dns ~] # nano / etc / hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6 # Servers 10.10.10.1 sysadmin.desdelinux.fan sysadmin 10.10.10.3 ad-dc.desdelinux 10.10.10.4.fan ad-dc.desdelinux 10.10.10.5.fan .desdelinux.fan fileserver 10.10.10.6 dns.desdelinux.fan dns 10.10.10.7 proxyweb.desdelinux.fan proxyweb 10.10.10.8 blog.desdelinux.fan blog 10.10.10.9 ftpserver.desdelinux.fan ftpserver XNUMX mail.dfesdel

لنقم بإنشاء ملف /etc/dnsmasq.conf

[root @ dns ~] # nano /etc/dnsmasq.conf
# ------------------------------------------------- ------------------ # خيارات عامة # ----------------------------- -------------------------------------- domain-needed # لا تقم بتمرير الأسماء بدون جزء المجال bogus-priv # لا تمرر العناوين في مضيفات التوسيع غير الموجهة # أضف المجال تلقائيًا إلى واجهة المضيف = eth0 # Interface. احذر من الواجهة # except-interface = eth1 # لا تستمع إلى أمر NIC الصارم هذا الذي تستشير فيه الملف /etc/resolv.conf # قم بتضمين العديد من خيارات التكوين # من خلال ملف أو عن طريق تحديد ملف التكوين # إضافي في الدليل # conf-file = / etc / dnsmasq.more.conf conf-dir = / etc / dnsmasq.d # المتعلق بنطاق اسم المجال = desdelinux.fan # اسم المجال # خادم الوقت هو 10.10.10.1. عنوان 10.10.10.1 = / time.windows.com / 7 # يرسل خيارًا فارغًا لقيمة WPAD. مطلوب لعملاء # Windos 252 وما بعده لكي يتصرفوا بشكل صحيح. ؛-) dhcp-option = 10.10.0.7، "\ n" # ملف حيث سنعلن عن HOSTS التي ستكون "محظورة" addn-hosts = / etc / banner_add_hosts # ----------------- -------------------------------------------------- # REGISTROSCNAMEMXTXT # ----------------------------------------------- -------------------- # يتطلب هذا النوع من التسجيل إدخال # في ملف / etc / hosts # على سبيل المثال: 10 blog.desdelinux.fan blog # cname = ALIAS، REAL_NAME cname = www.desdelinux.fan، blog.desdelinux.fan # MX RECORDS # يُرجع سجل MX بالاسم "desdelinux.fan" مع الوجهة # إلى آلة mail.desdelinux.fan وأولوية 10 mx- host = desdelinux.fan، mail.desdelinux.fan، 1 # الوجهة الافتراضية لسجلات MX التي تم إنشاؤها باستخدام خيار localmx ستكون: mx-target = mail.desdelinux.fan # إرجاع سجل MX يشير إلى mx- الهدف لجميع # الأجهزة المحلية localmx # سجلات TXT. يمكننا أيضًا الإعلان عن سجل SPF txt-record = desdelinux.fan، "v = spf4 a -all" txt-record = desdelinux.fan ، "DesdeLinux ، مدونتك المخصصة للبرمجيات الحرة" # --------- -------------------------------------------------- -------- # ----------------------------------------- -------------------------- # RANGE AND USOPTIONS # --------------------- ---------------------------------------------- # IPv1 Range و وقت التأجير من رقم 29 إلى 10.10.10.30,10.10.10.250,8 للخوادم والاحتياجات الأخرى نطاق dhcp = XNUMX،XNUMX،XNUMXh

dhcp-lease-max = 222 # الحد الأقصى لعدد العناوين المراد تأجيرها
                        # افتراضيًا هو 150
# IPV6 Range # dhcp-range = 1234 ::، ra-only # Options لـ RANGE # OPTIONS dhcp-option = 1,255.255.255.0،3,10.10.10.253 # NETMASK dhcp-option = 6,10.10.10.5،15 # ROUTER GATEWAY dhcp-option = 19,1،28,10.10.10.255 .42,10.10.10.1 # خوادم DNS dhcp-option = 40 ، من linux.fan # DNS Domain Name dhcp-option = 41,10.10.10.5،4 # option ip-forwarding ON dhcp-option = 44,10.10.10.5،45,10.10.10.5 # BROADCAST dhcp-option = 4،46,8. 73,10.10.10.3 # NTP # dhcp-option = XNUMX، DCH # NIS Domain Name # dhcp-option = XNUMX،XNUMX # NIS Server # EXTERNAL SAMBAXNUMX WINS SERVER # # dhcp-option = XNUMX،XNUMX # WINS # dhcp-option = XNUMX،XNUMX # مخططات بيانات NetBIOS # خارجي SAMBAXNUMX WINS SERVER # # dhcp-option = XNUMX،XNUMX # NetBIOS Node # dhcp-option = XNUMX،XNUMX # Finger Server dhcp-authoritative # DHCP موثوق في الشبكة الفرعية # - -------------------------------------------------- ---------------- # --------------------------------- ---------------------------------- # LOGGINGAL / var / log / messages # ------- -------------------------------------------------- ---------- استعلامات السجل

# نهاية ملف /etc/dnsmasq.conf
# ------------------------------------------------- ------------------

دعنا نتحقق من بناء الجملة ونعيد تشغيل الخدمة

[root @ DNS ~] # اختبار dnsmasq
dnsmasq: فحص بناء الجملة موافق.
[root @ dns ~] # إعادة تشغيل systemctl dnsmasq
[root @ dns ~] # systemctl status dnsmasq
● dnsmasq.service - خادم تخزين DNS المؤقت. تم التحميل: تم تحميله (/usr/lib/systemd/system/dnsmasq.service ؛ مُمكّن ؛ الإعداد المسبق للمورد: معطل) نشط: نشط (قيد التشغيل) منذ السبت 2017-02-18 12:48:05 EST ؛ منذ 5 ثوانٍ Main PID: 1288 (dnsmasq) CGroup: /system.slice/dnsmasq.service └─1288 / usr / sbin / dnsmasq -k 18 فبراير 12:48:05 dns systemd [1]: بدأ خادم التخزين المؤقت DNS .. فبراير 18 12:48:05 dns systemd [1]: بدء خادم التخزين المؤقت DNS .... 18 فبراير 12:48:05 dns dnsmasq [1288]: بدأ ، الإصدار 2.66 cachesize 150 فبراير 18 12:48:05 dns dnsmasq [1288 ]: خيارات وقت التجميع: IPv6 GNU-getopt DB ... 18 فبراير 12:48:05 dns dnsmasq-dhcp [1288]: DHCP ، نطاق IP 10.10.10.30 - 10.10 .... h فبراير 18 12:48 : 05 dns dnsmasq [1288]: قراءة /etc/resolv.conf فبراير 18 12:48:05 dns dnsmasq [1288]: تجاهل خادم الأسماء 127.0.0.1 - محلي في ... فبراير 18 12:48:05 dns dnsmasq [ 1288]: قراءة / etc / hosts - 11 عنوانًا
18 فبراير 12:48:05 dns dnsmasq [1288]: فشل تحميل الأسماء من /etc/banner_ad...ry
تلميح: تم ellipsized بعض الأسطر ، استخدم -l لإظهار بالكامل.

لاحظ أنه في الإخراج السابق systemctl حالة dnsmasq إرجاع الخطأ:

18 فبراير 12:48:05 dns dnsmasq [1288]: فشل تحميل الأسماء من /etc/banner_ad...ry

يشكو من عدم العثور على الملف / etc / banner_add_hosts.

[root @ dns ~] # touch / etc / banner_add_hosts
[root @ dns ~] # إعادة تشغيل systemctl dnsmasq.service 
[root @ dns ~] # إعادة تشغيل systemctl dnsmasq.service 
[root @ dns ~] # systemctl status dnsmasq.service 
● dnsmasq.service - خادم تخزين DNS المؤقت. تم التحميل: تم تحميله (/usr/lib/systemd/system/dnsmasq.service ؛ مُمكّن ؛ الإعداد المسبق للمورد: معطل) نشط: نشط (قيد التشغيل) منذ السبت 2017-02-18 12:54:26 EST ؛ قبل 7 ثوانٍ معرّف المنتج الرئيسي: 1394 (dnsmasq) مجموعة المجموعة: / system.slice/dnsmasq.service └─1394 / usr / sbin / dnsmasq -k 18 فبراير 12:54:26 dns systemd [1]: بدأ خادم التخزين المؤقت DNS .. فبراير 18 12:54:26 نظام dns [1]: بدء خادم التخزين المؤقت لـ DNS .... 18 فبراير 12:54:26 dns dnsmasq [1394]: بدأ ، الإصدار 2.66 cachesize 150 فبراير 18 12:54:26 dns dnsmasq [1394 ]: خيارات وقت التجميع: IPv6 GNU-getopt DB ... 18 فبراير 12:54:26 dns dnsmasq-dhcp [1394]: DHCP ، نطاق IP 10.10.10.30 - 10.10 .... h فبراير 18 12:54 : 26 dns dnsmasq [1394]: قراءة /etc/resolv.conf 18 فبراير 12:54:26 dns dnsmasq [1394]: تجاهل خادم الأسماء 127.0.0.1 - محلي في ... فبراير 18 12:54:26 dns dnsmasq [ 1394]: read / etc / hosts - 11 عنوانًا 18 فبراير 12:54:26 dns dnsmasq [1394]: قراءة / etc / banner_add_hosts - 0 عنوان تلميح: تم تحديد بعض السطور بالحذف ، استخدم -l لتظهر بالكامل.

ولدينا بالفعل خدمات DNS و DHCP قيد التشغيل.

مهم

  • إذا قمنا بتعديل ملف /etc/dnsmasq.conf ، فيجب علينا إعادة تشغيل الخدمة حتى تدخل التغييرات حيز التنفيذ.
  • إذا قمنا بتعديل ملف / etc / hosts لإزالة أو تعديل أو إضافة عنوان IP ثابت مع اسم المضيف المقابل ، يجب علينا إعادة تشغيل الخدمة حتى تصبح التغييرات سارية المفعول..
  • لا يمكن استخدام خدمة إعادة تحميل systemctl dnsmasq.service مع هذه الخدمة.

نفتح المنافذ الضرورية في جدار الحماية

في مقال صديقي وزميلي لويجيس تورو -الملقب سحلية- "كيفية فتح المنافذ في Centos 7 Firewall»الإجراء الذي يجب أن نتبعه لفتح المنافذ في جدار الحماية الذي يقوم CentOS بتثبيته افتراضيًا موضح جيدًا. ما زلت لا أعرف كيفية تطبيق قواعد سياق Selinux على خدمة dnsmasq في CentOS. إذا كان أحد يعرفه ، من فضلك أنورنا.

الملفات / الخ / البروتوكولات y / الخ / خدمات إنها دليل جيد جدًا لمعرفة المنافذ التي نحتاج إلى فتحها لخدمات DNS و DHCP التي يوفرها Dnsmasq للعمل بشكل جيد.

[root @ dns ~] # firewall-cmd --get-active-zone
واجهات عامة: eth0

خدمة نطاق o خادم اسم المجال (DNS). بروتوكول صفعة «IP مع التشفير»

[root @ dns ~] # firewall-cmd --zone = عام - منفذ إضافة = 53 / tcp - دائم
للنجاح

[root @ dns ~] # firewall-cmd --zone = عام - منفذ إضافة = 53 / udp - دائم
للنجاح

خدمة التمهيد o خادم BOOTP (DHCP). بروتوكول الاتفاقية «حزمة الإنترنت Pluribus الأساسية»

[root @ dns ~] # firewall-cmd --zone = عام - منفذ إضافة = 67 / tcp - دائم
للنجاح

[root @ dns ~] # firewall-cmd --zone = عام - منفذ إضافة = 67 / udp - دائم
للنجاح

[root @ dns ~] # firewall-cmd - تحميل
للنجاح

[root @ dns ~] # firewall-cmd - list-all
الهدف العام (النشط): انعكاس كتلة icmp الافتراضي: بدون واجهات: مصادر eth0: الخدمات: dhcpv6-client ssh port: 53 / udp 67 / tcp 53 / tcp 67 / udp protocols: masquerade: no forward-port: sourceports: كتل icmp: قواعد غنية:

مهم

  • إذا كنا سنقدم خدمات تأجير عناوين IPv6 ، فيجب علينا أيضًا فتح منافذ dhcpv6-server 547 / tcp و dhcpv6-server 547 / udp.

الفحوصات

دعنا نتحقق من العديد من استعلامات DNS حول كيفية عمل Dnsmasq الجديد المثبت حديثًا لدينا. لهذا نختار الفريق المعروف sysadmin.fromlinux.fan، ومن هذا الكمبيوتر المتصل بشبكة LAN ، سنقوم بتنفيذ العديد من الاستعلامات ، ولكن ليس قبل التحقق من تهيئة الملف بشكل صحيح / الخ / resolv.conf:

buzz @ sysadmin: ~ cat $ /etc/resolv.conf 
# تم إنشاؤه بواسطة بحث NetworkManager من خادم أسماء linux.fan 10.10.10.5

إعدادات الملف / الخ / resolv.conf انه صحيح. لنبدأ المشاورات

buzz @ sysadmin: ~ $ host dns
يحتوي dns.desdelinux.fan على العنوان 10.10.10.5 لم يتم العثور على مضيف dns.desdelinux.fan: 5 (مرفوض) يتم التعامل مع بريد dns.desdelinux.fan عن طريق بريد واحد mail.desdelinux.fan.

باستخدام التكوين المقترح ، يمكننا تجاهل إخراج الأمر مضيف بدون خيارات عندما يتعلق الأمر بـ Dnsmasq ، عند إرجاع أسطر مثل التالية:

لم يتم العثور على المضيف dns.desdelinux.fan: 5 (مرفوض)

إذا كنا لا نريد هذا النوع من المخرجات ، فيجب علينا استخدام الأمر مضيف مع الخيارات -t A ، -t CNAME ، -t NS ، -t SOA ، -t SIG ، -t AXFR. نرى مضيف الرجل للمزيد من المعلومات:

buzz @ sysadmin: ~ $ host -t إلى dns.fromlinux.fan
يحتوي dns.fromlinux.fan على عنوان 10.10.10.5

[root @ DNS ~] # مضيف -t إلى نظام أسماء النطاقات
يحتوي dns.fromlinux.fan على عنوان 10.10.10.5

buzz @ sysadmin: ~ $ dig dns

buzz @ sysadmin: ~ $ host 10.10.10.5
5.10.10.10.in-addr.arpa مؤشر اسم المجال dns.fromlinux.fan.

Dnsmasq غير مخصص لنظام رئيسي - تابع

buzz @ sysadmin: ~ $ host -t AXFR من linux.fan
محاولة "desdelinux.fan" المضيف desdelinux.fan غير موجود: 5 (مرفوض) ؛ فشل النقل.

ولا يُقصد أيضًا إعادة سجلات NS و SOA

buzz @ sysadmin: ~ $ host -t NS من linux.fan
المضيف من linux.fan غير موجود: 5 (مرفوض)

buzz @ sysadmin: ~ $ host -t SOA من linux.fan
المضيف من linux.fan غير موجود: 5 (مرفوض)

buzz @ sysadmin: ~ $ dig IN SOA من linux.fan
buzz @ sysadmin: ~ $ dig IN NS من linux.fan

إذا كان يدعم سجلات MX و CNAME و TXT

buzz @ sysadmin: ~ $ host -t إلى www
www.desdelinux.fan هو اسم مستعار لـ blog.desdelinux.fan. blog.desdelinux.fan لديه عنوان 10.10.10.7
buzz @ sysadmin: ~ $ host -t MX من linux.fan
تتم معالجة البريد desdelinux.fan عن طريق 10 mail.desdelinux.fan.

buzz @ sysadmin: ~ $ host -t CNAME www
www.desdelinux.fan هو اسم مستعار لـ blog.desdelinux.fan.

buzz @ sysadmin: ~ $ host -t إلى blog.fromlinux.fan
blog.desdelinux.fan لديه عنوان 10.10.10.7

buzz @ sysadmin: ~ $ host -t TXT من linux.fan
نص وصفي desdelinux.fan "FromLinux ، مدونتك مخصصة للبرمجيات الحرة" desdelinux.fan نص وصفي "v = spf1 a -all"

استفسارات سجلات PTR

buzz @ sysadmin: ~ $ host -t PTR 10.10.10.7
7.10.10.10.in-addr.arpa مؤشر اسم المجال blog.desdelinux.fan.

buzz @ sysadmin: ~ $ host 10.10.10.7
7.10.10.10.in-addr.arpa مؤشر اسم المجال blog.desdelinux.fan.

عملاء Microsoft® Windows

صحي جدا هو أن تعمل على وحدة تحكم الخادم dns.fromlinux.fan الأمر Journalctl -f قبل تشغيل جهاز يعمل بنظام تشغيل Microsoft® Windows ، لمعرفة الكمية الهائلة من استعلامات DNS التي يتم إجراؤها على مواقع مختلفة. انها حقا مسلية جدا. 😉

إذا أردنا منع الاستفسارات المتعلقة ببعض هذه المواقع من الانتقال إلى خوادم Roots - خوادم الجذر أو نحو الناقلون التي نعلنها في الملف / الخ / resolv.conf، يمكننا الاستفادة من الملف / etc / banner_add_host، وملئه بالعديد من المواقع التي نحتاج إلى الإعلان عنها. مثال:

[root @ dns ~] # nano / etc / banner_add_hosts
127.0.0.1 windowsupdate.com 127.0.0.1 ctldl.windowsupdate.com 127.0.0.1 ocsp.verisign.com 127.0.0.1 csc3-2010-crl.verisign.com 127.0.0.1 www.msftncsi.com 127.0.0.1 ipv6.msftncsi.com 127.0.0.1 teredo.ipv6.microsoft.com 127.0.0.1 ds.download.windowsupdate.com 127.0.0.1 download.microsoft.com 127.0.0.1 fe2.update.microsoft.com 127.0.0.1 crl.microsoft.com 127.0.0.1 www .download.windowsupdate.com 127.0.0.1 win8.ipv6.microsoft.com 127.0.0.1 spynet.microsoft.com 127.0.0.1 spynet1.microsoft.com 127.0.0.1 spynet2.microsoft.com 127.0.0.1 spynet3.microsoft.com 127.0.0.1. 4 spynet127.0.0.1.microsoft.com 5 spynet127.0.0.1.microsoft.com 15 office127.0.0.1client.microsoft.com 127.0.0.1 addons.mozilla.org XNUMX crl.verisign.com

[root @ DNS ~] # اختبار dnsmasq
dnsmasq: فحص بناء الجملة موافق.

[root @ dns ~] # إعادة تشغيل systemctl dnsmasq.service 
[root @ dns ~] # systemctl status dnsmasq.service

[root @ dns ~] # host -t إلى spynet4.microsoft.com
يحتوي spynet4.microsoft.com على عنوان 127.0.0.1

[root @ dns ~] # host -t إلى www.download.windowsupdate.com
www.download.windowsupdate.com له عنوان 127.0.0.1
  • تنسيق الملف / etc / banner_add_hosts هو نفسه ملف etc / hosts / /. تذكر أن قائمة المجالات المراد "حظرها" يمكن أن تطول حسب حاجتنا ، وفقًا لما هو مذكور في القسم حدود في هذه المقالة.

للتحقق من العميل سبعة الذي أعطى عنوان IP:

buzz @ sysadmin: ~ $ host -t A سبعة
Seven.desdelinux.fan لديه عنوان 10.10.10.115

نقوم بتنفيذ الأمر في عميل Windows نفسه كمد:

مايكروسوفت ويندوز [النسخة 6.1.7601]
حقوق النشر (c) 2009 شركة مايكروسوفت. كل الحقوق محفوظة.

C: \ Users \ buzz> n البحث
الخادم الافتراضي: dns.desdelinux.fan العنوان: 10.10.10.5> خادم dns: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: dns.desdelinux.fan العنوان: 10.10.10.5> خادم ftpserver: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: ftpserver.desdelinux.fan العنوان: 10.10.10.8> www Server: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: blog.desdelinux.fan العنوان: 10.10.10.7 الأسماء المستعارة: www.desdelinux.fan> mail الخادم: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: mail.desdelinux.fan العنوان: 10.10.10.9> خادم sysadmin: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: sysadmin.desdelinux.fan العنوان: 10.10.10.1 > www.download.windowsupdate.com الخادم: dns.desdelinux.fan العنوان: 10.10.10.5 الاسم: www.download.windowsupdate.com العنوان: 127.0.0.1> إنهاء C: \ Users \ buzz>

ملخص

لقد رأينا حتى الآن بعض الميزات الرئيسية لـ Dnsmasq. أقترح اقرأ وادرس الملفات المذكورة في الفقرة الأولى من هذه المقالة ، إذا كنت تريد معرفة المزيد عن هذا البرنامج الرائع والمدهش. من خلال استخدامه يمكننا تسهيل حياتنا بشكل كبير.

حوالي عام 2014 قرأت المقال «الكيفية: Samba4 AD PDC + Windows XP و Vista و 7«. يصرح مبتكر المقال دون خجل: «أنا أكره الربط ، لذلك من dnsmasq للإنقاذ»(كذا) والتي تعني أكثر أو أقل«أنا أكره BIND ، لذلك يأتي Dnsmasq لإنقاذ«. للتسجيل ، هذه العبارة لم تقلها.

بشكل عابر ، سأعلق أنه في هذه المقالة لا يوضح المؤلف أصل بعض سجلات DNS وبصورة عامة ، فإنه ليس دليلًا جيدًا لتطبيق Active Directory® استنادًا إلى Samba 4. إذا أدهشني تفضيلك المتعصب لـ دنسماسك.

أنا لا أكره إلزام على الإطلاق. تم توضيح ذلك من خلال مقالاتي الأربعة - 4 السابقة:

كما كتبت في مناسبات سابقة ، لم يحدث أبدًا انصحلكن أقترح. في حالة Dnsmasq نعم انصح استخدامه في شبكات SME.

التسليم المقبل

الدفعة القادمة -أعتقد أنني أعتقد- سأخصصها لدمج Dnsmasq مع Microsoft® Active Directory®. ستكون نقطة دخول جيدة لمقال -جدا- سيتعامل لاحقًا مع كيفية عمل AD-DC مع Samba 4 و Dnsmasq.


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

12 تعليقات ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   جوان هيرنانديز قال

    صباح الخير البرية !!! أنا أؤيد كل ما تقوله وصدقًا أن تشغيل تلك الشبكة حتى الآن لا يعطي سببًا للشكوى. لم أعد مسؤولاً عن تلك الشبكة ، لأنك تعرف المشاكل التي عانيت منها ... لكن بينما كنت مسؤولاً عن تلك الشبكة وحتى يومنا هذا أتواصل مع الشخص الذي أمامها ، لا يوجد سبب للشكوى . أفضل تجاربي مع ClearOS و DNSmasq.

  2.   فيديريكو قال

    صديق جوان ، شكرًا لك على مساعدتك في دعم ما كتبته عن الشركة باستخدام ClearOS.

  3.   صائد قال

    أكثر ما يعجبني في dnsmasq هو مدى تنوعه ، في ملف واحد تقوم بتكوين DNS و DHCP. فيما يتعلق بالأداء ، ليس لدي أي شكوى ، منذ فترة ، قمت بإيقاف تشغيل خادم 2003R2 الذي كان يعمل كمركز تحكم ، تم "تعليق" العديد من عملاء Linux من البلديات البعيدة ، وبما أنه لم يكن لدي أي طريقة لتعديل تفضيلات DNS الخاصة بهم ، فإن ما فعلته هو رفع جيسي مع ذلك IP dnsmasq التخزين المؤقت DNS الجديد ، كل شيء على ما يرام.
    مقال جيد جدا فيكو مع تحياتي.

    1.    فيديريكو قال

      ما رأيك في الحد المتحفظ لخدمة ما يصل إلى 1000 جهاز كمبيوتر؟ لدي إمكانية التحقق من البيانات مع صديق يكرس نفسه لتقديم خدمات موقع "مأسور" عبر شبكة WiFi ، وقد قدم الخدمة مؤخرًا - مع BIND + Isc-dhcp- لأكثر من 1000 هاتف محمول في مسرح كارل ماركس. لقد وظفني لجعله خادمًا بأقل استهلاك ممكن للموارد ، لهذه الوظيفة.

      1.    صائد قال

        يجب أن يكون واضحًا أن هذه "الحدود" المزعومة قد تم قياسها منذ بضع سنوات ومع وجود أجهزة أقل بكثير من المعيار الحالي ، فقد تطور كل من dnsmasq والعملاء كثيرًا ، وأنا واثق تمامًا من أنها ستتحمل عبء هذه المستخدمين. قم دائمًا بتوثيق وحظر آلاف الاستفسارات التي يقوم بها Android عند محاولة الاتصال بالمنزل ، في صحتك

  4.   فيديريكو قال

    سوف آخذ نصيحتك على محمل الجد يا دنتر. شكرا لك مرة أخرى

  5.   IWO قال

    كما أصبح شائعًا في هذه السلسلة من الشركات الصغيرة والمتوسطة ، فإن هذا المنشور على "DNSMASQ" هو مقال رائع آخر يقدمه لنا المؤلف لمسؤولي النظام لتطوير أنفسنا تقنيًا ونظريًا.
    في حالتي الشخصية ، كنت على دراية مبهمة بـ dnsmasq لأنني أعطيت الأولوية لـ DNS (Bind) و DHCP كخدمة مستقلة. بالنسبة لي هذا رائع! الشيء dnsmasq للسماح بتهيئة كليهما في خدمة واحدة (من خلال ملف /etc/dnsmasq.conf).
    عظيم! قادرة على دعم 1,000 عميل على الأقل باستخدام DNS و DHCP دون التأثير على أدائها.
    ومن الجيد جدًا أيضًا أن TIP حول كيفية تجنب الاستفسارات المتعلقة بخوادم الجذر أو المعيدون باستخدام ملف / etc / banner_add_host حيث نقوم بإدراج المواقع "N" التي نحتاج إلى الإعلان عنها كما لو كانت "مضيفين محليين".
    أخيرًا وكما هو شائع في المؤلف في قسم "القسط التالي" ، فإنه يخطط الآن لتقديم جوهرة أخرى "تكامل Dnsmasq مع Microsoft® Active Directory®".
    حسنًا ، نحن بالفعل نتطلع إلى ذلك.

  6.   دولاب الأبراج قال

    كنت مشغولا ولم أستطع متابعة مقالاتك. لقد فاتني البعض. كل كتابة جديدة لك هي مفاجأة سارة تحتوي على تعاليم جديدة. استمر في ذلك يا صديقي فيكو

  7.   كريسبو 88 قال

    دنسماسك اشهد تشغيله بشكل يومي فهو الافضل. لقد أخبرتك دائمًا وأصررت على تكامل bind9 و isc-dhcp-server (حل أحبه كثيرًا ، لأنني حاولت مرات عديدة تعلمت ورأيت واكتسبت ما أعرفه القليل عن dns و dhcp ، VIIII ، يمكنني رؤية ما مايكروسوفت لا تدعك تراقب ما لا يريدونك أن تتعلمه وتبقيك في غرفة مظلمة ومغلقة ، إنها في الحقيقة خدمات تم الحديث عنها وكأنهم وحوش وهم أناس طيبون ، يمكنك التعامل معهم بالحقيقة) ، وشكراً لك لهذا اضطررت إلى تحسين نفسك أكثر ، في الواقع نحن نشهد بالفعل كل نتائج هذا الجهد ونشكرك على جودة مشاركاتك.
    هذا على وجه الخصوص رائع ، أنا لا أحصل على الفضل من الباقي ، بالطبع لا ، حتى لا أفكر في ذلك ؛ ولكن بسببك قابلت صديقي dnsmasq وتعيش شبكة إقامتي أكثر من سعيدة بمقابلة زميلنا الجديد الذي أنشأه Simon Kelley. شكرا له ايضا.

  8.   فيديريكو قال

    IWO: لن تنتظر طويلاً حتى تصل إلى الوظيفة التالية. لم أنتهي منه بعد لأنني مشغول جدًا بعملي اليومي. الوقت ... ولكن بالتأكيد سيكون لديك الأسبوع المقبل.

  9.   فيديريكو قال

    Crespo88: لا يمكنني إضافة أي شيء آخر إلى تعليقك الكامل. ولدي بالفعل وقت قصير لأنه في الساعة 7 مساءً نفد ملاحتي 😉
    شكرا لك!.

  10.   القيصرية قال

    مرحبًا FICO. مقال جيد جدا.
    أود أن أعرف كيفية تنفيذ dnsmasq على baremetal (HP Proliant gen 8) الذي يستضيف أجهزة KVM الافتراضية.
    هل يجب إجراء تكوين dnsmasq على المضيف أو في أحد الأجهزة الافتراضية التي تعمل كخادم dnsmasq؟
    انا في فوضى
    تحية.