Máy Tính

Trải Nghiệm Thử Thách “Sống” Chỉ Với IPv6: Thực Tế Phũ Phàng Hay Tương Lai Đã Đến?

Thiết bị mạng: Switch, NAS và Router phục vụ cấu hình IPv6 độc lập

Đã một phần tư thế kỷ kể từ khi tiêu chuẩn IPv6 đầu tiên được hoàn thiện dưới dạng RFC 2460, và phải thừa nhận rằng việc áp dụng giao thức này vẫn còn rất chậm chạp. Kho địa chỉ IPv4 có sẵn đã cạn kiệt từ khá lâu, thậm chí đã không còn đủ cho mục đích sử dụng công cộng từ nhiều năm trước. Tuy nhiên, IPv4 vẫn chưa biến mất hoàn toàn, hầu hết các hệ thống đã chuyển sang IPv6 đều đang chạy cấu hình dual-stack, tức là vẫn bao gồm cả IPv4.

Tôi từng tự hỏi liệu mình có thể “sống sót” chỉ với một kết nối IPv6 độc lập hay không. Chắc chắn, đó là một giao thức đã được thiết lập đủ vững chắc để hoạt động ổn định cho việc sử dụng hàng ngày. Nhưng ôi, nếu mọi chuyện đơn giản như vậy thì tốt biết mấy. Những công cụ tôi dựa vào để thực sự làm việc hằng ngày lại không hề muốn hợp tác chút nào. À, có một ngoại lệ – xin được gửi lời khen đặc biệt đến Gmail vì đã hỗ trợ các giao thức internet hiện đại. Ngược lại, những thứ cố gắng khiến tôi xao nhãng trong giờ làm việc lại hoạt động một cách hoàn hảo.

À, điện thoại thông minh của tôi thì hoạt động bình thường với mọi thứ, nhưng đó là nhờ Apple yêu cầu các nhà phát triển App Store phải hỗ trợ mạng IPv6-only, cùng với một loạt “mánh khóe” về mạng ở backend của kết nối di động. Toàn bộ thí nghiệm này dường như đầy trớ trêu, bởi vì nhà cung cấp dịch vụ di động và ISP của tôi đều sử dụng IPv6 ở backend để định tuyến, nhưng việc biến điều đó thành một trải nghiệm internet khả dụng lại là cả một thử thách.

Tắt IPv4 – Nhiệm Vụ Khó Hơn Mong Đợi

IPv4 vẫn hiện diện khắp mọi nơi

Điều khó khăn khi cố gắng tắt một giao thức internet đã được thiết lập hàng thập kỷ là nó, vâng, nó thực sự có mặt ở khắp mọi nơi. Một số phần cứng chỉ có bộ giao thức mạng IPv4, và mặc dù các hệ điều hành lớn đều hỗ trợ IPv6, nhưng không phải mọi chương trình mà chúng dựa vào đều làm được điều đó. Nhưng đó cũng 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ý mọi thứ như thế nào.

Tôi đã lên kế hoạch cơ bản. Tôi sẽ sử dụng một bộ định tuyến OPNsense và xóa địa chỉ IPv4 khỏi giao diện của nó để nó 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 máy tính xách tay 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. Thứ duy nhất tôi sử dụng hàng ngày mà tôi không thể loại bỏ hoàn toàn IPv4 là điện thoại thông minh của mình, bởi vì mặc dù nhà mạng của tôi sử dụng IPv6, họ cũng sử dụng 464XLAT. Điều này sẽ không tốt cho thử nghiệm, vì 464XLAT sử dụng dịch không trạng thái (stateless translation) từ các bộ dịch phía khách hàng (CLAT) và dịch có trạng thái (stateful translation) ở phía nhà cung cấp (PLAT). Thiết kế đó 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 đường truyền không dây đều là IPv6 thuần túy. Lưu lượng IPv4 đi ra được CLAT dịch sang IPv6, truyền 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 internet cũ. Nói cách khác, đường truyền là toàn bộ IPv6, nhưng thiết bị cầm tay vẫn mang một 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 thí nghiệm chỉ IPv6.

Rất may, Verizon FiOS đã triển khai hỗ trợ IPv6 trong khu vực của tôi một thời gian trước; nếu không, toàn bộ việc này đã kết thúc ở đây. Cũng may mắn là họ đã làm chậm quá trình triển khai 2 Gig; nếu không, tôi sẽ không có IPv6 vì nó không được bật ở gói cao nhất trong khu vực của tôi, điều mà tôi cho là vì mục đích khắc phục sự cố. Tôi có một bộ định tuyến T-Mobile 5G chỉ IPv6, nhưng nó cũng phải chịu 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ứ gì đó 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 (một bản ghi DNS A dành riêng cho địa chỉ IPv6) sẽ không tải trên mạng chỉ IPv6.

Thiết bị mạng: Switch, NAS và Router phục vụ cấu hình IPv6 độc lậpThiết bị mạng: Switch, NAS và Router phục vụ cấu hình IPv6 độc lập

Kết Quả Trải Nghiệm IPv6 Độc Lập: Không Như Kỳ Vọng

Khi công việc bị đình trệ, còn giải trí thì không

Sân khấu đã được thiết lập để thử nghiệm “sống” với mạng và kết nối Internet chỉ IPv6. Tôi không thể tắt hoàn toà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 tách biệt một số thiết bị bằng một bộ định tuyến chỉ IPv6 là giải pháp tốt nhất. Tôi đã có một số suy nghĩ 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à thực tế là 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 Gmail và phần còn lại của Google Workplace “cứu nguy” khi chúng 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. Tôi cũng không thể kết nối với Proton VPN, và sau một lúc tìm kiếm, tôi đã tìm ra lý do: trong khi lưu lượng truy cập sẽ đi qua đường hầm dưới dạng IPv6, nó cần IPv4 để thực hiện kết nối ban đầu. Bạn có thể chỉnh sửa hồ sơ 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:

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. Để làm điều này, hãy mở tệp trong trình soạn thảo văn bản và thay đổi dòng:

AllowedIPs = 0.0.0.0/0AllowedIPs = 0.0.0.0/0, ::/0

Lưu tệp và đóng lại khi bạn hoàn tất.

Thời gian dành cho Internet chỉ IPv6 đã dạy 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 làm bất cứ điều gì không ngay lập tức làm tăng giá cổ phiếu. Tôi mong đợi Google và Cloudflare sẽ hoạt động, nhưng những 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 sắm, 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, hỗ trợ AAAA), và Microsoft cần phải ngừng chần chừ. 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 trình duyệt hiển thị kết quả kiểm tra kết nối IPv6Giao diện trình duyệt hiển thị kết quả kiểm tra kết nối IPv6

Cả tắt IPv6 cũng gây vấn đề: Happy Eyeballs

Mặt khác, việc tắt IPv6 trong nhà bạn cũng đi kèm với các 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 sẽ ưu tiên khởi tạo kết nối với IPv6 trước, sau đó chạy đua với IPv4 sau một thời gian ngắn, để độ trễ tải trang được giảm thiểu trong khi vẫn ưu tiên IPv6. Tính năng này có tên gọi thậ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.

Giao diện GitHub, một nền tảng vẫn phụ thuộc nhiều vào IPv4Giao diện GitHub, một nền tảng vẫn phụ thuộc nhiều vào IPv4

Nhà Thông Minh: Một Điểm Sáng Trong Bức Tranh IPv6

Hầu hết thiết bị hoạt động tốt

Phần còn lại của các thiết bị trong nhà tôi thì hoạt động khá hỗn tạp, nhưng hầu hết đều hoạt động ngoại trừ một chiếc camera Wi-Fi từ chối kết nối với bất cứ thứ gì ngoài IPv4. Bất cứ thứ gì hỗ trợ Matter và Thread đều hoạt động tốt, vì Thread sử dụng IPv6 để định địa chỉ, 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 tính năng multicast cho phép gửi lệnh đến nhiều thiết bị cùng lúc, Giao thức Khám phá Láng giềng (Neighbor Discovery Protocol), và mDNS giúp bộ điều khiển của bạn dễ dàng tìm thấy các thiết bị, cùng với việc tích hợp IPsec để mã hóa tích hợp nhằm tăng cường bảo mật. IPsec không phải là yêu cầu của IPv6, nhưng nó được tích hợp cơ bản trong IPv6, khác với việc chỉ là một tiện ích bổ sung trong IPv4.

Ổ cắm thông minh TCP tích hợp Home Assistant, hoạt động tốt với IPv6Ổ cắm thông minh TCP tích hợp Home Assistant, hoạt động tốt với IPv6

Internet và gia đình bạn chưa sẵn sàng chuyển đổi hoàn toàn sang IPv6, nhưng đó là lý do tại sao chúng ta có mạng dual-stack

Ở giai đoạn này, tôi không hoàn toàn chắc chắn rằng IPv6 sẽ thay thế IPv4 trong suốt cuộc đời mình, nhưng tôi nghĩ điều đó không quan trọng. Điều đáng chú ý là một phần lớn lưu lượng di động được phân phối chủ yếu qua IPv6, và các hệ thống có thể hỗ trợ cả IPv4 và IPv6 một cách thực tế, điều này không nên gây ra vấn đề cho 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à trong khi NAT và CGNAT 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.

Related posts

6 Container Docker Thiết Yếu Giúp Tối Ưu & Nâng Tầm Nextcloud Của Bạn

Administrator

Microsoft Edit: Trình Soạn Thảo Văn Bản Đơn Giản Tốt Hơn Cả Notepad?

Administrator

Pocket ngừng hoạt động? 5 giải pháp tự host quản lý bookmark tối ưu thay thế

Administrator