Kiểm tra bản ghi DNS AAAA và dịch vụ IPv6 phía sau
Hiểu bản ghi DNS AAAA và kiểm tra IPv6 tách biệt với IPv4. So sánh câu trả lời, phân tích lỗi dual-stack và xác minh dịch vụ phía sau địa chỉ.
Tác giảYiyao
AAAA là bản ghi địa chỉ IPv6
Bản ghi AAAA của DNS ánh xạ một hostname tới địa chỉ IPv6. Tên này cũng có thể có bản ghi A cho IPv4. Việc công bố cả hai hỗ trợ khám phá địa chỉ cho cả hai họ giao thức, nhưng từng đường truyền mạng và cấu hình dịch vụ vẫn phải hoạt động.
Hãy xem một truy vấn thành công là một bước trong quá trình xác thực. Máy khách có thể nhận địa chỉ IPv6 nhưng vẫn không kết nối được vì định tuyến, quy tắc tường lửa, trình lắng nghe trên máy chủ hoặc ứng dụng chưa sẵn sàng cho IPv6. Đừng chỉ nhìn vào đường IPv4 khi chẩn đoán tình huống này.
So sánh các truy vấn tương đương
nslookup -type=A example.com
nslookup -type=AAAA example.com
Lần so sánh đầu tiên hãy dùng cùng hostname và resolver. Để có một quan sát công khai độc lập, hãy mở Open NSLookup rồi so sánh các giá trị trả về. Các giá trị có định dạng địa chỉ khác nhau vì phục vụ các họ giao thức khác nhau. Địa chỉ IPv6 không được tạo bằng cách thêm chữ vào địa chỉ IPv4 và không thể sao chép bản ghi A sang một loại khác.
Trong công cụ tra cứu công khai trên trình duyệt, hãy chọn rõ loại AAAA. Phản hồi AAAA trống có thể chỉ có nghĩa là tên này không có bản ghi địa chỉ IPv6. Hãy kiểm tra trạng thái DNS trước khi gọi đó là NXDOMAIN; thiếu một loại bản ghi và tên không tồn tại là hai kết quả khác nhau.
Giữ rõ ma trận kiểm thử dual-stack
| Tầng | Kiểm tra IPv4 | Kiểm tra IPv6 |
|---|---|---|
| DNS | Phản hồi A cho hostname | Phản hồi AAAA cho cùng hostname |
| Mạng | Tuyến tới đích IPv4 | Kết nối và tuyến IPv6 |
| Truyền tải | Cổng dịch vụ có thể truy cập | Cùng dịch vụ khả dụng qua IPv6 |
| TLS và HTTP | Hostname hợp lệ và phản hồi mong đợi | Cùng danh tính chứng chỉ và nội dung dự kiến |
Hãy dùng môi trường kiểm thử có IPv6 hoạt động trước khi kết luận về một dịch vụ từ xa. Một máy trạm không có tuyến IPv6 không thể xác định liệu đích có hoạt động với người dùng có tuyến này hay không. Hãy ghi lại môi trường máy khách trong mọi lỗi.

Kiểm tra dịch vụ thực tế, không chỉ bản ghi
curl -4 --head --connect-timeout 10 --max-time 20 https://example.com/
curl -6 --head --connect-timeout 10 --max-time 20 https://example.com/
Các ví dụ chỉ đọc này yêu cầu phần header từ một trang web công khai dùng để minh họa. Trong Windows PowerShell, hãy dùng curl.exe nếu curl được phân giải thành một lệnh khác. Lần thử -6 yêu cầu kết nối IPv6 cục bộ; riêng việc lần thử này thất bại không chứng minh website công khai bị hỏng.
Với dịch vụ của bạn, hãy kiểm tra lỗi TLS, trạng thái HTTP và nội dung mong đợi bằng hostname thực tế. HEAD có thể hoạt động khác GET trên một số ứng dụng, vì vậy hãy tiếp tục bằng một yêu cầu trang thông thường được ủy quyền khi kết quả header chưa đủ rõ.
Xử lý sự cố dual-stack
Hãy xem xét một dịch vụ minh họa có bản ghi A trỏ tới một triển khai IPv4 đang hoạt động và bản ghi AAAA trỏ tới một endpoint IPv6 chưa sẵn sàng. Công cụ DNS trả về thành công cả hai bản ghi, trong khi máy khách thử IPv6 gặp timeout. Tra cứu bản ghi thành công, nhưng mức độ sẵn sàng của dịch vụ thì không.
Bước tiếp theo là xác minh với chủ sở hữu dịch vụ về định tuyến IPv6, địa chỉ dự kiến, phạm vi tường lửa, trình lắng nghe và cấu hình ứng dụng. Hãy quyết định hoàn tất triển khai IPv6 hay rút bản ghi không đúng thông qua quy trình thay đổi được phê duyệt. Đừng vô hiệu hóa IPv6 trên thiết bị của mọi khách truy cập để thay thế cho việc sửa dịch vụ.
Kiểm tra thay đổi qua bộ nhớ đệm và khu vực
Hãy so sánh phản hồi authoritative và recursive sau khi cập nhật bản ghi. Lưu lại TTL và thời điểm kiểm thử. Một phản hồi AAAA cũ trong bộ nhớ đệm có thể tiếp tục đưa một số máy khách tới đích trước đó cho đến khi thời gian sống của nó hết.
Hãy giữ lại bản ghi khôi phục và ít nhất kiểm thử môi trường đã gặp lỗi ban đầu. Một truy vấn công khai từ máy chủ Arcvenza cung cấp góc nhìn DNS độc lập; nó không thể chứng nhận kết nối của mạng IPv6 cục bộ của người dùng. Hướng dẫn Internet Protocol giải thích nơi việc khám phá địa chỉ kết thúc và nơi việc truyền gói tin bắt đầu.
Câu hỏi thường gặp và bước tiếp theo
Mọi trang web có cần bản ghi AAAA ngay lập tức không? Hãy công bố bản ghi khi dịch vụ IPv6 dự kiến đã sẵn sàng và được kiểm thử. Bản ghi phải mô tả một đích đang hoạt động.
Một hostname có thể có cả bản ghi A và AAAA không? Có. Hãy dùng hướng dẫn DNS A record cho phần IPv4, sau đó truy vấn và xác thực riêng cả hai đường dịch vụ. Hãy mở Open NSLookup, chọn AAAA và lưu loại phản hồi cùng trạng thái trong biên bản kiểm thử.
Tài liệu kỹ thuật tham khảo
RFC 3596: IPv6 DNS records · Microsoft: nslookup
RFC 3596: Bản ghi DNS cho IPv6 · Microsoft: nslookup
