TCP 및 UDP 소스 포트를 나타내는 문서는 1024 이상이어야하고 무작위로되어 있어야하는 곳은 어디입니까?


11

소스 포트가 임의적이고 범위가 1024-65535 사이 여야한다는 것을 문서화하는 위치를 찾는 데 어려움을 겪고 있습니다.

어떤 RFC에 문서화되어 있습니까?

편집 :
권한있는 포트에 대한 첫 번째 참조는 RFC2623에 있습니다.
이것은 TCP / IP 구현에 더 의존하고 사실상 표준입니다.

IANA가 포트 번호를 할당하고 있습니다 (RFC1700)


1
FYR-RFC 1700 (STD 2)은 리스너 포트 할당 (서비스가 연결을 수신하는 위치 ) 만 처리합니다 . 연결 서버의 소스 포트 선택을 처리하지 않습니다.
voretaq7

그렇습니다. 그러나 등록 된 포트를 "SHOULD"로 사용하는 것은 다른 것들에 사용해서는 안된다는 것입니다. 내가 언급 한 이유입니다.
Mircea Vutcovici

2
iana.org/assignments/service-names-port-numbers/… 동적 및 / 또는 개인 포트 (49152-65535)에 대해 설명합니다. 따라서 클라이언트는 해당 범위의 포트를 사용해야합니다.
Mircea Vutcovici

답변:


13

RFC 6056- 전송 프로토콜 포트 랜덤 화에 대한 권장 사항 ( "최상의 현재 방법")을 찾고있을 것입니다 .

기술적으로 임시 포트가 1024보다 크거나 임의적 일 필요 는 없습니다 (12 번을 좋아하기 때문에 항상 12 번 포트에서 연결을 시작하는 시스템을 구축 할 수 있음). RFC에 설명되어있는 몇 가지 이유가 있습니다.


임시 포트는> = 49152 여야합니다. 그러나 당신의 대답은 내 질문에 가장 가까운 것입니다.
Mircea Vutcovici

3

RFC 6335는 이 설명됩니다 :

동적 포트 범위 (49152-65535)의 포트는 로컬 및 동적 사용을 위해 별도로 설정되었으며 IANA를 통해 할당 할 수 없습니다. 응용 프로그램 소프트웨어는 어떠한 종류의 할당 없이도 로컬 호스트에서 사용 가능한 동적 포트를 사용할 수 있습니다. 반면, 응용 프로그램 소프트웨어는 동적 포트 범위의 특정 포트 번호가 항상 통신에 항상 사용 가능하다고 가정해서는 안되며, 그 범위의 포트 번호는 서비스 식별자로 사용해서는 안됩니다.

예약 된 포트 :

사용자 포트 범위 (1024-49151)의 포트는 IANA를 통해 할당 할 수 있으며 할당에 성공하면 서비스 식별자로 사용될 수 있습니다.

시스템 포트 범위 (0-1023)의 포트도 IANA를 통해 할당 할 수 있습니다. 시스템 포트 범위는 가장 작고 밀도가 높기 때문에 새 할당에 대한 요구 사항은 사용자 포트 범위에 대한 요구 사항보다 더 엄격하며 "IETF 검토"또는 "IESG 승인"절차 RFC5226에 의해서만 부여 됩니다.

소개는 혼란을 설명합니다.

수년 동안 TCP (Transmission Control Protocol) [RFC0793] 및 UDP (User Datagram Protocol) [RFC0768]에 사용할 새 서비스 이름 및 포트 번호 값을 지정하는
지침 이 명확 하지 않았습니다 .

Windows XP는 RFC6335를 따르지 않지만 Solaris 10은 따르지 않습니다.


1

voretaq7 이 이것 과 함께 말 했지만 pedantic이기 때문에 기술적 요구 사항이 있습니다. 역사적으로 * nix의 데몬 / 서버는 포트 <1024 (시스템 포트 호출)에서 실행되므로 충돌을 피하기 위해 소스 포트 (사용자 포트)는> 1024 (또는 정확한 1024-49151)입니다. 그러나 항상 그런 것은 아닙니다. 당신이 말한 것처럼 그것은 구현에 달려 있습니다. 위의 모든 링크에서 RFC 목록을 제공하지만 아마도 가장 구체적인 것은 IANA의 "전문가 검토"프로세스를 설명하는 RFC5226 일 것입니다 .


일부 NFS 서버 구현에서는 NFS 클라이언트가 포트 <1024를 사용해야합니다. 기술적으로 모든 포트를 소스 포트로 사용하는 것이 항상 가능했습니다. 내가 요구하는 것은 1024 이상의 포트에 사용하도록 요청하는 문서입니다. 실제로 클라이언트는 49152 이상의 포트를 사용해야합니다.
Mircea Vutcovici

1
그것은 내 대답을 반증하지 않습니다. unix.stackexchange.com/questions/16564/…를 참조하십시오 . IANA 과제 및 RFC 6056이 왜 귀하에게 적용되지 않습니까? 항상 추천을 줄 수 있다면 아무도 포트 80을 소스 포트로 사용하는 웹 브라우저 구현을 막을 수 없습니다.
사용자

1
어떤이없는, 동등하게 현학적 인 요구는 그 특권 또는 소스 포트로 사용할 수 없습니다 포트 (특권 NFS 포트 미르의 반례 참조) "잘 알려진"- 그것은 일반적으로 당신이 언급 한 이유로하지,하지만 그것도 아니다 금지됨. TCP 및 UDP RFC에 따른 AFAIK 미사용 포트는 소스 포트로서 공정한 게임입니다. 우리는 그 위에 구성하는 규칙은 :-) 우리의 편의를위한
voretaq7
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.