Đã tròn một phần tư thế kỷ kể từ khi chuẩn IPv6 đầu tiên được hoàn thiện dưới dạng RFC 2460, nhưng tốc độ áp dụng giao thức này vẫn diễn ra chậm chạp một cách đáng ngạc nhiên. Nguồn địa chỉ IPv4 đã cạn kiệt từ lâu, thậm chí là từ nhiều năm trước đã không còn đủ cho mục đích công cộng. Tuy nhiên, IPv4 vẫn chưa biến mất, với hầu hết các hệ thống đã áp dụng IPv6 đều chạy cấu hình “dual-stack” (song song cả IPv4 và IPv6). Với cương vị một chuyên gia công nghệ, tôi tự hỏi liệu chúng ta có thể thực sự “sống sót” chỉ với IPv6 trong môi trường Internet hiện tại hay không. Chắc chắn, đây là một giao thức đủ lâu đời để có thể hoạt động ổn định trong sử dụng hàng ngày. Nhưng thực tế lại không hề đơn giản như vậy. Những công cụ tôi dựa vào hàng ngày để làm việc lại không hề hợp tác chút nào. Dù vậy, vẫn có một ngoại lệ đáng khen ngợi: Gmail đã hỗ trợ các giao thức Internet hiện đại một cách xuất sắc. Ngược lại, tất cả những ứng dụng giải trí, thứ vốn có thể gây xao nhãng trong giờ làm việc, lại hoạt động trơn tru đến lạ. Đáng chú ý, chiếc điện thoại thông minh của tôi lại hoạt động hoàn hảo cho mọi thứ, nhưng điều này phần lớn là nhờ chính sách của Apple yêu cầu các nhà phát triển App Store hỗ trợ mạng chỉ IPv6 và các thủ thuật mạng phức tạp trong kết nối di động. Toàn bộ thử nghiệm này mang một sự trớ trêu sâu sắc, khi cả nhà cung cấp dịch vụ di động và ISP của tôi đều sử dụng IPv6 ở phần lõi để định tuyến, nhưng để chuyển đổi điều đó thành một trải nghiệm Internet thực sự hữu ích lại là một thách thức lớn.
Nỗ Lực Tắt IPv4: Khó Hơn Tưởng
Chuẩn bị hạ tầng: Thử thách trong việc loại bỏ IPv4
Việc cố gắng tắt một giao thức Internet đã tồn tại hàng thập kỷ thật sự là một công việc khó khăn, bởi vì nó đã “phủ sóng” khắp mọi nơi. Một số phần cứng chỉ có ngăn xếp mạng IPv4, và mặc dù các hệ điều hành lớn đều hỗ trợ IPv6, không phải mọi chương trình mà chúng dựa vào đều như vậy. Nhưng đây chính là một phần mục đích của thử nghiệm này: Thế giới công nghệ đã có hàng thập kỷ để thích nghi với IPv6, và tôi muốn xem họ đã xử lý vấn đề này như thế nào.
Tôi đã xây dựng các phần cơ bản của một kế hoạch. Tôi sử dụng một router OPNsense và xóa địa chỉ IPv4 khỏi giao diện của nó để router chỉ có thể sử dụng IPv6. Tôi cũng xóa IPv4 khỏi bộ điều hợp mạng trên chiếc laptop mà tôi sẽ sử dụng ngày hôm đó, để nó chỉ có định tuyến IPv6 và đã xác nhận rằng nó hoạt động. Điều duy nhất tôi không thể loại bỏ hoàn toàn IPv4 khỏi đó là điện thoại thông minh, bởi vì nhà mạng của tôi, mặc dù sử dụng IPv6, nhưng cũng dùng 464XLAT. Điều này không phù hợp cho thử nghiệm của chúng ta, vì 464XLAT sử dụng dịch không trạng thái từ các bộ dịch phía khách hàng (CLAT) và dịch có trạng thái ở phía nhà cung cấp (PLAT). Thiết kế này giữ một ngăn xếp phần mềm IPv4 trên điện thoại cho các ứng dụng cũ, nhưng mọi gói tin trên liên kết không dây đều là IPv6 thuần túy. Lưu lượng IPv4 đi ra được CLAT dịch sang IPv6, đi qua mạng dưới dạng IPv6, và được NAT64 của nhà mạng chuyển đổi ngược lại thành IPv4 ngay trước khi nó đến Internet cũ. Nói cách khác, đường truyền là IPv6, nhưng thiết bị vẫn mang ngăn xếp IPv4, vì vậy việc sử dụng nó sẽ làm mất đi mục đích của một thử nghiệm chỉ dùng IPv6.
Rất may, Verizon FiOS đã triển khai hỗ trợ IPv6 cho khu vực của tôi một thời gian trước; nếu không, toàn bộ thử nghiệm này đã phải dừng lại ở đây. Cũng may mắn nhỏ là họ đã làm chậm việc triển khai gói 2 Gig; nếu không, tôi sẽ không có IPv6 vì nó không được kích hoạt trên gói cao nhất ở khu vực của tôi, điều mà tôi cho rằng là để phục vụ mục đích khắc phục sự cố. Tôi có một router T-Mobile 5G chỉ IPv6, nhưng nó cũng phải chịu sự dịch 464XLAT như điện thoại di động của tôi và sẽ làm hỏng mọi thứ vì tôi không thể kiểm soát việc dịch sang IPv4. Nói cách khác, mọi thứ sẽ hoạt động như bình thường. Ngay cả sau tất cả những điều đó, bạn sẽ cần một thứ như DNS64 để phân giải các tên máy chủ chỉ IPv4. Bất kỳ dịch vụ nào không có bản ghi DNS AAAA (bản ghi DNS A đặc biệt dành cho địa chỉ IPv6) sẽ không tải được trên mạng chỉ IPv6.
Giao diện trình duyệt kiểm tra kết nối IPv6 sau khi tắt IPv4
Thực Tế Phũ Phàng: Công Việc Ngừng Trệ, Giải Trí Lên Ngôi
Khi công cụ làm việc “đình công” và các ông lớn “ngó lơ”
Sân khấu đã được thiết lập để thử nghiệm “sống sót” với một mạng chỉ IPv6 và kết nối Internet. Tôi không thể tắt hoàn toàn mọi thứ liên quan đến IPv4 vì tôi không phải là người duy nhất sử dụng Internet trong nhà, nhưng việc phân tách một số thiết bị bằng router chỉ IPv6 là lựa chọn tốt nhất tiếp theo. Tôi đã có một số dự đoán về những gì có thể hoạt động và những gì không, nhưng tôi không chắc liệu mình có thể hoàn thành công việc hay không, chứ đừng nói đến quy trình làm việc thông thường của mình.
Và đúng như vậy, tôi đã không thể. CMS của XDA không tải được trên kết nối chỉ IPv6. Slack cũng vậy, nhưng tôi đã được giải cứu nhờ Gmail, và các ứng dụng còn lại của Google Workspace kết nối một cách vui vẻ. Tôi không thể tải bất kỳ công việc nào lên trang web, nhưng ít nhất tôi có thể viết trong Google Docs để sử dụng sau này. Tôi cũng không thể kết nối với Proton VPN, và sau một hồi tìm kiếm, tôi đã tìm ra lý do: Mặc dù lưu lượng sẽ đi qua đường hầm dưới dạng IPv6, nhưng nó cần IPv4 để thiết lập kết nối ban đầu. Bạn có thể chỉnh sửa cấu hình WireGuard mà ProtonVPN sử dụng để cho phép điều đó, nhưng theo mặc định, nó sẽ không hoạt động ngay lập tức. Theo tài liệu của Proton VPN:
Lưu ý rằng theo mặc định, các tệp cấu hình WireGuard của chúng tôi hiện không hỗ trợ kết nối IPv6. Nếu bạn có kết nối IPv6, bạn sẽ cần chỉnh sửa tệp cấu hình .conf đã tải xuống để đảm bảo rằng các kết nối IPv6 được định tuyến qua đường hầm VPN. Để thực hiện việc này, hãy mở tệp trong một trình soạn thảo văn bản và thay đổi dòng:
AllowedIPs = 0.0.0.0/0
→AllowedIPs = 0.0.0.0/0, ::/0
Lưu tệp và đóng lại khi bạn hoàn tất.
Việc dành thời gian trên Internet chỉ IPv6 đã dạy cho tôi một vài điều, nhưng nó cũng làm nổi bật sự từ chối hoàn toàn của thế giới kinh doanh trong việc thực hiện bất kỳ điều gì không làm tăng ngay lập tức giá trị cổ phiếu. Tôi mong đợi Google và Cloudflare sẽ hoạt động, nhưng các gã khổng lồ công nghệ khác đã làm tôi ngạc nhiên. Amazon hoạt động nếu tôi muốn mua đồ, nhưng AWS lại từ chối hợp tác trong nhiều tác vụ. Hóa ra, có một danh sách khá dài các dịch vụ AWS không hỗ trợ truy cập chỉ IPv6. GitHub hoàn toàn chạy trên IPv4 (ngoại trừ GitHub Pages, có hỗ trợ AAAA), và Microsoft cần phải nhanh chóng hơn. Nhưng không chỉ có họ; khoảng một nửa số trang web hoặc dịch vụ tôi thử đều không hoạt động nếu không có IPv4.
Giao diện trang GitHub của Ryujinx, minh họa các dịch vụ chưa hỗ trợ đầy đủ IPv6
Mặt khác, việc tắt IPv6 trong nhà cũng gây ra vấn đề. Microsoft có thể chưa di chuyển GitHub sang IPv6 sớm, nhưng quan điểm của họ về IPv6 trên Windows là nó là một phần thiết yếu của hệ điều hành, và việc tắt nó trong bất kỳ phiên bản nào kể từ Windows 7 sẽ khiến một số thành phần ngừng hoạt động. Duyệt web trên bất kỳ hệ thống nào cũng sẽ ưu tiên khởi tạo kết nối với IPv6 trước, sau đó đồng thời sử dụng IPv4 sau một thời gian ngắn để giảm thiểu độ trễ tải trang trong khi vẫn ưu tiên IPv6. Tính năng này được đặt tên rất thú vị là Happy Eyeballs, và về cơ bản có nghĩa là bạn sử dụng cả hai giao thức song song cho một yêu cầu.
Nhà Thông Minh và IPv6: Một Điểm Sáng Bất Ngờ
Phần còn lại của các thiết bị của tôi khá hỗn tạp, nhưng hầu hết đều hoạt động ngoại trừ một camera Wi-Fi từ chối kết nối với bất cứ thứ gì ngoài IPv4. Bất cứ thiết bị nào hỗ trợ Matter và Thread đều hoạt động tốt, vì Thread sử dụng IPv6 cho địa chỉ hóa, và không có vấn đề gì với việc điều khiển cục bộ. Việc điều khiển thiết bị nhà thông minh tốt hơn nhiều trên IPv6, với multicast cho phép gửi lệnh đến nhiều thiết bị cùng lúc, Giao thức Khám phá Hàng xóm (Neighbor Discovery Protocol) và mDNS giúp bộ điều khiển dễ dàng tìm thấy thiết bị của bạn, và việc tích hợp IPsec để mã hóa sẵn có giúp tăng cường bảo mật. IPsec không phải là yêu cầu của IPv6, nhưng về cơ bản được tích hợp vào IPv6 chứ không chỉ là một tiện ích bổ sung như trong IPv4.
Kết Luận: Tương Lai Dual-Stack và Những Bước Tiến Đáng Kể
Ở giai đoạn này, tôi không hoàn toàn chắc chắn rằng IPv6 sẽ thay thế hoàn toàn IPv4 trong cuộc đời tôi, nhưng tôi nghĩ điều đó không còn quá quan trọng. Điều đáng chú ý là một phần lớn lưu lượng truy cập di động được truyền tải chủ yếu qua IPv6, và các hệ thống thực tế có thể hỗ trợ cả IPv4 và IPv6, điều này không ảnh hưởng đến người dùng cuối. Các vấn đề với việc dịch giữa hai giao thức phần lớn đã được giải quyết, và mặc dù NAT và CGNAT chỉ là những “miếng băng bó” cho vấn đề không gian địa chỉ trong IPv4, chúng ta đang tiến gần đến điểm bùng phát mà ở cấp độ nhà mạng, mọi thứ có thể được chuyển sang IPv6, và những phiền toái của double-NAT có thể biến mất.
Bạn nghĩ sao về tương lai của IPv6 và khả năng loại bỏ hoàn toàn IPv4? Hãy chia sẻ ý kiến của bạn trong phần bình luận bên dưới!