گزینه های آدرس دهی IP IPv4 و IPv6

۱. مقدمه

گزینه‌های آدرس‌دهی IP در Google Cloud

آدرس‌های IP به شناسایی شبکه‌ها و میزبان‌ها در شبکه کمک می‌کنند. انواع آدرس IPv4 و IPv6 وجود دارد. این آدرس‌ها باید منحصر به فرد باشند تا ترافیک شبکه بتواند منبع و مقصد را برای تبادل بسته شناسایی کند. آدرس‌دهی IP منحصر به Google Cloud نیست و هم در محیط‌های ابری و هم در محیط‌های محلی وجود دارد.

ابر خصوصی مجازی (VPC)

VPC یک نمایش منطقی از یک مرکز داده سنتی است. علاوه بر VPC پیش‌فرض و VPC در حالت خودکار، Google Cloud به شما امکان می‌دهد یک VPC سفارشی ایجاد کنید. این VPCهای سفارشی به شما امکان مدیریت کامل بر پیکربندی VPC را می‌دهند.

متعادل‌کننده‌های بار

یک متعادل‌کننده بار (Load balancer) امکان توزیع ترافیک را در چندین نمونه از برنامه شما فراهم می‌کند. گوگل کلود (Google Cloud) انواع مختلفی از متعادل‌کننده بار دارد که در مستندات متعادل‌کننده بار (Load balancing) فهرست شده‌اند. در این آزمایش، ما یک متعادل‌کننده بار سراسری (Global external Application) برای دسترسی به وب‌سایت ساده خود ایجاد خواهیم کرد.

NAT ابری

این به زیرشبکه‌های خصوصی شما اجازه می‌دهد تا با اینترنت ارتباط برقرار کنند. این کار با ترجمه آدرس IP داخلی شما به یک آدرس IP عمومی برای ایجاد اتصال به میزبان خارجی انجام می‌شود. سپس ترافیک برگشتی از منبع خارجی در دروازه NAT ترجمه معکوس می‌شود تا از آدرس‌دهی خصوصی برای بازگشت ترافیک به کلاینت استفاده شود. اتصال به صورت خروجی آغاز می‌شود.

ماشین مجازی

اینها سیستم‌های مجازی هستند که سیستم‌عامل‌ها را اجرا می‌کنند. اینها می‌توانند بر اساس نیازهای کاربر پیکربندی شوند و شامل اجزای حافظه، ذخیره‌سازی، شبکه و سیستم‌عامل باشند.

آنچه خواهید ساخت

در این آزمایشگاه کد، شما دو VPC سفارشی ایجاد خواهید کرد، انواع آدرس‌های IPv4 و IPv6 (داخلی و خارجی) را فعال و پیکربندی خواهید کرد. همچنین یک سرور nginx ساده را روی یک ماشین مجازی با یک آدرس IP خصوصی ایجاد خواهید کرد، آن را با استفاده از یک Application Load Balancer خارجی در معرض دید قرار می‌دهید و با استفاده از آدرس‌های IPv4 و IPv6 به آن متصل خواهید شد:

  • دو VPC سفارشی ایجاد کنید و برخی از قوانین فایروال را اضافه کنید
  • ایجاد زیرشبکه‌های IPv4 تک پشته‌ای و IPv4_IPv6 دو پشته‌ای
  • ایجاد یک دروازه NAT برای منابع خصوصی در زیرشبکه جهت دریافت به‌روزرسانی‌ها
  • ایجاد یک سرور آپاچی خصوصی VM با استفاده از MIG
  • سرورهای ماشین مجازی خصوصی را از طریق Application LB با آدرس‌های استاتیک IPV4 و IPv6 در معرض دید قرار دهید.
  • یک کلاینت خارجی IPv4، IPv6 ایجاد کنید
  • اتصال به آدرس متعادل کننده بار برنامه IPv4 و IPv6 از کلاینت

c184b465720a47d6.png

آنچه یاد خواهید گرفت

  • نحوه ایجاد VPC سفارشی
  • نحوه فعال کردن IPV6 در زیرشبکه‌ها
  • نحوه تنظیم قوانین فایروال
  • نحوه ایجاد یک دروازه NAT
  • نحوه ایجاد یک گروه نمونه مدیریت شده
  • نحوه ایجاد کلاینت‌های IPv4 و IPv6
  • نحوه ایجاد آی پی های استاتیک
  • نحوه ایجاد برنامه LB

این آزمایشگاه کد بر روی آدرس‌دهی IP تمرکز دارد و به‌طور خاص از ماشین‌های مجازی و متعادل‌کننده‌های بار نیز استفاده خواهد کرد.

آنچه نیاز دارید

  • یک مرورگر وب برای اتصال به کنسول گوگل کلود
  • امکان ایجاد VPCها و قوانین فایروال
  • امکان استفاده از ssh
  • یک حساب کاربری گوگل کلود

۲. راه‌اندازی

راه اندازی آزمایشگاه

تنظیم محیط خودتنظیم

  1. وارد کنسول گوگل کلود شوید و یک پروژه جدید ایجاد کنید یا از یک پروژه موجود دوباره استفاده کنید. اگر از قبل حساب جیمیل یا گوگل ورک اسپیس ندارید، باید یکی ایجاد کنید .

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • نام پروژه، نام نمایشی برای شرکت‌کنندگان این پروژه است. این یک رشته کاراکتری است که توسط APIهای گوگل استفاده نمی‌شود. شما همیشه می‌توانید آن را به‌روزرسانی کنید.
  • شناسه پروژه در تمام پروژه‌های گوگل کلود منحصر به فرد است و تغییرناپذیر است (پس از تنظیم، قابل تغییر نیست). کنسول کلود به طور خودکار یک رشته منحصر به فرد تولید می‌کند؛ معمولاً برای شما مهم نیست که چیست. در اکثر آزمایشگاه‌های کد، باید شناسه پروژه خود را (که معمولاً با عنوان PROJECT_ID شناخته می‌شود) ارجاع دهید. اگر شناسه تولید شده را دوست ندارید، می‌توانید یک شناسه تصادفی دیگر ایجاد کنید. به عنوان یک جایگزین، می‌توانید شناسه خودتان را امتحان کنید و ببینید که آیا در دسترس است یا خیر. پس از این مرحله قابل تغییر نیست و در طول پروژه باقی می‌ماند.
  • برای اطلاع شما، یک مقدار سوم، شماره پروژه ، وجود دارد که برخی از APIها از آن استفاده می‌کنند. برای کسب اطلاعات بیشتر در مورد هر سه این مقادیر، به مستندات مراجعه کنید.
  1. در مرحله بعد، برای استفاده از منابع/API های ابری، باید پرداخت صورتحساب را در کنسول ابری فعال کنید . اجرای این آزمایشگاه کد هزینه زیادی نخواهد داشت، اگر اصلاً هزینه‌ای داشته باشد. برای خاموش کردن منابع به منظور جلوگیری از پرداخت صورتحساب پس از این آموزش، می‌توانید منابعی را که ایجاد کرده‌اید یا پروژه را حذف کنید. کاربران جدید Google Cloud واجد شرایط برنامه آزمایشی رایگان ۳۰۰ دلاری هستند.

شروع پوسته ابری

اگرچه می‌توان از راه دور و از طریق لپ‌تاپ، گوگل کلود را مدیریت کرد، اما در این آزمایشگاه کد، از گوگل کلود شل ، یک محیط خط فرمان که در فضای ابری اجرا می‌شود، استفاده خواهید کرد.

از کنسول گوگل کلود ، روی آیکون Cloud Shell در نوار ابزار بالا سمت راست کلیک کنید:

55efc1aaa7a4d3ad.png

آماده‌سازی و اتصال به محیط فقط چند لحظه طول می‌کشد. وقتی تمام شد، باید چیزی شبیه به این را ببینید:

7ffe5cbb04455448.png

این ماشین مجازی با تمام ابزارهای توسعه‌ای که نیاز دارید، مجهز شده است. این ماشین مجازی یک دایرکتوری خانگی پایدار ۵ گیگابایتی ارائه می‌دهد و روی فضای ابری گوگل اجرا می‌شود که عملکرد شبکه و احراز هویت را تا حد زیادی بهبود می‌بخشد. تمام کارهای شما در این آزمایشگاه کد را می‌توان در یک مرورگر انجام داد. نیازی به نصب چیزی ندارید.

۳. پیکربندی VPC سفارشی

چرا یک VPC سفارشی؟

در این آزمایش، چند قانون فایروال از جمله قوانین مربوط به ترافیک IPv6 اضافه خواهیم کرد و جدا کردن آنها از شبکه پیش‌فرض عالی خواهد بود. علاوه بر این، IPv6 را روی یک زیرشبکه فعال خواهیم کرد. برخی از الزامات این کار این است که در یک شبکه با حالت سفارشی فعال شود. زیرشبکه‌های ایجاد شده خودکار در شبکه‌های با حالت خودکار پشتیبانی نمی‌شوند.

یک VPC سفارشی با IPv6 داخلی راه‌اندازی کنید

  1. در قسمت شبکه، شبکه VPC را انتخاب کنید.
  2. از بالا، گزینه Create VPC network را انتخاب کنید.

dda2618060d62ed5.png

  1. در بخش ایجاد شبکه VPC موارد زیر را اضافه کنید:
  2. نام شبکه را به صورت ipv4-ipv6-network وارد کنید.
  3. در بخش VPC network ULA internal IPv6 range، گزینه Enabled را انتخاب کنید.
  4. در بخش Allocate ULA internal IPv6 range، گزینه Automatically (به‌صورت خودکار) را انتخاب کنید.
  5. برای حالت ایجاد زیرشبکه، سفارشی (Custom) را انتخاب کنید.
  6. در بخش زیرشبکه جدید ، پارامترهای پیکربندی زیر را برای یک زیرشبکه مشخص کنید:

پیکربندی

ارزش

نام

آی‌پی‌وی۴

منطقه

اروپا-غرب1

نوع پشته IP

IPv4 (تک پشته)

محدوده IPv4

۱۹۲.۱۶۸.۱۰.۰/۲۴

ایجاد محدوده‌های IPv4 ثانویه

انتخاب کنید

نام محدوده زیرشبکه ۱

آی‌پی‌وی۴-ثانیه

محدوده IPv4 ثانویه ۱

۱۰.۰.۱۰.۰/۲۴

  • انتخاب انجام شد
  1. ما قصد داریم یک زیرشبکه دیگر اضافه کنیم و IPV6 را فعال کنیم. برای اضافه کردن یک زیرشبکه دیگر، گزینه ADD SUBNET را انتخاب کنید. در بخش New subnet ، پارامترهای پیکربندی زیر را برای یک زیرشبکه مشخص کنید:
  • برای نام زیرشبکه ، ipv6net را وارد کنید.
  • برای منطقه ، us-central1 را انتخاب کنید
  • برای نوع پشته IP ، IPv4 و IPV6 (دو پشته) را انتخاب کنید.
  • یک محدوده IPv4 وارد کنید، از 192.168.20.0/24 استفاده کنید.
  • برای دسترسی IPv6، نوع دسترسی داخلی (Internal) را انتخاب کنید.
  • انتخاب انجام شد
  1. در بخش قوانین فایروال ، موارد زیر را انتخاب کنید
  • در برگه قوانین فایروال IPv4، همه گزینه‌های موجود را انتخاب کنید : allow-cutom (برای ارتباط داخلی)، allow-icmp، allow-rdp، allow-ssh.
  • در برگه قوانین فایروال IPv6، همه گزینه‌های موجود را انتخاب کنید : allow-ipv6-cutom (برای ارتباط داخلی)، allow-ipv6-icmp، allow-ipv6-rdp، allow-ipv6-ssh.
    این گزینه‌ها به‌طور خودکار یک قانون تطبیق برای زیرشبکه جدید ایجاد می‌کنند.
  1. در بخش حالت مسیریابی پویا، برای شبکه VPC، حالت سراسری (Global) را انتخاب کنید. برای اطلاعات بیشتر، به حالت مسیریابی پویا مراجعه کنید. می‌توانید حالت مسیریابی پویا را بعداً تغییر دهید .
  2. برای حداکثر واحد انتقال (MTU) عدد ۱۴۶۰ را انتخاب کنید.
  3. روی ایجاد کلیک کنید.

یک VPC سفارشی با IPv6 خارجی تنظیم کنید

  1. در قسمت شبکه، شبکه VPC را انتخاب کنید.
  2. از بالا، گزینه Create VPC network را انتخاب کنید.
  3. dda2618060d62ed5.png
  4. در بخش ایجاد شبکه VPC موارد زیر را اضافه کنید:
  5. نام شبکه را به صورت external-ipv6-network وارد کنید.
  6. در بخش VPC network ULA internal IPv6 range، گزینه Enabled را انتخاب کنید.
  7. در بخش Allocate ULA internal IPv6 range، گزینه Automatically (به‌صورت خودکار) را انتخاب کنید.
  8. برای حالت ایجاد زیرشبکه، سفارشی (Custom) را انتخاب کنید.
  9. در بخش زیرشبکه جدید ، پارامترهای پیکربندی زیر را برای یک زیرشبکه مشخص کنید:
  • برای نام زیرشبکه ، ipv6-external را وارد کنید.
  • برای منطقه ، us-east1 را انتخاب کنید
  • برای نوع پشته IP ، IPv4 و IPv6 (پشته دوگانه) را انتخاب کنید.
  • یک محدوده IPv4 وارد کنید، از 192.168.200.0/24 استفاده کنید.
  • برای دسترسی IPv6، نوع دسترسی External را انتخاب کنید.
  • انتخاب انجام شد
  1. در بخش قوانین فایروال ، موارد زیر را انتخاب کنید
  • در برگه قوانین فایروال IPv4، همه گزینه‌های موجود را انتخاب کنید : allow-cutom (برای ارتباط داخلی)، allow-icmp، allow-rdp، allow-ssh.
  • در تب قوانین فایروال IPv6، همه گزینه‌های موجود را انتخاب کنید : allow-ipv6-cutom (برای ارتباط داخلی)، allow-ipv6-icmp، allow-ipv6-rdp، allow-ipv6-ssh. در این آزمایش، ما از این گزینه برای ایجاد خودکار یک قانون منطبق در زیرشبکه جدید استفاده خواهیم کرد.
  1. در بخش حالت مسیریابی پویا، برای شبکه VPC، حالت سراسری (Global) را انتخاب کنید. برای اطلاعات بیشتر، به حالت مسیریابی پویا مراجعه کنید. می‌توانید حالت مسیریابی پویا را بعداً تغییر دهید .
  2. برای حداکثر واحد انتقال (MTU) عدد ۱۴۶۰ را انتخاب کنید.
  3. روی ایجاد کلیک کنید.

بررسی قوانین فایروال

کنترل قوانین فایروال به شما امکان می‌دهد ترافیک سرویس‌های خود را مسدود کنید.

برای تأیید وجود قوانین:

  1. به شبکه VPC بروید
  2. در پنل سمت چپ، فایروال را انتخاب کنید.

f27d26d423d50f59.png

  1. به قسمت نمایش نگاه کنید و مطمئن شوید که قوانین فایروال برای شبکه‌های جدید ایجاد شده را می‌بینید. به پایین اسکرول کنید، ستون شبکه را پیدا کنید و به پایین اسکرول کنید. باید نام شبکه‌ای که ایجاد می‌کنید را در ستون شبکه قوانین فایروال ببینید. در این مورد ipv4-ipv6-network و external-ipv6-network . این نام باید برای پروژه منحصر به فرد باشد.
  2. در مرحله بعد، یک قانون فایروال جدید ایجاد خواهیم کرد تا امکان بررسی سلامت را فراهم کند.
  3. با انتخاب گزینه Activate Cloud Shell (فعال کردن پوسته ابری) ، اجرای ابری f را که قبلاً باز نشده است، باز کنید. 9db7bdee3b6c113d.png ) در نوار بالا. یک جلسه Cloud Shell باز می‌شود و یک اعلان خط فرمان نمایش می‌دهد. مطمئن شوید که در پروژه صحیح هستید و کد زیر را جایگذاری کنید.
gcloud compute firewall-rules create ipv4-ipv6-hc \
--direction=INGRESS \
--network=ipv4-ipv6-network \
--action=ALLOW \
--rules=tcp:80,tcp:8080,tcp:443 \
--source-ranges=35.191.0.0/16,130.211.0.0/22,209.85.152.0/22,209.85.204.0/22 \
--target-tags=ipv6-server
  1. پس از اتمام تأیید، قانون فایروال ipv6-ipv4-hc متصل به ipv4-ipv6-network را مشاهده و وارد می‌کنید.

۴. پیکربندی دروازه NAT

  1. به خدمات شبکه بروید
  2. Cloud NAT را انتخاب کنید و شروع به کار کنید

3972e67f4ed8beba.png

  1. نام دروازه از ipv4-ipv6-nat استفاده کنید
  2. شبکه را انتخاب کنید ipv4-ipv6-network
  3. منطقه را انتخاب کنید us-central1
  4. انتخاب روتر ابری برای ایجاد روتر جدید
  5. یک صفحه روتر ایجاد کنید و موارد زیر را پیکربندی کنید:
  • نام ipv4-ipv6-nat-router
  • همه موارد دیگر را به صورت پیش‌فرض بگذارید و گزینه ایجاد را انتخاب کنید
  1. به صفحه Create Cloud NAT gateway برگردید، گزینه‌های دیگر را همانطور که هستند، رها کنید .

۵. پیکربندی نمونه‌ها در VPC خصوصی

ایجاد نمونه‌های قالب VPC خصوصی

  1. پوسته ابری را باز کنید.
  2. اگر چندین پروژه دارید، تأیید کنید که در پروژه صحیح هستید
  3. موارد زیر را کپی و جایگذاری کنید
gcloud compute instance-templates create ipv6-internal-server \
--region=us-central1 \
--network-interface=subnet=ipv6net,no-address,stack-type=IPV4_IPV6 \
--machine-type=n1-standard-1 \
--metadata=^,@^startup-script=\#\!/bin/bash$'\n'\#\ package\ updates\ \ \ \ \ \ $'\n'apt\ update\ -y$'\n'apt\ install\ nginx\ -y$'\n'systemctl\ start\ nginx$'\n'systemctl\ enable\ nginx$'\n'systemctl\ status\ nginx\ \|\ grep\ Active$'\n'chown\ -R\ \$USER:\$USER\ /var/www$'\n'cd\ /var/www/html/$'\n'echo\ \'\<\!DOCTYPE\ html\>\'\ \>\ /var/www/html/index.html$'\n'echo\ \'\<html\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<head\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<title\>Awesome\ web\ app\</title\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<meta\ charset=\"UTF-8\"\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</head\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<body\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<h1\>IPv6\ server\</h1\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<h3\>You\ are\ successful\</h3\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</body\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</html\>\'\ \>\>\ /var/www/html/index.html$'\n'  --tags=ipv6-server,http-server,https-server \
--create-disk=auto-delete=yes,boot=yes,device-name=ipv6-internal-server,image=projects/debian-cloud/global/images/debian-11-bullseye-v20230306,mode=rw,size=20,type=pd-balanced 
  1. به موتور محاسباتی بروید
  2. الگوی نمونه را انتخاب کنید
  3. در پنجره الگوی نمونه، مطمئن شوید که الگویی را که تازه ایجاد کرده‌اید، می‌بینید. ceaa7bc8d8b62b28.png
  4. روی نام قالب کلیک کنید و برای مشاهده تنظیمات به پایین اسکرول کنید.
  • در زیر رابط‌های شبکه، مطمئن شوید که نوع پشته (Stack Type) را به صورت IPv4 و IPv6 مشاهده می‌کنید. 47f618608644c410.png

یک گروه نمونه در VPC خصوصی ایجاد کنید

  1. به موتور محاسباتی بروید
  2. انتخاب، گسترش، گروه‌های نمونه
  3. بررسی‌های سلامت را انتخاب کنید

f4ec2244a539bd6f.png

  1. ایجاد بررسی سلامت را انتخاب کنید
  2. در صفحه ایجاد بررسی سلامت از موارد زیر استفاده کنید:
  • از نام ipv6-server-hc استفاده کنید
  • پروتکل TCP پورت ۸۰
  • به بخش معیارهای سلامت بروید
  • بررسی فاصله زمانی ۱۰، تایم اوت ۵
  • آستانه سالم ۲، آستانه ناسالم ۴ 8bf5e76ce58b014c.png
  1. به انتها بروید، گزینه ایجاد را انتخاب کنید
  2. به موتور محاسباتی بروید
  3. گروه‌های نمونه را انتخاب کنید
  4. گروه ایجاد نمونه را انتخاب کنید
  5. گروه نمونه مدیریت‌شده جدید (با وضعیت) را انتخاب کنید
  6. از نام ipv6-server-igp استفاده کنید
  7. برای نمونه، از الگوی ipv6-internal-server استفاده کنید.
  8. برای تعداد موارد از ۲ استفاده کنید
  9. برای استفاده از موقعیت مکانی از Single Zone استفاده کنید، مطمئن شوید که منطقه us-central1 باشد.
  10. در قسمت «درمان خودکار» به پایین اسکرول کنید:
  • بررسی سلامت با استفاده از ipv6-server-hc
  • برای نوع تأخیر اولیه ۱۲۰
  • همه موارد دیگر را به صورت پیش‌فرض بگذارید و گزینه ایجاد را انتخاب کنید

ایجاد گروه نمونه چند دقیقه طول خواهد کشید.

گروه نمونه و ماشین‌های مجازی را تأیید کنید

وقتی گروه نمونه شما کامل شد، بیایید تأیید کنیم

  1. به Compute Engine بروید و Instance groups را انتخاب کنید.
  2. نام گروه نمونه‌ای که ایجاد کرده‌اید را انتخاب کنید : ipv6-server-igp
  3. مطمئن شوید که موارد زیر را مشاهده می‌کنید:
  • نمونه بر اساس وضعیت ۲ نمونه (اگر هنوز سالم نشان داده نشده است، لطفاً کمی به آن فرصت دهید تا تمام بررسی‌های سلامت اجرا شود)
  • نمونه بر اساس سلامت ۱۰۰٪ سالم

حالا بیایید مستقیماً به سراغ ماشین‌های مجازی در این گروه نمونه برویم و کمی آزمایش انجام دهیم.

  1. نمونه‌های ماشین مجازی را انتخاب کنید، باید دو ماشین مجازی با نام‌هایی که با ipv6-server-igp شروع می‌شوند را ببینید.
  2. به پایین و زیر ستون IP داخلی بروید، باید آدرس‌های IPV4 و IPV6 را ببینید. هر دو آدرس را برای هر سرور یادداشت کنید.
  3. در کنار اولین ماشین مجازی، SSH را انتخاب کنید. این کار یک جلسه SSH را مستقیماً به سرور باز می‌کند.
  4. در پنجره SSH عبارت curl localhost . باید پاسخی از وب سروری که روی ماشین مجازی اجرا می‌شود، دریافت کنید که HTML زیر را نمایش می‌دهد:

۹۳۶۹۶۲cc23787de8.png

  1. سپس ip addr را تایپ کنید تا اطلاعات آدرس نمایش داده شود. تأیید کنید که رابط exxx همان آدرس IPv4 و IPv6 را که از مرحله 6 برای این ماشین مجازی ثبت کرده‌اید، دارد.
  2. دستور ping -c 4 XXXX از این ماشین مجازی به آدرس IPv4 ماشین مجازی دوم اجرا کنید، سپس همین کار را با استفاده از آدرس IPv6 ماشین مجازی دوم انجام دهید.

f594227c496f6aaf.png

  1. < اختیاری > می‌توانید به ماشین مجازی دوم از طریق SSH متصل شوید و همین آزمایش را انجام دهید. آدرس‌های IPv4 و IPv6 ماشین مجازی اول را پینگ کنید.

یک نمونه مستقل فقط IPv4 در VPC خصوصی ایجاد کنید

  1. به موتور محاسباتی بروید
  2. نمونه‌های ماشین مجازی (VM Instances) را انتخاب کنید و سپس روی گزینه‌ی ایجاد نمونه (create instance) کلیک کنید.
  3. صفحه تنظیمات را به صورت زیر پر کنید:
  • نام فقط از ipv4 استفاده می‌کند
  • منطقه منتخب اروپا-غرب1
  1. به پایین اسکرول کنید، گزینه‌های پیشرفته (Advanced Options) و سپس شبکه (Networking) را باز کنید. حالا از موارد زیر استفاده کنید: در زیر رابط‌های شبکه (network Interfaces) e0e04a20d1d3346d.png
  • فلش کشویی کنار default را انتخاب کنید تا گزینه‌های رابط ویرایش را ببینید. ۱۷۹۹۷۴۹d۲۰d۴۹۴c۸.png
  1. برای تغییر شبکه به ipv4-ipv6-network
  • زیرشبکه ipv4
  • آدرس IPv4 خارجی را انتخاب کنید هیچکدام
  • انتخاب انجام شد
  1. به انتها بروید و ایجاد را انتخاب کنید
  2. ایجاد ماشین مجازی چند دقیقه طول خواهد کشید. این ماشین مجازی در یک زیرشبکه فقط IPv4 قرار دارد و هیچ آدرس IP خارجی به آن اختصاص داده نشده است. برای تأیید، به صفحه VM Instance بروید و ماشین مجازی با نام ipv4-only را پیدا کنید. 207938aabfe4251.pngbe32003508afdbd7.png
  3. SSH را برای SSH کردن به ماشین مجازی با نام ipv4-only انتخاب کنید.
  4. دستور ping -c 4 XXXX را روی آدرس‌های IPv4 خصوصی هر یک از ماشین‌های مجازی که قبلاً با نام ipv6-server-igp ایجاد شده‌اند، اجرا کنید. می‌توانید با موفقیت آدرس‌های IPv4 داخلی این ماشین‌های مجازی را پینگ کنید. 6c2a4a052238a59d.png

۶. ایجاد و اعمال LB با آدرس‌های IPv4 و IPv6 در VPC خصوصی

دو آی‌پی خارجی استاتیک ایجاد کنید

  1. به شبکه VPC بروید
  2. آدرس‌های IP را انتخاب کنید و آدرس استاتیک خارجی رزرو را انتخاب کنید.
  3. برای آدرس IPv4 از موارد زیر استفاده کنید:
  • نام ipv4-lb-ip
  • نسخه آی‌پی IPv4
  • نوع سراسری
  • به انتها بروید و رزرو را انتخاب کنید
  1. برای آدرس IPv6 مرحله 2 را تکرار کنید و از موارد زیر استفاده کنید:
  • نام ipv6-lb-ip
  • نسخه آی‌پی IPv6
  • نوع سراسری
  • به انتها بروید و رزرو را انتخاب کنید

این آدرس‌های IP را ثبت کنید. برای آزمایش اتصال در بخش آخر به آنها نیاز خواهید داشت.

ایجاد برنامه خارجی LB

  1. به خدمات شبکه بروید
  2. ایجاد متعادل‌کننده بار را انتخاب کنید
  3. در قسمت نوع متعادل‌کننده بار، متعادل‌کننده بار برنامه (HTTP/HTTPS) را انتخاب کنید و سپس مرحله بعد را انجام دهید.
  4. در قسمت نمای عمومی یا داخلی، نمای عمومی (خارجی) را انتخاب کنید و سپس به مرحله بعد بروید.
  5. در قسمت «جهانی یا تک منطقه‌ای» گزینه «بهترین برای بارهای کاری جهانی» و سپس گزینه بعدی را انتخاب کنید.
  6. در قسمت تولید متعادل‌کننده بار، متعادل‌کننده بار جهانی برنامه خارجی و سپس بعدی را انتخاب کنید.
  7. پیکربندی را انتخاب کنید
  8. در بالا، زیر بخش «ایجاد متعادل‌کننده بار برنامه خارجی سراسری» از نام ipv4-ipv6-lb-demo استفاده کنید.
  9. سپس پیکربندی Frontend را انتخاب کنید و از موارد زیر استفاده کنید:
  • نام ipv4-fe-lb
  • پروتکل HTTP
  • نسخه آی‌پی IPv4
  • آدرس IP ، ipv4-lb-ip را برای اختصاص IPv4 خارجی استاتیک که ایجاد کردیم، انتخاب کنید.
  • پورت ۸۰
  • انتخاب انجام شد
  1. در قسمت frontend، گزینه configure و IPv6 attachment را انتخاب کنید و گزینه Add Frontend IP and Port را انتخاب کنید: 6a5e3aeab563e0a1.png
  • نام ipv6-fe-lb
  • پروتکل HTTP
  • نسخه آی‌پی IPv6
  • آدرس IP ، ipv6-lb-ip را برای اختصاص IPv6 خارجی استاتیک که ایجاد کردیم، انتخاب کنید.
  • پورت ۸۰
  • انتخاب انجام شد
  1. در پنل سمت راست، زیر بخش backend service و backend buckets، گزینه Backend configuration را انتخاب کنید، سپس گزینه Create a backend service را انتخاب کنید و سپس از دستور زیر استفاده کنید:
  • نام سرور-پشتیبان
  • نوع بک‌اند، گروه نمونه
  • پروتکل HTTP
  • گروه نمونه ipv6-server-igp
  • شماره پورت‌ها ۸۰، ۸۰۸۰
  • غیرفعال کردن انتخاب فعال کردن Cloud CDN

ee9c122389b61a9d.png

  • بررسی سلامت ipv6-server-hc را انتخاب کنید
  • برای پایان دادن به ایجاد، اسکرول کنید
  • سپس ok را انتخاب کنید e4e0dfbb959d7424.png
  1. به پایین صفحه بروید و گزینه ایجاد (create) را انتخاب کنید. وقتی کار تمام شد، باید این را ببینید.

2d18e9aadc2545be.png

  1. روی نام LB جدید کلیک کنید و در زیر قسمت کاربری، آدرس‌های ipv4 و ipv6 را یادداشت کنید. برای آخرین آزمایش به آنها نیاز خواهید داشت.

۷. ایجاد یک نمونه واحد با آدرس‌های IPv4 و IPv6 خارجی و داخلی

ایجاد یک سرور مستقل با آدرس‌های IPv4 و IPv6 خارجی

  1. به موتور محاسباتی بروید
  2. نمونه‌های ماشین مجازی (VM Instances) را انتخاب کنید و سپس روی گزینه‌ی ایجاد نمونه (create instance) کلیک کنید.
  3. صفحه تنظیمات را به صورت زیر پر کنید:
  • استفاده از نام external-ipv4-ipv6
  • منطقه را انتخاب کنید us-east1
  1. به پایین اسکرول کنید، گزینه‌های پیشرفته (Advanced Options) و سپس شبکه (Networking) را باز کنید. حالا از موارد زیر استفاده کنید:
  • در زیر رابط شبکه، گزینه Network external-ipv6-network را انتخاب کنید.
  • زیرشبکه ipv6-خارجی
  • نوع پشته IP: IPv4 و IPv6 (دو پشته)
  • آدرس IPv4 خارجی را انتخاب کنید Ephemeral
  • انتخاب انجام شد
  1. به انتها بروید و ایجاد را انتخاب کنید
  2. ایجاد ماشین مجازی چند دقیقه طول می‌کشد. این ماشین مجازی در یک زیرشبکه IPv4_IPv6 با دسترسی آدرس IPv6 خارجی قرار دارد. برای تأیید، به صفحه نمونه ماشین مجازی بروید و ماشین مجازی با نام external-ipv4-ipv6 را جستجو کنید. 2a440854f52f1af7.png
  3. گزینه SSH را برای SSH کردن به ماشین مجازی external-ipv4-ipv6 انتخاب کنید.
  4. برای بررسی آدرس IPv4 و IPv6 اختصاص داده شده به ماشین مجازی خود ip addr تایپ کنید.
  5. به آدرس IPv4 فایل ipv4-ipv6-lb-demo بروید
  6. در جلسه SSH ماشین مجازی external-ipv4-ipv6 خود، دستور curl XXXX تایپ کنید که در آن XXXX آدرس IPv4 مربوط به متعادل‌کننده بار ipv4-ipv6-lb-demo است. شما باید HTML وب‌سایت در حال اجرا روی سرورهای شبکه ipv4-ipv6 را مشاهده کنید.
  7. در جلسه SSH ماشین مجازی external-ipv4-ipv6 خود، دستور curl [X:X:X:X]:80 را تایپ کنید که در آن X:X:X:X آدرس IPv6 متعادل‌کننده بار ipv4-ipv6-lb-demo است. این دستور باید چیزی شبیه به این باشد curl [2600:1901:X:XXXX::]:80 شما باید HTML وب‌سایت در حال اجرا روی سرورهای شبکه ipv4-ipv6 را ببینید.

7cd98c6daea571ce.png

۸. تمیز کردن

برای پاکسازی پروژه خود می‌توانید دستورات زیر را اجرا کنید.

gcloud compute instances delete external-ipv4-ipv6 --zone=us-east1-b --quiet
gcloud compute instances delete ipv4-only --zone=europe-west1-b --quiet

gcloud compute forwarding-rules delete ipv4-fe-lb --global --quiet
gcloud compute forwarding-rules delete ipv6-fe-lb --global --quiet
gcloud compute target-http-proxies delete ipv4-ipv6-lb-demo-target-proxy --quiet
gcloud compute target-http-proxies delete ipv4-ipv6-lb-demo-target-proxy-2 --quiet
gcloud compute url-maps delete ipv4-ipv6-lb-demo --quiet
gcloud compute backend-services delete server-backend --global --quiet

gcloud compute addresses delete ipv4-lb-ip --global --quiet
gcloud compute addresses delete ipv6-lp-ip --global --quiet


gcloud compute instance-groups managed delete ipv6-server-igp --zone us-central1-a --quiet

gcloud compute instance-templates delete "ipv6-internal-server" --quiet

gcloud compute health-checks delete ipv6-server-hc --quiet

gcloud compute routers nats delete ipv4-ipv6-nat --router=ipv4-ipv6-nat-router --region=us-central1 --quiet

gcloud compute routers delete ipv4-ipv6-nat-router --region=us-central1 --quiet

gcloud compute firewall-rules delete external-ipv6-network-allow-ipv6-custom external-ipv6-network-allow-ipv6-ssh external-ipv6-network-allow-rdp external-ipv6-network-allow-ipv6-rdp external-ipv6-network-allow-ssh external-ipv6-network-allow-ipv6-icmp external-ipv6-network-allow-custom external-ipv6-network-allow-icmp --quiet


gcloud compute firewall-rules delete ipv4-ipv6-hc ipv4-ipv6-network-allow-custom ipv4-ipv6-network-allow-ipv6-icmp ipv4-ipv6-network-allow-icmp ipv4-ipv6-network-allow-ssh ipv4-ipv6-network-allow-rdp ipv4-ipv6-network-allow-ipv6-ssh ipv4-ipv6-network-allow-ipv6-rdp ipv4-ipv6-network-allow-ipv6-custom --quiet

gcloud compute networks subnets delete ipv4 --region=europe-west1 --quiet
gcloud compute networks subnets delete ipv6net --region=us-central1 --quiet
gcloud compute networks subnets delete ipv6-external --region=us-east1 --quiet

gcloud compute networks delete external-ipv6-network --quiet
gcloud compute networks delete ipv4-ipv6-network --quiet

۹. تبریک

تبریک می‌گویم، شما با موفقیت هر دو گزینه شبکه IPv4 و IPv6 را بررسی کردید!

اسناد مرجع

آخرین به‌روزرسانی دفترچه راهنما، مارس ۲۰۲۳

آخرین آزمایش آزمایشگاهی، مارس ۲۰۲۳