원시 소켓과 함께 사용되는 임시 포트

원시 소켓과 함께 사용되는 임시 포트

인용하다소스 포트를 할당하는 방법, 로컬 포트가 어떻게 결정되는지 알고 있습니다. (=>임의의 무료 임시 포트).

그런데 내 원시 소켓이 할당된 socket(AF_INET, SOCK_RAW, IPPROTO_TCP)포트를 사용하는 이유는 무엇입니까 6?

ss -lnp보여주다:tcp UNCONN 0 0 0.0.0.0:6 0.0.0.0:* users:(("exe",pid=13164,fd=5))

=6IPPROTO_TCP가 에서 정의 되었기 때문에 소켓을 잘못 생성했나요 linux/in.h? 아니면 6가능한 경우 RAW_SOCKETS가 기본적으로 포트를 사용합니까 ?

이것이 중요하다면 Ubuntu 4.15를 사용하고 있습니다.

답변1

@dirkt가 언급했듯이 소켓은 포트에 바인딩되어 있지 않으며 displays프로토콜은 포트(분명히 존재하지 않음) 대신 로컬 IP 뒤에 있습니다.

사용 socket(AF_INET, SOCK_RAW, 123), ss출력??? UNCONN 0 0 0.0.0.0:123 0.0.0.0:* users:(("exe",pid=10039,fd=3))

또한 세 번째 인수로 다른 숫자를 사용하여 테스트한 socket()결과 sslocal port.

관련 정보