Số cổng cao nhất có thể sử dụng là gì?
Số cổng cao nhất có thể sử dụng là gì?
Câu trả lời:
Số cổng là số nguyên 16 bit không dấu, vì vậy 65535.
Số cổng lớn nhất là một dấu ngắn không dấu 2 ^ 16-1: 65535
Cổng đã đăng ký là một cổng được Tổng công ty Internet gán cho Tên và số được gán (ICANN) cho một mục đích sử dụng nhất định. Mỗi cổng đã đăng ký nằm trong phạm vi 1024 FPV49151.
Kể từ ngày 21 tháng 3 năm 2001, cơ quan đăng ký là ICANN; trước đó là IANA.
Các cổng có số lượng thấp hơn các cổng đã đăng ký được gọi là cổng nổi tiếng; cổng có số lượng lớn hơn số cổng đã đăng ký được gọi là cổng động và / hoặc cổng riêng.
Theo tôi hiểu, bạn chỉ nên sử dụng tối đa 49151, vì từ 49152 đến 65535 được dành riêng cho các cổng Ephemeral
$ cat /proc/sys/net/ipv4/ip_local_port_range
kết quả đầu ra 32768 61000
. Về việc một người nên hay không nên sử dụng một cổng trong phạm vi cổng phù du của hệ thống, tôi nghi ngờ nhất là nếu không phải tất cả các hệ điều hành mạng hiện đại sẽ bỏ qua một cổng đã được sử dụng.
Chỉ cần theo dõi câu trả lời của smashery . Phạm vi cổng phù du (ít nhất là trên Linux và tôi nghi ngờ các Unice khác) không phải là cố định. Điều này có thể được kiểm soát bằng cách viết vào
/proc/sys/net/ipv4/ip_local_port_range
Hạn chế duy nhất (theo như IANA có liên quan) là các cổng dưới 1024 được chỉ định là cổng nổi tiếng. Các cổng trên miễn phí sử dụng. Thông thường bạn sẽ thấy rằng các cổng dưới 1024 bị hạn chế truy cập siêu người dùng, tôi tin vì chính lý do này.
Theo RFC 793, cổng là int 16 bit không dấu.
Điều này có nghĩa là phạm vi là 0 - 65535.
Tuy nhiên, trong phạm vi đó, các cổng 0 - 1023 thường được dành riêng cho các mục đích cụ thể. Tôi nói chung bởi vì, ngoài cổng 0, thường không có sự thực thi của đặt phòng 0-1023. Việc triển khai TCP / UDP thường không thực thi đặt trước ngoài 0. Bạn có thể, nếu bạn muốn, chạy cổng TLS của máy chủ web trên cổng 80, hoặc 25 hoặc 65535 thay vì 443 tiêu chuẩn. tiêu chuẩn mà máy chủ SMTP lắng nghe trên cổng 25, bạn có thể chạy nó trên 80, 443 hoặc các loại khác.
Hầu hết các triển khai dự trữ 0 cho một mục đích cụ thể - gán cổng ngẫu nhiên. Vì vậy, trong hầu hết các triển khai , nói "nghe trên cổng 0" thực sự có nghĩa là "Tôi không quan tâm tôi sử dụng cổng nào, chỉ cần cung cấp cho tôi một số cổng không được gán ngẫu nhiên để nghe".
Vì vậy, bất kỳ giới hạn nào trong việc sử dụng một cổng trong phạm vi 0-65535, bao gồm 0, phạm vi đặt trước phù du, v.v., là việc triển khai (ví dụ: HĐH / trình điều khiển) , tuy nhiên, tất cả, kể cả 0, đều là các cổng hợp lệ trong RFC 793.
Nó phụ thuộc vào phạm vi bạn đang nói đến, nhưng phạm vi động lên tới 65535 hoặc 2 ^ 16-1 (16 bit).
http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers
Số hợp lệ cho các cổng là: 0 đến 2 ^ 16-1 = 0 đến 65535
Đó là do số cổng có độ dài 16 bit.
Tuy nhiên, các cổng được chia thành:
Các cổng nổi tiếng : 0 đến 1023 (được sử dụng cho các dịch vụ hệ thống, ví dụ HTTP, FTP, SSH, DHCP ...)
Cổng đã đăng ký / người dùng : 1024 đến 49151 (bạn có thể sử dụng nó cho máy chủ của mình, nhưng cẩn thận một số ứng dụng nổi tiếng: như máy chủ hệ thống quản lý cơ sở dữ liệu Microsoft SQL Server (MSSQL) hoặc Máy chủ mạng Apache Derby đã lấy từ phạm vi này, tức là không nên gán cổng MSSQL cho máy chủ của bạn nếu không MSSQL đang chạy thì máy chủ của bạn sẽ chạy nhất có thể sẽ không chạy vì xung đột cổng) Cổng
động / riêng : 49152 đến 65535. (không được sử dụng cho các máy chủ thay vì máy khách, ví dụ như trong dịch vụ NATing)
Trong lập trình, bạn có thể sử dụng bất kỳ số nào từ 0 đến 65535 cho máy chủ của mình, tuy nhiên bạn nên tuân theo các phạm vi được đề cập ở trên, nếu không, một số dịch vụ hệ thống hoặc một số ứng dụng sẽ không chạy do xung đột cổng.
Kiểm tra danh sách hầu hết các cổng tại đây: https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers