我正在嘗試編寫一個java程序來通信/控制連接到我的LAN中的網絡設備。網絡設備有一個web-GUI並使用TCP,我嘗試使用java套接字與設備建立連接,但設備在建立之後保持重置連接。使用java連接到本地網絡設備
我想使用wireshark/netcat/tcpflow來嗅探Web-GUI和設備之間的數據,但wireshark被數據淹沒,我仍然在netcat/tcpflow上閱讀,找不到一個簡單的教程。
林只是想知道如果任何人都可以照亮我一些燈,讓我滾動。
在此先感謝
繼承人的代碼我試圖
import java.io.*;
import java.net.*;
import java.util.*;
class draft{
public static void main (String args[]) throws Exception{
String data;
String host = new String ("192.168.100.223");
int port = 80;
Socket ndsocket = new Socket(host, port);
DataOutputStream outToServer = new DataOutputStream(ndsocket.getOutputStream());
BufferedReader inFromServer = new BufferedReader (new InputStreamReader(ndsocket.getInputStream()));
從Wireshark的,它使用HTTP 1.1,我應該使用類似這些強制HTTP 1.1的連接?
con_out = connection.getOutputStream();
con_in = connection.getInputStream();
PrintWriter out_writer = new PrintWriter(con_out, false);
out_writer.print("GET/HTTP/1.1\r\n");
out_writer.print("Host: thehost\r\n");
out_writer.print("\r\n");
out_writer.flush();
從tcpflow,我可以看到它發回了HTTP頁面更新,所以我必須以某種方式解析我需要的代碼,但首先需要獲取連接工作。
我沒有時間使用設備(它在我兄弟的房子裏),所以我可能無法按照自己喜歡的頻率測試出建議。
對不起,如果我是一個noob,因爲我沒有經驗寫我自己的程序,感謝再次幫助。
請顯示一些代碼,你如何連接到服務器 – jdevelop 2013-02-20 23:05:35
@jdevelop我不介意的代碼,但這是一個非常毫無意義的問題。它必須是'新的套接字(主機,端口)'或'SocketChannel.open(主機,端口)的一些變化。「你如何連接與連接重置沒有多大關係。 – EJP 2013-02-20 23:21:41
@EJP他可能會使用一些默認使用HTTP 1.0的HttpConnector或類似的東西。並且可能發生連接重置,因爲服務器在此標頭後關閉套接字。 – jdevelop 2013-02-20 23:23:12