1. ভূমিকা
এই কোডল্যাব ফরওয়ার্ডিং টার্গেট হিসাবে একটি সম্পূর্ণ যোগ্য ডোমেন নাম (FQDN) ব্যবহার করে ক্লাউড ডিএনএস আউটবাউন্ড ফরওয়ার্ডিং জোন সেট আপ করার মাধ্যমে আপনাকে গাইড করবে। এই বৈশিষ্ট্যটি আপনাকে আপনার ফরওয়ার্ডিং জোনের কনফিগারেশনে হার্ড-কোডিং আইপি ঠিকানাগুলির পরিবর্তে একটি DNS নাম থেকে সমাধান করা IP ঠিকানাগুলিতে DNS ট্র্যাফিককে নির্দেশ করতে দেয়। এটি বিশেষভাবে উপযোগী হয় যখন আপনার ব্যাকএন্ড DNS সমাধানকারী আইপি ঠিকানাগুলি পরিবর্তন হয়, কারণ আপনি FQDN এর জন্য DNS রেকর্ড আপডেট করতে পারেন এবং Cloud DNS স্বয়ংক্রিয়ভাবে পরিবর্তনগুলি গ্রহণ করে৷
এই কোডল্যাবের শেষে, আপনি ক্লাউড ডিএনএস ফরওয়ার্ডিং জোনগুলি কনফিগার করতে সক্ষম হবেন যা নিম্নলিখিতগুলি ব্যবহার করে:
- একটি FQDN লক্ষ্য যা A/AAAA রেকর্ডের সাথে একটি ব্যক্তিগত অঞ্চলের সাথে মেলে।
- আঞ্চলিক সম্বন্ধ বা ট্রাফিক বন্টনের জন্য ক্লাউড ডিএনএস রাউটিং নীতি (ভৌগলিক অবস্থান বা ওজনযুক্ত রাউন্ড রবিন) দ্বারা সমর্থিত একটি FQDN লক্ষ্য।
FQDN ফরওয়ার্ডিং এর ওভারভিউ
ক্লাউড ডিএনএস ফরওয়ার্ডিং আপনাকে Google ক্লাউড প্ল্যাটফর্ম সংস্থানগুলি থেকে Google ক্লাউড প্ল্যাটফর্মের বাইরে (উদাহরণস্বরূপ, অন-প্রিমিসেস বা অন্যান্য ক্লাউড) হোস্ট করা ব্যক্তিগত DNS নামগুলি সমাধান করতে দেয়৷ ঐতিহ্যগতভাবে, এটি লক্ষ্য আইপি ঠিকানাগুলির একটি তালিকায় ফরওয়ার্ডিং সমর্থিত। FQDN ফরওয়ার্ডিং আপনাকে একটি ফরওয়ার্ডিং জোনে একটি ফরওয়ার্ডিং লক্ষ্য হিসাবে একটি FQDN নির্দিষ্ট করার অনুমতি দিয়ে এটিকে প্রসারিত করে।
যখন একটি FQDN নির্দিষ্ট করা হয়, তখন ক্লাউড ডিএনএস এটিকে একটি অভ্যন্তরীণ লুকআপ ব্যবহার করে আইপি ঠিকানায় সমাধান করে, যা সোর্স নেটওয়ার্কের রেজোলিউশন লজিক ব্যবহার করে। এর মানে হল FQDN টার্গেট একটি প্রাইভেট জোন, একটি DNS রাউটিং পলিসি (ভৌগোলিক অবস্থান বা ওজনযুক্ত রাউন্ড রবিন), এমনকি একটি ইন্টারনেট পাবলিক ডোমেইন নামের সাথেও মিলতে পারে। ক্লাউড ডিএনএস তারপরে সমাধান করা গন্তব্য আইপিতে প্রশ্নটি ফরোয়ার্ড করে।
আপনি কি নির্মাণ করবেন
একটি নতুন ব্যক্তিগত অঞ্চলের সাথে আঞ্চলিক FQDN ফরওয়ার্ডিং
আপনি একটি সেটআপ তৈরি করবেন যা DNS ট্রাফিকের জন্য আঞ্চলিক সখ্যতা অর্জন করবে। এর মধ্যে একটি ব্যক্তিগত DNS জোন তৈরি করা এবং এর মধ্যে একটি ভূ-অবস্থান রাউটিং নীতি কনফিগার করা, তারপর এই FQDN টার্গেটের সাথে একটি ফরওয়ার্ডিং জোন লিঙ্ক করা জড়িত। এটি নিশ্চিত করে যে একটি নির্দিষ্ট অঞ্চল থেকে ট্রাফিক (উদাহরণস্বরূপ, us-east1) একটি সংশ্লিষ্ট আঞ্চলিক DNS সার্ভারে ফরোয়ার্ড করা হয়েছে।
একটি বিদ্যমান ব্যক্তিগত অঞ্চলের সাথে FQDN ফরওয়ার্ডিং
আপনি একটি ফরওয়ার্ডিং জোন তৈরি করতে শিখবেন যা একটি বিদ্যমান ব্যক্তিগত DNS জোনের মধ্যে একটি A/AAAA রেকর্ড দ্বারা সমর্থিত একটি FQDN কে লক্ষ্য করে। এটি একটি FQDN ফরওয়ার্ডিং টার্গেট ব্যবহার করে সমাধান করা স্ট্যাটিকভাবে সংজ্ঞায়িত IP ঠিকানাগুলিতে ফরওয়ার্ডিং প্রশ্নগুলি প্রদর্শন করে।
আপনি কি শিখবেন
FQDN ফরওয়ার্ডিং এর ধারণা
আপনি বুঝতে পারবেন যে এফকিউডিএন ফরওয়ার্ডিং ডিএনএস ফরওয়ার্ডিংকে প্রসারিত করে বহির্গামী প্রশ্নের জন্য ফরওয়ার্ডিং লক্ষ্য হিসাবে শুধুমাত্র আইপি ঠিকানার পরিবর্তে একটি FQDN ফরওয়ার্ডিং লক্ষ্য নির্দিষ্ট করার অনুমতি দিয়ে।
FQDN ফরওয়ার্ডিং এর সুবিধা
আপনি শিখবেন যে এই বৈশিষ্ট্যটি ম্যানুয়াল আপডেটের প্রয়োজনীয়তা দূর করে যখন ব্যাকএন্ড DNS সমাধানকারী আইপি ঠিকানাগুলি পরিবর্তন করে, কারণ ক্লাউড ডিএনএস স্বয়ংক্রিয়ভাবে FQDN-এর DNS রেকর্ড থেকে পরিবর্তনগুলি গ্রহণ করে। এটি DNS সার্ভারগুলিকে একটি ভাগ করা নাম বা গতিশীলভাবে স্কেলের পিছনে থাকার অনুমতি দিয়ে DNS পরিকাঠামোর আরও নমনীয় স্কেলিং সক্ষম করে।
ক্লাউড ডিএনএস রাউটিং নীতির সাথে একীকরণ
আপনি শিখবেন কীভাবে FQDN ফরওয়ার্ডিংকে ক্লাউড ডিএনএস রাউটিং নীতির (ভৌগলিক অবস্থান বা ওজনযুক্ত রাউন্ড রবিন) সাথে আঞ্চলিক সখ্যতা অর্জন করতে, ভৌগলিকভাবে বিভিন্ন স্থাপনার জন্য পারফরম্যান্স অপ্টিমাইজ করতে এবং কনফিগার করা ওজনের উপর ভিত্তি করে ট্রাফিক বিতরণ করা যেতে পারে।
Google Cloud CLI কমান্ড সিনট্যাক্স
আপনি FQDN ফরওয়ার্ডিং জোন সেট আপ করার জন্য gcloud dns managed-zones create
কমান্ড এবং এর প্রাসঙ্গিক পতাকাগুলির সাথে পরিচিত হবেন ( --forwarding-targets
, --private-forwarding-targets
)।
পূর্বশর্ত
এই কোডল্যাবটি সম্পূর্ণ করতে আপনার নিম্নলিখিতগুলি প্রয়োজন:
- একটি Google অ্যাকাউন্ট
- বিলিং সক্ষম সহ একটি Google ক্লাউড প্রকল্প৷
- gcloud কমান্ড-লাইন টুল ইনস্টল এবং কনফিগার করা হয়েছে
- ক্লাউড ডিএনএস এবং ডিএনএস ধারণাগুলির একটি প্রাথমিক ধারণা
2. সেট আপ করা হচ্ছে
FQDN ফরওয়ার্ডিং পরিস্থিতি বোঝা
ক্লাউড ডিএনএস এফকিউডিএন ফরওয়ার্ডিং বিভিন্ন ব্যবহারের পরিস্থিতি সমর্থন করে:
- A/AAAA রেকর্ড সহ প্রাইভেট জোন : FQDN যদি একটি প্রাইভেট জোনে A/AAAA রেকর্ডের সাথে মিলে যায়, তাহলে সমাধানকৃত আইপি ঠিকানাগুলি ফরওয়ার্ডিং তালিকায় যোগ করা হয় এবং আচরণটি সরাসরি লক্ষ্য আইপি ঠিকানাগুলিতে ফরওয়ার্ড করার মতো।
- ভূ-অবস্থান নীতি সহ ব্যক্তিগত অঞ্চল : ভূ-অবস্থান নীতি আপনাকে উৎস ভূ-অবস্থান নির্দিষ্ট করতে এবং সংশ্লিষ্ট উত্তর প্রদান করতে দেয়, ভূগোলের উপর ভিত্তি করে ট্রাফিক বন্টন যাচাই করে। এটি আঞ্চলিক ডিএনএস ফরওয়ার্ডিং এবং অ্যাফিনিটির জন্য গুরুত্বপূর্ণ।
- ওজনযুক্ত রাউন্ড রবিন (WRR) নীতি সহ ব্যক্তিগত অঞ্চল : WRR নীতিগুলি একটি DNS নামের জন্য IP ঠিকানা প্রতি বিভিন্ন ওজন নির্দিষ্ট করার অনুমতি দেয়, কনফিগার করা ওজন অনুসারে ট্র্যাফিক বিতরণ করা হয় তা যাচাই করে৷
- A/AAAA রেকর্ড সহ পাবলিক জোন : যদি FQDN একই নেটওয়ার্কে দৃশ্যমান কোনো ব্যক্তিগত নামের সাথে মেলে না, Cloud DNS পাবলিক ইন্টারনেট ব্যবহার করে এটি সমাধান করার চেষ্টা করে।
FQDN ফরোয়ার্ডিংয়ের জন্য Google Cloud CLI কমান্ড বোঝা
Gcloud CLI কমান্ড ব্যবহার করে একটি FQDN ফরওয়ার্ডিং টার্গেট সহ একটি ফরওয়ার্ডিং জোন তৈরি করতে, আপনি gcloud dns managed-zones create
কমান্ড ব্যবহার করবেন। একটি FQDN লক্ষ্য নির্দিষ্ট করার মূল পতাকা হল --forwarding-targets
বা --private-forwarding-targets
। আদর্শ এবং ব্যক্তিগত রাউটিং পদ্ধতি সম্পর্কে বিশদ বিবরণের জন্য অনুগ্রহ করে দস্তাবেজটি দেখুন।
-
--forwarding-targets
: IPv4/IPv6 ঠিকানার তালিকা বা টার্গেট নেম সার্ভারের একটি ডোমেন নাম যা জোন কোয়েরি ফরোয়ার্ড করবে। সর্বজনীন দৃশ্যমানতার জন্য উপেক্ষা করা হয়েছে। অ-RFC1918 ঠিকানাগুলি ইন্টারনেটের মাধ্যমে লক্ষ্যে ফরোয়ার্ড করা হবে। RFC1918 ঠিকানাগুলি VPC এর মাধ্যমে ফরোয়ার্ড করা হবে। -
--private-forwarding-targets
: IPv4/IPv6 ঠিকানার তালিকা বা টার্গেট নেম সার্ভারের একটি ডোমেন নাম যা জোন কোয়েরি ফরোয়ার্ড করবে। সর্বজনীন দৃশ্যমানতার জন্য উপেক্ষা করা হয়েছে। এই প্যারামিটারের জন্য নির্দিষ্ট করা সমস্ত ঠিকানা VPC এর মাধ্যমে পৌঁছানো হবে।
নমুনা বাক্য গঠন:
gcloud dns managed-zones create NAME \
--description=DESCRIPTION \
--dns-name=DNS_SUFFIX \
--networks=VPC_NETWORK_LIST \
--forwarding-targets=DEFAULT_FQDN_TARGET \
--visibility=private
মনে রাখবেন আপনি --forwarding-targets
--private-forwarding-targets
নির্দিষ্ট করতে পারেন।
আপনার Google ক্লাউড প্ল্যাটফর্ম প্রকল্প সেট আপ করুন৷
gcloud CLI-তে লগইন করুন।
gcloud auth login
একটি প্রকল্প তৈরি করুন।
gcloud projects create my-codelab-project
Cloud DNS API সক্ষম করুন৷ এটি কার্যকর হতে কয়েক মিনিট সময় লাগতে পারে।
gcloud services enable dns.googleapis.com
এই কোডল্যাবটি একটি নতুন প্রকল্পের সাথে তৈরি করা ডিফল্ট ভিপিসি নেটওয়ার্ক ব্যবহার করে। আপনি পরিবর্তে ব্যবহার করার জন্য একটি নতুন নেটওয়ার্ক তৈরি করতে পারেন৷
3. আঞ্চলিক FQDN ফরওয়ার্ডিং সেট আপ করুন (নতুন ব্যক্তিগত অঞ্চল সহ)
এই দৃশ্যটি দেখায় কিভাবে আঞ্চলিক DNS ফরওয়ার্ডিং অর্জন করা যায়, একটি নির্দিষ্ট অঞ্চল থেকে ট্র্যাফিক একই অঞ্চলের মধ্যে একটি DNS সার্ভারে ফরোয়ার্ড করা হয় তা নিশ্চিত করে।
একটি ব্যক্তিগত DNS জোন তৈরি করুন
প্রথমে, একটি ব্যক্তিগত DNS জোন তৈরি করুন (উদাহরণস্বরূপ, foo.com.) যা আপনার FQDN এবং এর সাথে সম্পর্কিত ভূ-অবস্থান রাউটিং নীতি হোস্ট করবে। এই জোনটি আপনার ডিফল্ট নেটওয়ার্কে দৃশ্যমান হতে হবে।
gcloud dns managed-zones create my-zone \
--description="Private Zone for FQDN outbound DNS forwarding." \
--dns-name=foo.com. \
--networks=default \
--visibility=private
ব্যক্তিগত অঞ্চলের মধ্যে একটি ভূ-অবস্থান রাউটিং নীতি রেকর্ড তৈরি করুন
এরপর, আমার-জোনের মধ্যে একটি রেকর্ড সেট তৈরি করুন (উদাহরণস্বরূপ, geo.foo.com.) এবং একটি ভূ-অবস্থান রাউটিং নীতি প্রয়োগ করুন। এই উদাহরণটি asia-east1 এবং asia-west1 এর জন্য IP ঠিকানা কনফিগার করে।
gcloud dns record-sets create geo.foo.com. \
--ttl="30" \
--type="A" \
--zone="my-zone" \
--routing-policy-type="GEO" \
--routing-policy-data="asia-east1=192.168.0.1;us-central1=192.168.0.2"
দ্রষ্টব্য: যদি জিওফেন্সিং অক্ষম করা হয় (ডিফল্ট এবং প্রস্তাবিত), প্রশ্নগুলি নিকটতম স্বাস্থ্যকর অঞ্চলে নির্দেশিত হবে যদি মূল অঞ্চলের একটি লক্ষ্য অস্বাস্থ্যকর হয়।
FQDN টার্গেট সহ একটি ফরওয়ার্ডিং জোন তৈরি করুন
একই ডিফল্ট নেটওয়ার্কে দৃশ্যমান একটি ফরওয়ার্ডিং জোন ( geo.test.com. ) তৈরি করুন এবং geo.foo.com সেট করুন৷ (জিওলোকেশন রাউটিং নীতি সহ FQDN) এর ফরওয়ার্ডিং লক্ষ্য হিসাবে।
gcloud dns managed-zones create my-geo-fwd-zone \
--description="Forwarding zone for FQDN outbound DNS forwarding for routing policy." \
--dns-name=geo.test.com. \
--networks=default \
--private-forwarding-targets=geo.foo.com. \
--visibility=private
geo.test.com-এর সাথে মিলে যাওয়া যেকোন ডিএনএস কোয়েরি এখন geo.foo.com-এর সমাধানকৃত IP (উদাহরণস্বরূপ, 192.168.0.1 বা 192.168.0.2)-এ ফরোয়ার্ড করা হয়। , কোয়েরির উৎস অঞ্চলের উপর ভিত্তি করে।
4. FQDN ফরওয়ার্ডিং সেট আপ করুন (বিদ্যমান ব্যক্তিগত অঞ্চল সহ)
একটি বিদ্যমান ব্যক্তিগত DNS জোন আছে
ধরে নিন আপনার ইতিমধ্যেই ডিফল্ট নেটওয়ার্কে দৃশ্যমান my-zone (foo.com.) নামে একটি ব্যক্তিগত DNS জোন রয়েছে৷
এই ব্যক্তিগত অঞ্চলের মধ্যে একটি DNS সম্পদ রেকর্ড তৈরি করুন
a.foo.com এর জন্য একটি A টাইপ রেকর্ড তৈরি করুন। আপনার বিদ্যমান আমার-জোনের মধ্যে।
gcloud dns record-sets create a.foo.com. \
--ttl="30" \
--type="A" \
--zone="my-zone" \
--rrdatas=1.2.3.4
একটি ফরওয়ার্ডিং জোন তৈরি করুন এবং FQDN লক্ষ্য নির্দিষ্ট করুন
আঞ্চলিক FQDN দৃশ্যের অনুরূপ, একটি ফরওয়ার্ডিং জোন তৈরি করুন এবং a.foo.com নির্দিষ্ট করুন। ফরোয়ার্ডিং লক্ষ্য হিসাবে।
gcloud dns managed-zones create my-a-fwd-zone \
--description="Forwarding zone for FQDN outbound DNS forwarding for A record." \
--dns-name=a.test.com. \
--networks=default \
--private-forwarding-targets=a.foo.com. \
--visibility=private
a.test.com এর সাথে মিলে যাওয়া যেকোন DNS ক্যোয়ারী। a.foo.com-এর সমাধানকৃত IP ঠিকানা 1.2.3.4-এ ফরোয়ার্ড করা হবে।
5. পরিষ্কার করুন
একটি প্রাইভেট জোন মুছে ফেলার আগে, প্রাইভেট জোনের মধ্যে থাকা সমস্ত রিসোর্স রেকর্ডসেটগুলি প্রথমে মুছে ফেলতে হবে (NS এবং SOA রেকর্ডগুলি বাদে, যা স্বয়ংক্রিয়ভাবে তৈরি হয় এবং সর্বদা ব্যক্তিগত জোনে বিদ্যমান থাকতে হবে)।
ব্যক্তিগত অঞ্চলে ভূ-অবস্থান রাউটিং নীতি মুছুন।
gcloud dns record-sets delete "geo.foo.com." --type="A" --zone="my-zone"
ব্যক্তিগত অঞ্চলে A রেকর্ড মুছুন।
gcloud dns record-sets delete "a.foo.com." --type="A" --zone="my-zone"
ব্যক্তিগত অঞ্চল মুছুন।
gcloud dns managed-zones delete "my-zone"
ভূ-অবস্থান রাউটিং নীতির জন্য ফরওয়ার্ডিং জোন মুছুন।
gcloud dns managed-zones delete "my-geo-fwd-zone"
A রেকর্ডের জন্য ফরওয়ার্ডিং জোন মুছুন।
gcloud dns managed-zones delete "my-a-fwd-zone"
6. অভিনন্দন
অভিনন্দন, আপনি সফলভাবে FQDN আউটবাউন্ড DNS ফরওয়ার্ডিং ব্যবহার করতে শিখেছেন!