새 서비스를위한 기본 TCP / IP 포트를 어떻게 선택해야합니까?
TCP / IP 포트에서 수신 대기하는 앱을 개발할 때 기본 포트를 선택하는 방법은 무엇입니까? 이 앱이 많은 컴퓨터에 설치되며 포트 충돌을 피하는 것이 바람직하다고 가정합니다.
여기로 가서 설명이있는 항구를 선택 하세요Unassigned
첫 번째 단계 : IANA 목록보기 :
목록의 끝에서 볼 수 있습니다.
"동적 및 / 또는 개인 포트는 49152에서 65535까지의 포트입니다."
그래서 그것이 당신의 더 나은 내기 일 것입니다. 그러나 당신이 하나를 선택하면 당신은 이미 그것을 "소유"한 충분히 인기있는 앱이 있는지 확인하기 위해 항상 그것에 구글을 할 수 있습니다
널리 사용된다는 의미는 향후 다른 사람이 사용하지 못하도록 보호하려는 경우 여기 에서 IANA가 앱을 예약 한 것으로 표시하도록 신청할 수 있습니다.
내가 아는 공식 IANA 포트 번호와 비공식 포트 번호의 가장 포괄적 인 목록은 nmap-services 입니다.
이 목록 (Wikipedia)의 포트를 사용하지 않는 것이 좋습니다.
하나만 고르면 대중이 앱을 사용하면 포트 번호가 인식되어 목록에 포함됩니다.
다른 사람들이 언급했듯이 IANA를 확인하십시오.
그런 다음 로컬 시스템 / etc / services를 확인하여 이미 사용중인 사용자 정의 포트가 있는지 확인하십시오.
그리고 그것을 하드 코딩하지 마십시오. 여러 개발자가 동시에 현지화 된 빌드를 사용할 수 있기를 원하는 다른 이유가 없다면 어떻게 든 구성 가능한지 확인하십시오.
iana 목록을 사용하십시오. 다음에서 csv 파일을 다운로드합니다.
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.csv
등록되지 않은 포트를 검색하려면이 쉘 스크립트를 사용하십시오.
for port in {N..M}; do if ! grep -q $port service-names-port-numbers.csv; then echo $port;fi; done;
N과 M 대신 2 개의 숫자를 넣으세요.
일반적으로 IANA 목록에서 할당되지 않은 제품을 선택하는 것으로 충분하지만 상업적으로 출시 된 제품에 대해 이야기하는 경우 실제로 IANA에 신청하여 하나를 할당 받아야합니다. 이 작업을 수행하는 과정은 간단하지만 느립니다. 마지막으로 신청했을 때 1 년이 걸렸습니다.
이것이 널리 사용될 것으로 예상되는 응용 프로그램을위한 것이라면 다른 사람이 사용하지 않도록 여기 에 번호를 등록 하십시오 .
그렇지 않으면 사용하지 않는 것을 무작위로 선택하십시오.
동적 범위에서 하나를 사용할 때의 문제점은 동적 포트 번호로 사용 중일 수 있기 때문에 사용하지 못할 수 있다는 것입니다.
여기에서 일반적으로 사용되는 포트 번호를 참조 하고 다른 사람의 포트 번호 를 사용하지 않도록 할 수 있습니다.
"대중에게 공개"한다는 것이 자신의 시스템에서 포트를 여는 것을 의미한다면 시스템 관리자와 어떤 포트를 사용하는 것이 편한지에 대해 대화를 나눌 것입니다.
가장 일반적인 데몬 및 서버를 방해하지 않는 기본 포트를 선택하십시오. 또한 포트 번호가 일부 바이러스에 대한 공격 벡터로 나열되지 않았는지 확인하십시오. 일부 회사는 어떤 경우에도 이러한 포트를 차단하는 엄격한 정책을 가지고 있습니다. 마지막으로 포트 번호를 구성 할 수 있는지 확인하십시오.
'Programing' 카테고리의 다른 글
SELECT… FOR UPDATE를 언제 사용합니까? (0) | 2020.08.17 |
---|---|
강력한 이름의 어셈블리를 사용하는 이유는 무엇입니까? (0) | 2020.08.17 |
커밋 메시지는 현재 또는 과거 시제로 작성해야합니까? (0) | 2020.08.17 |
Visual Studio에서 사용할 새 언어를 만드는 방법 (0) | 2020.08.17 |
Eclipse IDE에서 java.io.Console 지원 (0) | 2020.08.17 |