Làm thế nào để các cổng hoạt động với IPv6?


143

Ký hiệu tứ giác rải rác IPv4 thông thường tách địa chỉ khỏi cổng bằng dấu hai chấm, như trong ví dụ này về máy chủ web trên giao diện loopback:

127.0.0.1:80

nhưng với ký hiệu IPv6, địa chỉ có thể chứa dấu hai chấm. Ví dụ: đây là dạng ngắn của địa chỉ loopback:

::1

Các cổng (hoặc chức năng tương đương của chúng) được thể hiện như thế nào trong biểu diễn văn bản của địa chỉ IPv6 / điểm cuối cổng?

Câu trả lời:



33

Các giao thức được sử dụng trong IPv6 giống như các giao thức trong IPv4. Điều duy nhất thay đổi giữa hai phiên bản là sơ đồ địa chỉ, DHCP [DHCPv6] và ICMP [ICMPv6]. Về cơ bản, mọi thứ liên quan đến TCP / UDP, bao gồm phạm vi cổng (0-65535) vẫn không thay đổi.

Chỉnh sửa: Cổng 0 là một cổng dành riêng trong TCP nhưng nó tồn tại. Xem RFC793


6

Chúng giống nhau phải không? Bây giờ tôi đang mất niềm tin vào bản thân nhưng tôi thực sự nghĩ IPv6 chỉ là một sự thay đổi địa chỉ. TCP và UDP vẫn được xử lý vì chúng nằm trong IPv4.


3
Nó không chỉ là một sự thay đổi địa chỉ. Nó được cho là mang lại một số tính năng thú vị (ví dụ như phát đa hướng toàn cầu). Nhưng có, nó là trong suốt cho các lớp trên.
Tarnay Kálmán

4
Đó là "chỉ" một thay đổi địa chỉ. Những gì bạn đang nói là giải quyết :) Nhưng lý do nó khiến mọi người lo lắng là thiết kế mạng coi "địa chỉ" là địa chỉ và "dịch vụ" là số cổng. Nhưng bạn không thể làm bất cứ điều gì trong TCP hoặc UDP mà không có cả hai, vì vậy hầu hết mọi người đang cố gắng để địa chỉ cấp độ ổ cắm hoạt động và không thể hiểu tại sao mọi người cứ tạo ra hoặc thay đổi dấu phân cách: dấu cách, sau đó là dấu chấm, sau đó dấu hai chấm, sau đó dấu hiệu pound? Vì vậy, yeah, tôi có thể thấy IPv6 khiến mọi người lo lắng.
benc

6

Tôi khá chắc chắn rằng các cổng chỉ có một phần trong tcp và udp. Vì vậy, nó hoàn toàn giống nhau ngay cả khi bạn sử dụng giao thức IP mới


1
DCCP và SCTP cũng có các cổng, nhưng các cổng trong SCTP hơi khác một chút do có thêm định danh liên kết.
james woodyatt

6

Wikipedia chỉ ra rằng cú pháp của một địa chỉ IPv6 bao gồm dấu hai chấm và có dạng ngắn ngăn chặn phân tích cú pháp có độ dài cố định và do đó bạn phải phân định phần địa chỉ bằng []. Điều này hoàn toàn tránh được các lỗi phân tích cú pháp lẻ.

(Lấy từ bản chỉnh sửa Peter Wone thực hiện cho câu hỏi ban đầu.)


5

Tôi muốn nói rằng tài liệu tham khảo tốt nhất là Định dạng cho Địa chỉ IPv6 theo nghĩa đen trong URL nơi sử dụng [] được xác định.

Ngoài ra, nếu nó dành cho lập trình và mã, cụ thể là Java, tôi sẽ đề nghị điều này đọc Class cho Inet6Address java / net / URL định nghĩa trong đó việc sử dụng địa chỉ Inet4 trong ý nghĩa Inet6 và các trường hợp khác được trình bày chi tiết. Đối với trường hợp của tôi, địa chỉ được ánh xạ IPv4 Có dạng :: ffff: wxyz, đối với địa chỉ IPv6 được sử dụng để thể hiện địa chỉ IPv4 cũng giải quyết được vấn đề của tôi. Nó cho phép chương trình gốc sử dụng cùng một cấu trúc dữ liệu địa chỉ và cùng một ổ cắm khi giao tiếp với cả hai nút IPv4 và IPv6. Đây là trường hợp trên thiết lập mặc định của Amazon đám mây Linux.

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.