Мій веб-сервер (Ubuntu, Nginx) має адреси IPv4 та IPv6, призначені хостом. Чи потрібно прив’язати його до свого веб-сайту лише до адреси IPv6? Це стандартний рекомендований спосіб? Або я повинен використовувати як IPv4, так і IPv6 адреси?
Мій веб-сервер (Ubuntu, Nginx) має адреси IPv4 та IPv6, призначені хостом. Чи потрібно прив’язати його до свого веб-сайту лише до адреси IPv6? Це стандартний рекомендований спосіб? Або я повинен використовувати як IPv4, так і IPv6 адреси?
Відповіді:
Ви повинні використовувати як IPv4, так і IPv6 адреси.
Майже кожен в Інтернеті наразі має адресу IPv4 або позаду якоїсь NAT і може отримати доступ до ресурсів IPv4.
Однак на момент написання лише близько 0,7% 2,3% 3,8% 6,5% 9% 12% 19% 22% 26% Інтернету здатні підтримувати IPv6 , але це число постійно зростає, коли IPv6 починає розгортатися у всьому світі.
В небагатьох місцях Інтернет-провайдери надають головним чином IPv6 або лише IPv6 приватним клієнтам та використовують широкомасштабні NAT, NAT64 або інші подібні рішення для підключення IPv4. Очікується, що ця кількість зросте, коли остаточно вичерпано адресний простір IPv4. Ці користувачі, як правило, мають кращу продуктивність порівняно з IPv6.
Там, де провайдери розгорнули широкомасштабний NAT для вирішення вичерпання IPv4, користувачі, що затримуються при цьому, будуть страждати від зниженої надійності всіх своїх інтернет-з'єднань через обмеження підключення, властиві широкомасштабним NAT-шлюзам. Наприклад, веб-сторінка може завантажувати лише деякі, але не всі її ресурси , залишаючи зламані піктограми там, де мають бути зображення, відсутні стилі та сценарії тощо. Це схоже на обмеження вичерпання з'єднання на домашньому маршрутизаторі, але впливає на всіх користувачів ISP з перервами і, здавалося б, випадковим чином. Якщо ви хочете, щоб ваш сайт був надійним для цих користувачів, ви повинні обслуговувати його через IPv6 (а провайдер повинен мати розгорнутий IPv6).
Оскільки IPv6 - це куди йде Інтернет, включення вашого веб-сайту IPv6 тепер випереджає гру та дозволяє вирішувати будь-які проблеми задовго до того, як вони стануть серйозними.
За замовчуванням з Linux та nginx ви можете одночасно прив’язатись до IPv4 та IPv6, змінивши свої listenдирективи на:
listen [::]:80;
listen 80;
Або для SSL-сайтів:
listen [::]:443 ssl;
listen 443 ssl;
Aзапис призначений для вашої IPv4-адреси, а AAAAзапис - для вашої IPv6-адреси.
listen 443;також бути таким, sslяк listen [::]:443 ssl;? Тож listen 443 ssl;замість listen 443;.
Прив’яжись до обох!
У нас був веб-сайт IIS, код якого внутрішньо посилався на себе, використовуючи ім'я DNS, яке використовував клієнт. Цей процес завжди був би невдалим.
Ще одним симптомом було те, що браузер, який працює локально на сервері, не міг знайти веб-сайт за іменем сервера, лише за IPv4 адресою. Тобто, http://192.168.55.139працювало б, але http://myhostпровалилося б. Використання ping myhostза замовчуванням поверне IPv6 адресу ( ping myhost -4поверне IPv4 адресу).
Виправлення полягало в тому, щоб відкрити IIS та змінити Прив'язки веб-сайту, щоб прив'язати до IPv6-адреси, а також IPv4-адреси.

Winnovative HTML to PDF Converter.
Hostзаголовок з доменним іменем, яке не належить вам.