Mój serwer WWW (Ubuntu, Nginx) ma zarówno adres IPv4, jak i IPv6 przypisany przez hosta. Czy w przypadku mojej witryny powinienem powiązać ją tylko z adresem IPv6? Czy to standardowy zalecany sposób? Czy powinienem używać zarówno adresów IPv4, jak i IPv6?
39
Odpowiedzi:
Użyj zarówno IPv4, jak i IPv6
Należy używać zarówno adresów IPv4, jak i IPv6.
Prawie każdy w Internecie ma obecnie adres IPv4 lub ma jakiś translator NAT i może uzyskiwać dostęp do zasobów IPv4.
Jednak w chwili pisania tego tekstu tylko około
0,7%2,3%3,8%6,5%9%12%19%22%26% Internetu jest w stanie obsługiwać IPv6 , ale liczba ta stale rośnie, ponieważ IPv6 zaczyna się pojawiać na całym świecie.W niewielu miejscach dostawcy usług internetowych dostarczają głównie IPv6 lub tylko IPv6 klientom indywidualnym i używają NAT na dużą skalę, NAT64 lub innych podobnych rozwiązań dla łączności IPv4. Oczekuje się, że liczba ta wzrośnie w miarę wyczerpania przestrzeni adresowej IPv4. Ci użytkownicy zazwyczaj będą mieli lepszą wydajność niż IPv6.
Tam, gdzie dostawcy usług internetowych wdrożyli NAT na dużą skalę w celu rozwiązania problemu wyczerpania protokołu IPv4, użytkownicy, którzy utknęli w tej sytuacji, będą cierpieli z powodu mniejszej niezawodności wszystkich swoich połączeń internetowych z powodu ograniczeń związanych z wielkimi bramami NAT. Na przykład strona internetowa może załadować tylko niektóre, ale nie wszystkie zasoby , pozostawiając uszkodzone ikony tam, gdzie powinny być obrazy, brak stylów i skryptów itp. Jest to podobne do wyczerpania limitu połączeń na routerze domowym, ale wpływa na wszystkich użytkowników ISP sporadycznie i pozornie losowo. Jeśli chcesz, aby Twoja witryna była niezawodna dla tych użytkowników, musisz ją obsługiwać za pośrednictwem protokołu IPv6 (a dostawca usług internetowych musi wdrożyć protokół IPv6).
Ponieważ IPv6 jest miejscem, do którego zmierza Internet, włączenie Twojej witryny IPv6 daje Ci teraz przewagę nad konkurencją i pozwala rozwiązać wszelkie problemy na długo, zanim staną się poważne.
Skonfiguruj nginx
Domyślnie w Linuksie i nginx możesz jednocześnie łączyć się z IPv4 i IPv6, zmieniając swoje
listen
dyrektywy na:Lub w przypadku witryn SSL:
źródło
A
rekord dotyczy twojego adresu IPv4, aAAAA
rekord dotyczy twojego adresu IPv6.listen 443;
mieć równieżssl
takich jaklisten [::]:443 ssl;
? Więclisten 443 ssl;
zamiastlisten 443;
.Powiązać oba!
Mieliśmy stronę internetową IIS, której kod zawierał wewnętrzne odniesienie do siebie, używając nazwy DNS, z której korzystał klient. Ten proces zawsze kończy się niepowodzeniem.
Innym objawem było to, że przeglądarka uruchomiona lokalnie na serwerze nie mogła znaleźć strony internetowej po nazwie serwera, tylko po adresie IPv4. Oznacza to,
http://192.168.55.139
że działałoby, alehttp://myhost
zawiodło. Użycieping myhost
domyślnie zwróciłoby adres IPv6 (ping myhost -4
zwróciłoby adres IPv4).Poprawka polegała na otwarciu IIS i zmianie powiązań strony internetowej na powiązanie z adresem IPv6, a także adresem IPv4.
źródło
Winnovative HTML to PDF Converter
.Host
nagłówka z nazwą domeny, która nie należy do Ciebie.