4
내 UDP 소켓은 포트 53 (DNS)에 bind()
입니다. UDP가 TIME_WAIT
상태입니까, 아니면 UDP 소켓에 SO_REUSEADDR
을 사용하고 있습니까?Linux에서 UDP 소켓이있는 SO_REUSEADDR. 그게 필요 할까?
내 UDP 소켓은 포트 53 (DNS)에 bind()
입니다. UDP가 TIME_WAIT
상태입니까, 아니면 UDP 소켓에 SO_REUSEADDR
을 사용하고 있습니까?Linux에서 UDP 소켓이있는 SO_REUSEADDR. 그게 필요 할까?
UDP에는 연결이 없으므로 TIME_WAIT와 (과) 비슷한 것이 없습니다. SO_REUSEADDR을 사용할 필요가 없습니다.
브로드 캐스트 또는 멀티 캐스트 주소를 수신하는 경우 SO_REUSEPORT를 사용해야 할 수 있으므로 동일한 시스템에 여러 수신기가있는 경우 충돌하지 않습니다. 그러나, 내가 알 수 있듯이, 이것은 Linux에는 존재하지 않습니다.
왜 UDP 소켓을 바인딩합니까? 필요하다면 TCP를 사용해야 할 수도 있습니다. –
@Adrian Cornish UDP 서버가 수신하는 포트를 OS에 알려주려면 어떻게해야합니까? – Barmar
OS의 작업이 아닌가? –