تكوين إعادة توجيه DNS لخدمة Azure Files

تمكنك Azure Files من إنشاء نقاط نهاية خاصة لحسابات التخزين التي تحتوي على مشاركات الملفات الخاصة بك. على الرغم من كونها مفيدة للعديد من التطبيقات المختلفة، إلا أن نقاط النهاية الخاصة مفيدة بشكل خاص للاتصال بمشاركات ملفات Azure من شبكتك المحلية باستخدام VPN أو اتصال ExpressRoute باستخدام التناظر الخاص.

لكي تمر الاتصالات بحساب التخزين الخاص بك عبر نفق الشبكة، يجب أن يتحول اسم المجال المؤهل بالكامل (FQDN) لحساب التخزين الخاص بك إلى عنوان IP الخاص بنقطة النهاية الخاصة بك. لتحقيق ذلك، يجب إعادة توجيه لاحقة نقطة نهاية التخزين (core.windows.net لمناطق السحابة العامة) إلى خدمة Azure الخاصة DNS التي يمكن الوصول إليها من داخل شبكتك الافتراضية. سيوضح هذا الدليل كيفية إعداد وتهيئة إعادة توجيه DNS لحل عنوان IP الخاص بنقطة النهاية لحساب التخزين الخاص بك بشكل صحيح.

نوصي بشدة بقراءة التخطيط لنشر ملفات Azure و اعتبارات شبكة ملفات Azure قبل إكمال الخطوات الموضحة في هذه المقالة.

ينطبق على

نوع مشاركة الملف SMB NFS
مشاركات الملفات القياسية (GPv2)، LRS/ZRS نعم لا
مشاركات الملفات القياسية (GPv2)، GRS/GZRS نعم لا
مشاركات الملفات المتميزة (FileStorage)، LRS/ZRS نعم نعم

نظرة عامة

توفر Azure Files الأنواع التالية من نقاط النهاية للوصول إلى مشاركات ملفات Azure:

  • نقاط النهاية العامة، والتي لها عنوان IP عام ويمكن الوصول إليها من أي مكان في العالم.
  • نقاط النهاية الخاصة، الموجودة داخل شبكة افتراضية ولها عنوان IP خاص من داخل مساحة العنوان لتلك الشبكة الافتراضية.
  • نقاط نهاية الخدمة، التي تقيد الوصول إلى نقطة النهاية العامة إلى شبكات ظاهرية معينة. لا يزال بإمكانك الوصول إلى حساب التخزين عبر عنوان IP العام، ولكن الوصول ممكن فقط من المواقع التي تحددها في التكوين الخاص بك.

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

يحتوي كل حساب تخزين على اسم مجال مؤهل بالكامل (FQDN). بالنسبة لمناطق السحابة العامة، يتبع FQDN هذا النمط storageaccount.file.core.windows.net حيث storageaccount هو اسم حساب التخزين. عند تقديم طلبات مقابل هذا الاسم، مثل تحميل المشاركة على محطة العمل الخاصة بك، يقوم نظام التشغيل الخاص بك بإجراء بحث DNS لتحليل اسم المجال المؤهل بالكامل إلى عنوان IP.

بشكل افتراضي، يحل storageaccount.file.core.windows.net عنوان IP الخاص بنقطة النهاية العامة. تتم استضافة نقطة النهاية العامة لحساب التخزين على مجموعة تخزين Azure التي تستضيف العديد من نقاط النهاية العامة لحسابات التخزين. عند إنشاء نقطة نهاية خاصة، يتم ربط منطقة DNS الخاصة بالشبكة الافتراضية التي تمت إضافتها إليها، مع تعيين سجل CNAME storageaccount.file.core.windows.net إلى إدخال سجل A لعنوان IP الخاص لنقطة النهاية الخاصة لحساب التخزين الخاص بك. يمكّنك هذا من استخدام storageaccount.file.core.windows.net FQDN داخل الشبكة الافتراضية وجعلها تتحلل إلى عنوان IP لنقطة النهاية الخاصة.

نظرا لأن هدفنا النهائي هو الوصول إلى مشاركات ملفات Azure المستضافة داخل حساب التخزين من أماكن العمل باستخدام نفق شبكة مثل اتصال VPN أو ExpressRoute، يجب عليك تكوين خوادم DNS المحلية لإعادة توجيه الطلبات المقدمة إلى خدمة ملفات Azure إلى خدمة DNS الخاصة ب Azure.

يمكنك تكوين إعادة توجيه DNS بإحدى طريقتين:

  • استخدام الأجهزة الظاهرية لخادم DNS: قم بإعداد إعادة التوجيه الشرطي ( *.core.windows.net أو لاحقة نقطة نهاية التخزين المناسبة لحكومة الولايات المتحدة أو ألمانيا أو السحابة الوطنية الصينية) إلى جهاز ظاهري لخادم DNS مستضاف داخل شبكة Azure الظاهرية. سيقوم خادم DNS هذا بعد ذلك بإعادة توجيه الطلب بشكل متكرر إلى خدمة DNS الخاصة ب Azure، والتي ستحل FQDN لحساب التخزين إلى عنوان IP الخاص المناسب. هذه خطوة لمرة واحدة لجميع مشاركات ملفات Azure المستضافة داخل شبكتك الظاهرية.

  • استخدام محلل Azure DNS الخاص: إذا كنت لا تريد نشر خادم DNS يستند إلى الجهاز الظاهري، يمكنك إنجاز نفس المهمة باستخدام Azure DNS Private Resolver.

بالإضافة إلى ملفات Azure، ستتم إعادة توجيه طلبات تحليل اسم DNS لخدمات تخزين Azure الأخرى (تخزين Azure Blob وتخزين جدول Azure وتخزين قائمة انتظار Azure وما إلى ذلك) إلى خدمة DNS الخاصة ب Azure. يمكنك إضافة نقاط نهاية إضافية لخدمات Azure الأخرى إذا رغبت في ذلك.

المتطلبات الأساسية

قبل أن تتمكن من إعداد إعادة توجيه DNS إلى ملفات Azure، ستحتاج إلى ما يلي:

تكوين إعادة توجيه DNS باستخدام الأجهزة الظاهرية

إذا كان لديك بالفعل خوادم DNS في مكانها داخل شبكة Azure الظاهرية، أو إذا كنت تفضل توزيع الأجهزة الظاهرية لخادم DNS الخاص بك بأي منهجية تستخدمها مؤسستك، يمكنك تكوين DNS باستخدام خادم DNS المضمن PowerShell cmdlets.

رسم تخطيطي يوضح مخطط الشبكة لتكوين إعادة توجيه D N S باستخدام الأجهزة الظاهرية في Azure.

هام

يفترض هذا الدليل أنك تستخدم خادم DNS داخل Windows Server في بيئتك المحلية. جميع الخطوات الموضحة هنا ممكنة مع أي خادم DNS، وليس فقط Windows DNS Server.

على خوادم DNS الداخلية، قم بإنشاء معيد توجيه شرطي باستخدام Add-DnsServerConditionalForwarderZone. يجب نشر معيد التوجيه الشرطي هذا على جميع خوادم DNS المحلية الخاصة بك حتى تكون فعالة في إعادة توجيه نسبة استخدام الشبكة بشكل صحيح إلى Azure. تذكر استبدال <azure-dns-server-ip> الإدخالات بعناوين IP المناسبة لبيئتك.

$vnetDnsServers = "<azure-dns-server-ip>", "<azure-dns-server-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $vnetDnsServers

على خوادم DNS داخل شبكة Azure الظاهرية، ستحتاج أيضا إلى وضع معيد توجيه بحيث يتم توجيه طلبات منطقة DNS لحساب التخزين إلى خدمة DNS الخاصة ب Azure، والتي يتم تقديمها بواسطة عنوان 168.63.129.16IP المحجوز . (تذكر تعبئة $storageAccountEndpoint إذا كنت تقوم بتشغيل الأوامر في جلسة PowerShell مختلفة).

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers "168.63.129.16"

تكوين إعادة توجيه DNS باستخدام محلل Azure DNS الخاص

إذا كنت تفضل عدم نشر الأجهزة الظاهرية لخادم DNS، يمكنك إنجاز نفس المهمة باستخدام Azure DNS Private Resolver. راجع إنشاء محلل خاص ل Azure DNS باستخدام مدخل Microsoft Azure.

رسم تخطيطي يوضح مخطط الشبكة لتكوين إعادة توجيه D N S باستخدام Azure D N S Private Resolver.

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

تحذير

عند تكوين معدي التوجيه لمنطقة core.windows.net ، ستتم إعادة توجيه جميع الاستعلامات لهذا المجال العام إلى البنية الأساسية ل Azure DNS. يؤدي هذا إلى حدوث مشكلة عند محاولة الوصول إلى حساب تخزين لمستأجر مختلف تم تكوينه بنقاط نهاية خاصة، لأن Azure DNS سيجيب على الاستعلام عن الاسم العام لحساب التخزين باستخدام CNAME غير موجود في منطقة DNS الخاصة بك. الحل البديل لهذه المشكلة هو إنشاء نقطة نهاية خاصة عبر المستأجرين في بيئتك للاتصال بحساب التخزين هذا.

لتكوين إعادة توجيه DNS باستخدام Azure DNS Private Resolver، قم بتشغيل هذا البرنامج النصي على خوادم DNS المحلية. استبدل <resolver-ip> بعنوان IP لنقطة النهاية الواردة للمحلل.

$privateResolver = "<resolver-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $privateResolver

تأكيد وكلاء DNS

قبل الاختبار لمعرفة ما إذا تم تطبيق معيدي DNS بنجاح، نوصي بمسح ذاكرة التخزين المؤقت DNS على محطة العمل المحلية الخاصة بك باستخدامClear-DnsClientCache. لاختبار ما إذا كان يمكنك حل FQDN لحساب التخزين الخاص بك بنجاح، استخدم Resolve-DnsName أو nslookup.

# Replace storageaccount.file.core.windows.net with the appropriate FQDN for your storage account.
# Note that the proper suffix (core.windows.net) depends on the cloud you're deployed in.
Resolve-DnsName -Name storageaccount.file.core.windows.net

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

Name                              Type   TTL   Section    NameHost
----                              ----   ---   -------    --------
storageaccount.file.core.windows. CNAME  29    Answer     csostoracct.privatelink.file.core.windows.net
net

Name       : storageaccount.privatelink.file.core.windows.net
QueryType  : A
TTL        : 1769
Section    : Answer
IP4Address : 192.168.0.4

إذا كنت تقوم بتحميل مشاركة ملف SMB، يمكنك أيضا استخدام Test-NetConnection الأمر للتأكد من إمكانية إجراء اتصال TCP بنجاح بحساب التخزين الخاص بك.

Test-NetConnection -ComputerName storageaccount.file.core.windows.net -CommonTCPPort SMB

راجع أيضًا