
مجموعة أدوات DNS بلغة Python تدعم الاستعلامات ونقل المناطق والتحديثات الديناميكية وTSIG وEDNS0 وDNSSEC وDNS-over-HTTPS وDNS-over-QUIC مع واجهات برمجة تطبيقات عالية المستوى ومنخفضة المستوى.
dnspython هي مجموعة أدوات DNS للغة Python. وهي تدعم جميع أنواع السجلات تقريبًا. يمكن استخدامها للاستعلامات، ونقل المناطق (zone transfers)، والتحديثات الديناميكية. وهي تدعم الرسائل الموثقة بـ TSIG و EDNS0.
توفر dnspython وصولًا عالي المستوى ومنخفض المستوى إلى DNS. تقوم الفئات عالية المستوى بتنفيذ استعلامات عن بيانات باسم ونوع وفئة معينة، وتعيد مجموعة إجابات. تسمح الفئات منخفضة المستوى بالتعامل المباشر مع مناطق DNS والرسائل والأسماء والسجلات.
اسم الوحدة النمطية لـ dnspython هو dns. لرؤية بعض الطرق التي يمكن بها استخدام dnspython، انظر إلى دليل examples/.
dnspython هي أداة للتعامل مع DNS، لذلك لا يتم استخدام /etc/hosts. بالنسبة لعمليات البحث الأمامي البسيطة عن DNS، من الأفضل استخدام socket.getaddrinfo() أو socket.gethostbyname().
نشأت dnspython في Nominum حيث تم تطويرها لتسهيل اختبار برامج DNS.
هذا هو إصدار التطوير من dnspython 2.9.0.
يرجى قراءة
ما الجديد للحصول على
معلومات حول التغييرات في هذا الإصدار.
pip install dnspython
pip install --upgrade pip build
python -m build
pip install dist/*.whl
pip install git+https://github.com/rthalley/dnspython.gitلا يعتمد التثبيت الافتراضي لـ dnspython على أي وحدات نمطية أخرى غير
تلك الموجودة في المكتبة القياسية لـ Python. لاستخدام بعض الميزات، يجب تثبيت وحدات نمطية إضافية. للراحة، تم تعريف خيارات pip الخاصة بالمتطلبات.
إذا كنت تريد استخدام DNS-over-HTTPS، قم بتشغيل
pip install dnspython[doh].
إذا كنت تريد استخدام وظائف DNSSEC، قم بتشغيل
pip install dnspython[dnssec].
إذا كنت تريد استخدام وظائف أسماء النطاقات الدولية (IDNA)،
يجب عليك تشغيل
pip install dnspython[idna]
إذا كنت تريد استخدام حزمة الإدخال/الإخراج غير المتزامن Trio، قم بتشغيل
pip install dnspython[trio].
إذا كنت تريد استخدام WMI على Windows لتحديد إعدادات DNS النشطة
بدلاً من طريقة فحص السجل الافتراضية، قم بتشغيل
pip install dnspython[wmi].
إذا كنت تريد تجربة كود DNS-over-QUIC التجريبي، قم بتشغيل
pip install dnspython[doq].
لاحظ أنه يمكنك تثبيت أي مجموعة من الخيارات المذكورة أعلاه، على سبيل المثال:
pip install dnspython[doh,dnssec,idna]
انتهى دعم Python 2.x مع إصدار 1.16.0. تدعم dnspython إصدار Python 3.10
وما بعده. يتوافق الدعم المستقبلي مع عمر إصدارات Python 3.
انتقلت الوثائق إلى dnspython.readthedocs.io.