Tôi chỉ nên sử dụng IPv6 hoặc cả IPv4 và IPv6 trong máy chủ web của mình?


39

Máy chủ web của tôi (Ubuntu, Nginx) có cả địa chỉ IPv4 và IPv6 được chỉ định bởi máy chủ lưu trữ. Đối với trang web của tôi, tôi có nên liên kết nó với một địa chỉ IPv6 không? Đó có phải là cách tiêu chuẩn được đề nghị? Hoặc, tôi sẽ sử dụng cả địa chỉ IPv4 và IPv6?


13
Bạn đang đặt câu hỏi sai (cho những người sai) - Hãy tự hỏi mình "Tôi có cần truy cập trang này từ máy khách IPv4, máy khách IPv6 hoặc cả hai không?". Câu trả lời cho điều đó cũng là câu trả lời cho địa chỉ máy chủ web của bạn cần lắng nghe.
voretaq7

6
Thông thường, tôi hoàn toàn đồng ý với câu trả lời "lấy thông số kỹ thuật của bạn trước" như thế, nhưng trong trường hợp này, thật kỳ lạ, tôi không; Tôi đồng ý với Michael. "chỉ v6" vẫn còn, đáng buồn thay, không chắc chắn là yêu cầu (mặc dù nếu có, nhận xét này là hoàn toàn sai). Nếu không, thì chúng ta sẽ xuống "stack stack" và "v4 only". Ngay cả khi người dùng của bạn đều nói "chỉ v4" là đúng, tại thời điểm này, điều đó là sai; hỗn hợp là cách để chứng minh trong tương lai, bất kể cộng đồng người dùng hiện tại nói gì.
MadHatter hỗ trợ Monica

@MadHatter Tại thời điểm này, chúng tôi có thể loại bỏ "chỉ v4" một cách an toàn. Các giới hạn vốn có của NAT quy mô lớn làm cho v4 chỉ không thể áp dụng cho nhà điều hành trang web hoặc hoàn toàn có thể là bất kỳ dịch vụ Internet nào khác. Thêm chi tiết trong câu trả lời cập nhật của tôi.
Michael Hampton

@MichaelHampton vẫn đồng ý với bạn.
MadHatter hỗ trợ Monica

Câu trả lời:


56

Sử dụng cả IPv4 và IPv6

Bạn nên sử dụng cả địa chỉ IPv4 và IPv6.

Gần như tất cả mọi người trên Internet hiện có một địa chỉ IPv4 hoặc đứng sau một loại NAT nào đó và có thể truy cập tài nguyên IPv4.

Tuy nhiên, tại thời điểm viết chỉ khoảng 0,7% 2,3% 3,8% 6,5% 9% 12% 19% 22% 26% Internet có khả năng IPv6 , nhưng con số đó đang tăng lên đều đặn khi IPv6 bắt đầu được tung ra trên toàn thế giới.

Ở một số nơi, các ISP đang cung cấp chủ yếu IPv6 hoặc chỉ IPv6 cho khách hàng dân cư và sử dụng các giải pháp NAT, NAT64 quy mô lớn hoặc các giải pháp khác để kết nối IPv4. Con số này dự kiến ​​sẽ tăng lên khi không gian địa chỉ IPv4 cuối cùng đã cạn kiệt. Những người dùng này thường sẽ có hiệu suất tốt hơn so với IPv6.

Khi các ISP đã triển khai NAT quy mô lớn để giải quyết tình trạng cạn kiệt IPv4, người dùng bị mắc kẹt với điều này sẽ bị giảm độ tin cậy của tất cả các kết nối Internet của họ do giới hạn kết nối vốn có trong các cổng NAT quy mô lớn. Chẳng hạn, một trang web chỉ có thể tải một số chứ không phải tất cả tài nguyên của nó , để lại các biểu tượng bị hỏng trong đó hình ảnh nên bị thiếu, kiểu và tập lệnh, v.v. Điều này tương tự như cạn kiệt giới hạn kết nối trên bộ định tuyến gia đình, nhưng ảnh hưởng đến tất cả người dùng ISP không liên tục và dường như ngẫu nhiên. Nếu bạn muốn trang web của mình đáng tin cậy cho những người dùng này, bạn phải phục vụ nó qua IPv6 (và ISP phải triển khai IPv6).

Vì IPv6 là nơi Internet đang hoạt động, việc bật trang web IPv6 của bạn bây giờ giúp bạn vượt lên trước trò chơi và cho phép bạn giải quyết mọi vấn đề từ lâu trước khi chúng trở nên nghiêm trọng.

Cấu hình nginx

Theo mặc định với Linux và nginx, bạn có thể liên kết với cả IPv4 và IPv6 cùng một lúc bằng cách thay đổi các listenchỉ thị của bạn thành:

listen [::]:80;
listen 80;

Hoặc, đối với các trang SSL:

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

Được rồi, cảm ơn ... thêm một câu hỏi nữa
THpub

3
Có, Abản ghi dành cho địa chỉ IPv4 của bạn và AAAAbản ghi dành cho địa chỉ IPv6 của bạn.
Michael Hampton

Hoàn hảo. Cảm ơn rất nhiều về lời giải thích :) Tôi mới biết về công cụ ipv6
THpub

Tôi không quen thuộc với nginx, nhưng nên không phải là listen 443;cũng có sslgiống như listen [::]:443 ssl;? Vì vậy, listen 443 ssl;thay vì listen 443;.
CVn

@aCVn Vâng, nó nên. Cảm ơn đã nắm bắt điều đó. Điều đó sẽ dạy tôi chỉnh sửa mọi thứ trong khi nửa ngủ.
Michael Hampton

3

Ràng buộc cả hai!

Chúng tôi đã có một trang web IIS có mã đã tham chiếu nội bộ đến chính nó, sử dụng tên DNS mà máy khách đã sử dụng. Quá trình này sẽ luôn luôn thất bại.

Một triệu chứng khác là một trình duyệt chạy cục bộ trên máy chủ không thể tìm thấy trang web theo tên của máy chủ, chỉ bằng địa chỉ IPv4. Đó là, http://192.168.55.139sẽ làm việc, nhưng http://myhostsẽ thất bại. ping myhostTheo mặc định, sử dụng sẽ trả về địa chỉ IPv6 ( ping myhost -4sẽ trả về địa chỉ IPv4).

Cách khắc phục là mở IIS và thay đổi Bindings của trang web để liên kết với địa chỉ IPv6, cũng như địa chỉ IPv4.

nhập mô tả hình ảnh ở đây


6
Không cần thiết phải làm xáo trộn các địa chỉ riêng tư. Mặc dù vậy, bạn cũng nên liên kết với địa chỉ IPv6 toàn cầu để trang web của bạn có thể được truy cập bên ngoài thông qua IPv6.
Michael Hampton

Các mã được đề cập là Winnovative HTML to PDF Converter.
Glen Little

2
Có một dịch vụ có thể truy cập cả bên trong và bên ngoài sẽ dễ dàng hơn khi bạn không sử dụng NAT. Và sẽ dễ dàng hơn để tránh NAT, nếu bạn đang sử dụng IPv6. Nhưng kết nối một cách mù quáng với một tên máy chủ được cung cấp bởi một khách hàng nghe có vẻ như là một lỗ hổng thiết kế. Khách hàng hoàn toàn có thể gửi cho bạn một Hosttiêu đề với một tên miền không thuộc về bạn.
kasperd
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.