말 그대로 서로다른 2개 이상의 프로세스가 동일한 PORT (예를 들어 10000 포트) 를 Listen 할 수 없나요??
setsockopt() 로 SO_REUSEADDR 주고 bind 했는데... 나중에 뜨는 프로세스는 "Address already in use" 에러를 남기네요..
전에 솔라리스나 HP 에서는 됐던거 같은데.. 지금은 안되네요.. (현재 테스트 장비는 GenToo Linux 입니다.)
시스템에서 같은 포트는 동시에 1개만 열 수 있습니다.
다른 OS 에서 됐다는건 뭔가 착오인것 같습니다.
소켓통신에서 주소는 IP 와 PORT 입니다. 중복된 주소가 동시에 있을순 없겠죠.
SO_REUSEADDR은 사용이 끝났지만 TIME_WAIT 로 남았있는 포트를 바로 사용할 수 있게 해주는거지 현재 사용중인 포트를 중복해서 사용할 수 있도록 해주는건 아닙니다.
부모 자식간에 비밀이 어디있겠습니까.
전 오늘 부터 musik 님의 팬..
언어의 마술사 같으시니라구..ㅋㅋ
아..답변 감사합니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
안됩니다.
시스템에서 같은 포트는 동시에 1개만 열 수 있습니다.
다른 OS 에서 됐다는건 뭔가 착오인것 같습니다.
소켓통신에서 주소는 IP 와 PORT 입니다.
중복된 주소가 동시에 있을순 없겠죠.
SO_REUSEADDR은 사용이 끝났지만 TIME_WAIT 로 남았있는 포트를 바로 사용할 수 있게 해주는거지
현재 사용중인 포트를 중복해서 사용할 수 있도록 해주는건 아닙니다.
포크하시죠
부모 자식간에 비밀이 어디있겠습니까.
아~~ 1점 드릴수밖에 없습니다.
전 오늘 부터 musik 님의 팬..
ㅋㅋㅋㅋㅋ
언어의 마술사 같으시니라구..ㅋㅋ
아..답변 감사합니다.
아..답변 감사합니다.
댓글 달기