포트는 IPv6에서 어떻게 작동합니까?


143

기존의 IPv4 도트 쿼드 표기법은 루프백 인터페이스의 웹 서버 예에서와 같이 주소와 포트를 콜론으로 구분합니다.

127.0.0.1:80

그러나 IPv6 표기법을 사용하면 주소 자체에 콜론이 포함될 수 있습니다. 예를 들어, 다음은 짧은 형식의 루프백 주소입니다.

::1

IPv6 주소 / 포트 엔드 포인트의 텍스트 표현으로 포트 (또는 기능상 동등한 기능)가 어떻게 표현됩니까?

답변:



33

IPv6에 사용 된 프로토콜은 IPv4의 프로토콜과 동일합니다. 두 버전간에 변경된 유일한 것은 주소 지정 체계 인 DHCP [DHCPv6] 및 ICMP [ICMPv6]입니다. 따라서 기본적으로 포트 범위 (0-65535)를 포함하여 TCP / UDP 관련 사항은 변경되지 않습니다.

편집 : 포트 0은 TCP에서 예약 된 포트이지만 존재합니다. RFC793 참조


6

그들은 동일하지 않습니까? 이제 나는 자신에 대한 자신감을 잃고 있지만 실제로 IPv6은 단지 주소 변경이라고 생각했습니다. TCP 및 UDP는 여전히 IPv4에 따라 처리됩니다.


3
단순한 주소 변경이 아닙니다. 멋진 기능 (예 : 글로벌 멀티 캐스트)을 가져와야합니다. 그러나 그렇습니다. 상층에 투명합니다.
Tarnay Kálmán

4
주소 변경은 "단지"입니다. 사람들이 걱정하고있는 이유는 사람들이 우려 / 혼란을 일으키는 이유는 네트워킹 디자인이 "주소 지정"을 주소로, "서비스"를 포트 번호로 취급하기 때문입니다. 그러나 TCP 또는 UDP에서 둘 다하지 않으면 아무것도 할 수 없으므로 대부분의 사람들은 소켓 수준 주소 지정을 작동하려고 시도하며 사람들이 구분 기호를 구성하거나 변경하는 이유를 이해할 수 없습니다. 콜론, 파운드 기호? 예, IPv6가 사람들을 걱정하게 만드는 것을 볼 수 있습니다.
benc

6

포트는 tcp와 udp의 일부만 가지고 있다고 확신합니다. 새로운 IP 프로토콜을 사용하더라도 정확히 동일합니다.


1
DCCP 및 SCTP에도 포트가 있지만 SCTP의 포트는 추가 연결 식별자로 인해 약간 다릅니다.
james woodyatt

6

위키는 지적 IPv6 주소의 구문 콜론을 포함하고, 고정 된 길이의 분석을 방지하는 간단한 형태를 가지므로, 사용자가 []와 어드레스 부를 구분하는 것이있다. 이것은 홀수 구문 분석 오류를 완전히 피합니다.

( Peter Wone 이 원본 질문을 편집 한 내용 에서 발췌 )


5

가장 좋은 참조는 []의 사용법이 정의 된 URL의 리터럴 IPv6 주소 형식입니다 .

또한 프로그래밍 및 코드, 특히 Java 용 인 경우 Inet6 의미의 Inet4 주소 사용 및 기타 경우에 Inet6Address java / net / URL 정의에 대한 클래스를 읽는 것이 좋습니다 . 필자의 경우 IPv4 매핑 주소 :: ffff : wxyz 형식의 IPv6 주소는 IPv4 주소를 나타내는 데 사용되어 내 문제도 해결되었습니다. 기본 프로그램이 IPv4 및 IPv6 노드와 통신 할 때 동일한 주소 데이터 구조와 동일한 소켓을 사용할 수 있습니다. Amazon 클라우드 Linux 박스 기본 설정의 경우입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.