Назад | Перейти на главную страницу

Должен ли я использовать на своем веб-сервере только IPv6 или оба IPv4 и IPv6?

Мой веб-сервер (Ubuntu, Nginx) имеет адреса IPv4 и IPv6, назначенные хостом. Могу ли я привязать свой веб-сайт только к IPv6-адресу? Это стандартный рекомендуемый способ? Или я должен использовать оба адреса IPv4 и IPv6?

Используйте как IPv4, так и IPv6

Вы должны использовать адреса IPv4 и IPv6.

Почти каждый в Интернете в настоящее время имеет адрес IPv4 или находится за каким-либо NAT и может получить доступ к ресурсам IPv4.

Однако на момент написания только о 0,7% 2,3% 3,8% 6.5% 9% 12% 19% 22% 26% 32% Интернета поддерживает IPv6, но это число неуклонно растет по мере того, как IPv6 начинает распространяться по всему миру.

В очень немногих местах интернет-провайдеры предоставляют прежде всего IPv6 или только IPv6 для частных клиентов и использование крупномасштабных NAT, NAT64 или других подобных решений для подключения IPv4. Ожидается, что это число будет расти, поскольку адресное пространство IPv4 окончательно исчерпано. Эти пользователи обычно имеют лучшую производительность по IPv6.

Там, где интернет-провайдеры развернули крупномасштабный NAT для решения проблемы исчерпания IPv4, пользователи, застрявшие в этом, будут страдать от снижения надежности всех своих подключений к Интернету из-за ограничений подключения, присущих крупномасштабным шлюзам NAT. Например, веб-страница может только загрузить некоторые, но не все его ресурсы, оставляя неработающие значки там, где должны быть изображения, отсутствующие стили и сценарии и т. д. Это похоже на исчерпание лимита подключения на домашнем маршрутизаторе, но влияет на всех пользователей интернет-провайдера периодически и, по-видимому, случайным образом. Если вы хотите, чтобы ваш сайт был надежным для этих пользователей, вы должны обслуживать его через IPv6 (а интернет-провайдер должен развернуть IPv6).

Поскольку IPv6 - это то место, куда движется Интернет, включение IPv6 на вашем веб-сайте теперь дает вам преимущество в игре и позволяет решать любые проблемы задолго до того, как они станут серьезными.

Настроить nginx

По умолчанию в Linux и nginx вы можете одновременно подключаться как к IPv4, так и к IPv6, изменение твоего listen директивы кому:

listen [::]:80;
listen 80;

Или для сайтов SSL:

listen [::]:443 ssl;
listen 443 ssl;

Привяжите к обоим!

У нас был веб-сайт IIS, код которого делал внутреннюю ссылку на себя, используя DNS-имя, которое использовал клиент. Этот процесс всегда терпел неудачу.

Другим симптомом было то, что браузер, работающий локально на сервере, не мог найти веб-сайт по имени сервера, только по адресу IPv4. То есть, http://192.168.55.139 будет работать, но http://myhost потерпит неудачу. С помощью ping myhost по умолчанию вернет IPv6-адрес (ping myhost -4 вернет IPv4-адрес).

Исправление заключалось в том, чтобы открыть IIS и изменить привязки веб-сайта для привязки к IPv6-адресу, а также к IPv4-адресу.