어떤 사이트에 소켓으로 연결할라고 했는데요.
connect 에서 -1이 리턴되네요...errno를 대조해 보니 connection reset by peer라고 명시되어 있습니다...
브라우저는 잘만 연결 되던데...어째서 제 소켓 프로그램은 connect에서 저런 현상이? --;;
알려 주세요..
setsockopt를 참고해 보라고 하는데 무신 말인지 당췌...알수가 없네요.
브라우저는 한번 커넥션을 맺고...어쩌구저쩌구 후에 바로 커넥션을 종료합니다.
그런 테스트를 원하신다면 telnet ip port 로 해서 테스트 하시면 될껍니다.
그런 경우는 대부분 해당 사이트의 해당 포트에 아무것도 떠있지 않다는 것을 의미합니다.
닫힌 포트에 SYN를 날리면 TCP 는 RST 를 돌려주죠. (방화벽 개입이 없다는 전제하에)
Connection reset by peer 메시지는 peer쪽에 포트는 떠 있는 경우입니다. 포트는 떠 있는데 peer쪽에서 먼저 커넥션을 close 한 경우인거 같은데요
만약 peer쪽 호스트에 해당 포트가 열려있지 않다면 Connection Refused라는 메시지가 뜰 거 같습니다.
질문하신분이 어떻게 커넥션을 맺으려고 시도했는지.. 정말로 connect()에서 에러난것인지 (제 생각엔 connect 후에 read/write 호출시 에러일듯 한데요).. 소스코드를 보여주셔야 알수 있을듯..
텍스트 포맷에 대한 자세한 정보
<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]
소켓 프로그래밍 도중 Connection reset by peer
브라우저는 한번 커넥션을 맺고...어쩌구저쩌구 후에 바로 커넥션을 종료합니다.
그런 테스트를 원하신다면 telnet ip port 로 해서 테스트 하시면 될껍니다.
....
그런 경우는 대부분 해당 사이트의 해당 포트에 아무것도 떠있지 않다는 것을 의미합니다.
닫힌 포트에 SYN를 날리면 TCP 는 RST 를 돌려주죠. (방화벽 개입이 없다는 전제하에)
Connection reset by peer 메시지는
Connection reset by peer 메시지는 peer쪽에 포트는 떠 있는 경우입니다.
포트는 떠 있는데
peer쪽에서 먼저 커넥션을 close 한 경우인거 같은데요
만약 peer쪽 호스트에 해당 포트가 열려있지 않다면
Connection Refused라는 메시지가 뜰 거 같습니다.
질문하신분이 어떻게 커넥션을 맺으려고 시도했는지..
정말로 connect()에서 에러난것인지 (제 생각엔 connect 후에 read/write 호출시 에러일듯 한데요)..
소스코드를 보여주셔야 알수 있을듯..
댓글 달기