티스토리 뷰
방화벽이 열려있는지 안열려 있는지 체크 먼저하고 프로그램을 실행시키면 좋을것 같다.
안 그러면 .. 방화벽이 안 열려있다면 마냥 기다리다가.. 이유도 모른채 왜 안되지.. 할듯
그래서..
방화벽 오픈 체크를 먼저 하고 오픈되었을때는 프로그램을 실행하고 아님 닫혀있다는 메시지를 사용자에게 전송하여 방화벽을 열게끔 하는게 맞겠지..
그래서 방화벽 체크 소스를 한번 짜보면..
package test;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.SocketAddress;
import java.net.UnknownHostException;
public class PortCheck {
boolean portCheck(String host, int port) throws IOException {
boolean rst=false;
Socket sc=null;
try {
SocketAddress endpoint = new InetSocketAddress(host,port);
sc=new Socket();
sc.connect(endpoint,3000);
rst=true;
}catch(Exception e) {
e.printStackTrace();
}finally {
if(sc!=null) {
sc.close();
}
}
return rst;
}
public static void main(String[] args) throws UnknownHostException, IOException {
String host="naver.com";
int port=80;
PortCheck pc=new PortCheck();
boolean isOk = pc.portCheck(host,port);
if(isOk) {
System.out.println("방화벽이 열려있습니다.");
}else {
System.out.println("방화벽이 닫혀있습니다.");
}
}
}
보통 Util 클래스에 가져다 놓고 쓸테니 static 한 방법으로 해보면
package test;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.SocketAddress;
import java.net.UnknownHostException;
public class PortCheck {
public static boolean portCheck(String host, int port) throws IOException {
boolean rst=false;
Socket sc=null;
try {
SocketAddress endpoint = new InetSocketAddress(host,port);
sc=new Socket();
sc.connect(endpoint,3000);
rst=true;
}catch(Exception e) {
e.printStackTrace();
}finally {
if(sc!=null) {
sc.close();
}
}
return rst;
}
public static void main(String[] args) throws UnknownHostException, IOException {
String host="naver.com";
int port=80;
boolean isOk = PortCheck.portCheck(host,port);
if(isOk) {
System.out.println("방화벽이 열려있습니다.");
}else {
System.out.println("방화벽이 닫혀있습니다.");
}
}
}
'자바(Java)' 카테고리의 다른 글
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- xe애드온
- Python
- C언어
- 문자열
- 스크래핑
- EC
- 이클립스
- ocajp
- xe addon
- webix
- proc
- 포인터
- KG
- ocjap
- 플러터
- 자바
- 인포믹스
- php
- 라이믹스 모듈
- 자바 smtp
- JDBC
- C
- MySQL
- 오라클
- XE
- XE3
- 파이썬
- 프로씨
- 파싱
- esql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함