اینترنت به طور مداوم در حال تغییر است و کاهش آدرسهای IPv4 دور از ذهن نیست. IPv6 دیگر چیزی مربوط به آینده نیست، بلکه الزامی است که باید اکنون در نظر گرفته شود. داشتن درک اساسی از IPv6 برای مقاومسازی زیرساخت شما در برابر آینده ضروری است. این امر میتواند نقش مهمی در تصمیمگیری، به ویژه هنگام مدیریت یک سرور اختصاصی لینوکس، به ویژه سروری که آخرین نسخه اوبونتو ۲۴ را اجرا میکند، ایفا کند.
نحوه پیکربندی IPv6 در سرور مجازی و اختصاصی با سیستم عامل لینوکسی #
این راهنما هر آنچه را که برای پیکربندی IPv6 روی یک سرور اختصاصی لینوکس نیاز دارید، در بر دارد . در پایان این راهنما، شما یک راهحل IPv6 کارآمد خواهید داشت تا جایی که میتوانید عصر جدید اتصال به اینترنت را بپذیرید.
چرا IPv6 اکنون بیش از هر زمان دیگری اهمیت دارد؟ #
قبل از پرداختن به جزئیات فنی، اجازه دهید اهمیت IPv6 را درک کنیم:
- اتمام آدرس: آدرسهای IP (IPv4) در حال اتمام هستند و اکثر دستگاهها و سرویسهای رو به افزایش به IPv6 وابسته میشوند.
- مقیاسپذیری: IPv6 تعداد آدرسهایی را ارائه میدهد که تقریباً نجومی هستند، به این معنی که میتواند هر دستگاهی روی زمین را به آن متصل کند.
- کارایی: IPv6 فرآیند پیکربندی شبکه را از طریق پیکربندی خودکار بدون وضعیت (SLAAC) ساده کرده و همچنین کارایی مسیریابی را افزایش میدهد.
- امنیت: IPv6 با در نظر گرفتن امنیت طراحی شده است و IPsec یک جزء اجباری است.
- عملکرد: در موارد متعدد، IPv6 از نظر عملکرد برتر است؛ هدرهای بسته آن پیچیدگی کمتری دارند و مسیرهای مسیریابی سرراستتر هستند.
در مورد یک سرور اختصاصی ، IPv6 سرور شما را قادر میسازد تا مستقیماً با سرویسها و کاربرانی که منحصراً از IPv6 استفاده میکنند، ارتباط برقرار کند و در درازمدت، دسترسی آن را افزایش داده و آن را سازگار سازد.
پیش نیازها #
قبل از شروع، مطمئن شوید که موارد زیر را دارید:
- یک سرور اختصاصی لینوکس در حال اجرا (من از اوبونتو ۲۴.۰۴ استفاده میکنم )
- دسترسی روت یا sudo به سرور
- یک بلوک آدرس IPv6 که توسط ارائه دهنده خدمات میزبانی وب یا مدیر شبکه شما اختصاص داده شده است
- آشنایی اولیه با دستورات ترمینال لینوکس و مفاهیم شبکه
پیکربندی IPv6 در سرور اختصاصی لینوکس #
در زیر مراحل مربوط به پیکربندی IPv6 در سرور اختصاصی لینوکس آمده است.
مرحله ۱: تأیید پشتیبانی IPv6 #
ابتدا بررسی کنید که آیا سرور شما IPv6 را فعال کرده است و آیا هسته از آن پشتیبانی میکند یا خیر.
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
خروجی۰
- عدد ۰ به معنی فعال بودن IPv6 است.
- عدد ۱ به معنی غیرفعال بودن IPv6 است.
اگر خروجی ۱ است، IPv6 را با اجرای دستور زیر فعال کنید:
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0
مرحله ۲: بررسی پیکربندی شبکه فعلی #
رابطهای شبکه و پیکربندی IPv6 فعلی آنها را تأیید کنید.
ip -6 addr show
خروجی۱: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
۲: enp0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
inet6 fd7d:106f:a73e:8d9c:b310:2e19:39e5:628f/64 scope global temporary dynamic
valid_lft 604028sec preferred_lft 85297sec
inet6 fd7d:106f:a73e:8d9c:8483:b6ff:feae:3a4c/64 scope global dynamic mngtmpaddr
valid_lft 2591974sec preferred_lft 604774sec
inet6 fe80::8483:b6ff:feae:3a4c/64 scope link
valid_lft forever preferred_lft forever
- lo رابط loopback با ::۱/۱۲۸ است.
- enp0s1 (یا نام رابط شما) ممکن است یک آدرس لینک-محلی (fe80::/64) یا/و یک آدرس محلی منحصر به فرد (fd7d::/64) را نشان دهد. اگر هیچ آدرس IPv6 جهانی (مثلاً ۲۰۰۱:db8::) ظاهر نشد، باید یکی را پیکربندی کنید.
مرحله ۳: پیکربندی آدرس IPv6 #
اوبونتو ۲۴ از Netplan برای پیکربندی شبکه استفاده میکند. فایلهای پیکربندی Netplan در مسیر /etc/netplan/ قرار دارند.
بررسی پیکربندی Netplan موجود #
فایلهای پیکربندی Netplan را فهرست کنید:
ls /etc/netplan/
خروجی۵۰-cloud-init.yaml 01-network-manager-all.yaml
پشتیبانگیری از پیکربندی #
همیشه از پیکربندی موجود نسخه پشتیبان تهیه کنید:
sudo cp /etc/netplan/01-network-manager-all.yaml /etc/netplan/01-network-manager-all-yaml.backup
پیکربندی Netplan را ویرایش کنید #
فایل Netplan را برای ویرایش باز کنید:
sudo nano /etc/netplan/01-network-manager-all.yaml
پیکربندی IPv6 را در رابط مناسب اضافه یا تغییر دهید. در اینجا یک نمونه پیکربندی آورده شده است:
network:
version: 2
renderer: NetworkManager
ethernets:
enp0s1:
dhcp4: no
addresses:
- ۱۹۲.۱۶۸.۲.۱۰۷/۲۴
- ۲۰۰۱:db8:abcd:0012::1/64
routes:
- to: default
via: 192.168.2.1
- to: default
via: "2001:db8:abcd:0012::1"
nameservers:
addresses:
- ۸.۸.۸.۸
- ۲۰۰۱:۴۸۶۰:۴۸۶۰::۸۸۸۸
در اینجا، آدرسی که با ۲۰۰۱ شروع میشود را طوری پیکربندی میکنم که از آدرسهای IPv6 قابل مسیریابی عمومی استفاده کند. ۲۰۰۱:۴۸۶۰:۴۸۶۰::۸۸۸۸ آدرس DNS گوگل است که سرور شما برای ترجمه نام دامنه به آدرسهای IP از آن استفاده میکند و اتصالات خروجی به سایر سرویسهای اینترنتی را تسهیل میکند.
در زیر جزئیات پارامترهای پیکربندی آمده است:
- addresses: آدرس IPv6 استاتیک و زیرشبکه را مشخص میکند.
- nameservers: فهرست سرورهای DNS IPv6 را نشان میدهد.
- فایل را ذخیره کنید (Ctrl+O، Enter، Ctrl+X در nano)
مرحله ۴: اعمال پیکربندی Netplan #
پیکربندی جدید را آزمایش و اعمال کنید:
sudo netplan try
خروجیDo you want to keep these settings?
Press ENTER before the timeout to accept the new configuration
Changes will revert in 88 seconds
برای پذیرش، Enter را فشار دهید. در صورت وجود خطا، Netplan پس از ۱۲۰ ثانیه به حالت اولیه برمیگردد و به شما امکان میدهد پیکربندی را اصلاح کنید.
اگر آزمایش موفقیتآمیز بود، پیکربندی را بهطور دائم اعمال کنید:
sudo netplan apply
مرحله ۵: پیکربندی IPv6 را تأیید کنید #
بررسی کنید که آیا آدرس IPv6 اختصاص داده شده است یا خیر:
ip -6 addr show
خروجیubuntu@ubuntu:~$ ip -6 addr show
۱: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
۲: enp0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
inet6 2001:db8:abcd:12::1/64 scope global
valid_lft forever preferred_lft forever
جدول مسیریابی را بررسی کنید:
ip -6 route
خروجی۲۰۰۱:db8:abcd:12::/64 dev enp0s1 proto kernel metric 256 pref medium
مرحله ۶: تست اتصال IPv6 #
اتصال به یک سرور با قابلیت IPv6 (مثلاً سرور DNS گوگل) را آزمایش کنید:
ping6 google.com
خروجیPING google.com(2404:6800:4003:c01::8b) 56 data bytes
۶۴ bytes from 2404:6800:4003:c01::8b: icmp_seq=1 ttl=117 time=12.3 ms
مرحله ۷: پیکربندی فایروال برای IPv6 #
اوبونتو ۲۴ به طور پیشفرض از UFW (فایروال ساده) استفاده میکند. مطمئن شوید که IPv6 در UFW فعال است.
فعال کردن IPv6 در UFW #
پیکربندی UFW را ویرایش کنید:
sudo nano /etc/default/ufw
مطمئن شوید که تنظیمات IPV6 فعال است:
IPV6=yes
فایل را ذخیره کرده و از آن خارج شوید.
پورتهای لازم را مجاز کنید #
برای مثال، اجازه دسترسی به SSH (پورت ۲۲) و HTTP (پورت ۸۰) را بدهید:
sudo ufw allow proto tcp to any port 22
خروجیRules updated
Rules updated (v6)
sudo ufw allow proto tcp to any port 80
خروجیRules updated
Rules updated (v6)
بارگذاری مجدد UFW:
sudo ufw reload
خروجیFirewall reloaded
sudo ufw status
خروجیStatus: active
To Action From
-- ------ ----
۲۲/tcp ALLOW Anywhere
۸۰/tcp ALLOW Anywhere
۲۲/tcp (v6) ALLOW Anywhere (v6)
۸۰/tcp (v6) ALLOW Anywhere (v6)
نتیجه گیری #
هنگام پیکربندی IPv6 روی یک سرور اختصاصی اوبونتو ۲۴، مراحل اصلی تأیید پشتیبانی از یک ویژگی در هسته است. با دنبال کردن این دستورالعملها، سرور شما برای IPv6 آماده میشود و آن را در شبکههای جدید به کار میاندازد. برای حفظ یک پیکربندی سالم، باید مرتباً به مستندات مربوط به پیکربندی IPv6 واقعی در ارائه دهنده خدمات میزبانی خود مراجعه کنید و برای حفظ اتصال تلاش کنید.
