2012-02-22 46 views
1

我的應用是:ping來自我的計算機的主機IP(LAN)地址。從您ping的位置更改IP地址的位置

InetAddress address = InetAddress.getByName("host IP address"); 
boolean b=(address.isReachable(10000)); 

當我運行的Web應用程序平從我的機器在運行此應用程序,但有可能從我的機器連接的主機的IP地址我的Tomcat Web服務器這樣做,但我會把我的應用程序在另一臺機器的tomact web服務器,這也在我的局域網中。所以ping將從我的機器完成,但另一臺機器將運行此應用程序。

+1

您可以通過創建原始ICMP回顯消息來僞造源IP地址併發送它。但是,這將使答覆轉到「假」來源,而不是轉給您。 – 2012-02-22 07:18:41

+0

這裏不是所有的都是正確的IP地址,我不能使用假IP地址,請其他建議嗎? – harry 2012-02-22 07:24:21

回答

0

你的Tomcat應用程序需要提前瞭解您的機器的IP地址。你可以使用動態DNS服務器,例如no-ip.com

一旦你有一種方法可靠地從你的服務器應用程序中知道你的機器IP,你需要編寫一個小應用程序在你的機器上運行,接受來自服務器的請求並實際執行ping並返回結果。

如果你在寫這個.NET應用程序,那麼你可以在本地機器上使用配置爲SOAP端點的WCF服務,並有確實的ping和返回平輸出作爲字符串的方法。