1
我想只執行一個客戶端的實例,但不包括端口號以外的其他參數,並讓程序找到偵聽網絡上任何位置的端口的服務器。有沒有辦法讓java聊天客戶端程序動態查找主機服務器?
我想只執行一個客戶端的實例,但不包括端口號以外的其他參數,並讓程序找到偵聽網絡上任何位置的端口的服務器。有沒有辦法讓java聊天客戶端程序動態查找主機服務器?
您可以使用UDP多播來查找服務器。您可以將UDP數據包發送到端口,並讓服務器使用其IP地址進行響應。 (這實際上是對一個多播地址進行硬編碼),它比硬編碼可以通過DNS查找的主機名好不了多少。
Thanx,Peter。我有代碼來做到這一點...... //獲取服務器的IP地址 address = InetAddress.getByName(args [0]); socket = new DatagramSocket();但正如你所說,它與硬編碼主機名沒什麼兩樣。另外,我試圖將其保留爲TCP/IP – hagar 2011-03-08 15:49:19
TCP/IP必須具有主機名或IP地址。我建議你使用DNS或一些域名查詢。 – 2011-03-08 16:52:54