2011-01-20 2 views
1

작은 그루비 스크립트를 작성하고 싶습니다. Groovy 소켓 프로그래밍 및 IP 주소

노력하고 있습니다 내 스크립트입니다 :

s = new Socket("localhost", 1234); 
s << "RUN" 
s.close() 

을하지만 호스트 이름을 사용하려면 (여기가 '로컬 호스트'입니다), 내가의 IP-ADRESS을 사용하고 싶지만 만약하지 않습니다 나는 그것이 작동하지 않습니다 다음 코드를 작성합니다.

s = new Socket(new Inet4Address("xx.x.xx.xxx"), 1234); 
s << "RUN" 
s.close() 

난 항상 얻을 연결이 예외를 거부 :

겁에 질린 : java.net.ConnectException : 연결이 거부 : 에 연결

s = new Socket("xx.x.xx.xxx", 1234); 
    s << "RUN" 
    s.close() 

나는 또한이 방법을 시도 web3.run (web3.groovy : 1)

이 코드 조각은 실제로 이해가되지 않지만 필요한 것은 전부입니다.

도움 주셔서 감사합니다.

답변

0

이 표기법을 사용해 보셨습니까?

s = new Socket(InetAddress.getByName("xx.x.xx.xxx"), 1234); 
+0

아니요, 아닙니다. 그러나 그것도 작동하지 않습니다. 내 컴퓨터에서 내 방화벽이나 다른 문제가있는 것 같아요. 아직 알지 못했습니다. 'localhost'를 사용하면 모든 것이 잘되고, '127.0.0.1'을 사용하면 제대로 작동하지만 실제 IP 주소를 사용하지 않으면 작동합니다. – LStrike

+1

연결하려는 서버가 실제 IP에 바인딩되어 있는지 확인하십시오. 바운드 주소에서만 수신 대기하도록 많은 서버를 구성 할 수 있습니다. 이를 테스트하려면 간단히 호스트와 포트에 기본 텔넷을 시험해보십시오 – Steven

0

겁에 질린 : java.net.ConnectException : web3.run에 연결 (web3.groovy : 1) 연결이 거부

지정할 보이는을 당신이에 연결하는 호스트 (web3 .groovy : 1)이 (가) 다운되었거나 해당 포트에서 수신 대기하지 않습니까?

해당 a * nix 시스템 인 경우. 시도 :

netstat -na | grep 1234

실제로 해당 포트에서 해당 시스템에서 수신 대기 중인지 확인하십시오.