윈도7 기반 서버 컴퓨터와 소켓 프로그래밍이 안될 때

공대생의 팁 2014. 11. 1. 23:36

 프로그래밍 언어로 소켓 프로그래밍을 하시는 분들이라면 보통 C의 경우 리눅스 서버와의 통신, Java의 경우 안드로이드 통신을 하시는 분들이 많으시리라 생각합니다.


 그런데 종종 Windows 기반의 컴퓨터를 서버로 하여 소켓 프로그래밍을 시도하려 하면 알 수 없는 이유로 통신이 안되거나 연결이 거부되는 경우가 발생하는 것을 보실 수 있습니다. 이는 컴퓨터의 방화벽 설정으로 인해 외부의 접속을 제한하기 때문인 경우가 많습니다.


 그렇다면 어떻게 하면 윈도 기반의 PC와 소켓 프로그래밍을 할 수 있는지 알아보도록 하겠습니다.


※본 포스팅은 Windows7 기반의 PC를 기준으로 작성되었습니다.


1. 시작메뉴를 선택하신 후 '방화벽'을 검색하시면 아래와 같은 화면을 보실 수 있습니다.

'고급 보안이 포함된 Windows 방화벽'을 선택합니다.



2. 창이 열린 것을 확인하시면 왼쪽 메뉴에서 '인바운드 규칙'을 선택하면 해당 컴퓨터에 접속할 수 있도록 허용된 프로그램들의 명단을 확인하실 수 있습니다.



3. 오른쪽 부분에서 '인바운드 규칙' -> '새 규칙...'을 실행합니다.



4. 새 인바운드 규칙 마법사 창을 확인하시면 규칙 종류로 포트(O)를 선택합니다.



5. 자신이 설정하고자 하는 소켓 통신 방식(TCP/UDP)을 선택하신 후 아래 부분에서 포트 사용 여부를 선택합니다.

특정 포트 번호만 사용하고 싶으신 분의 경우 '특정 로컬 포트'를 선택하신 후 포트번호를 입력합니다.



6. 자신의 컴퓨터가 접속한 모드에 따른 통신 여부를 선택합니다.



7. 자신이 확인할 수 있는 이름과 설명을 적으면 통신 설정이 완료됩니다.



이제 자신의 컴퓨터의 IP 주소와 접속 포트번호만 기억하시면 윈도 기반 서버 컴퓨터와 소켓 프로그래밍을 하실 수 있습니다.



300x250