我一直在Java中使用套接字的問題。首先,讓我解釋一下我想用java中的套接字來做什麼。我想通過它通過互聯網連接我的筆記本電腦。我的筆記本電腦有一臺服務器,客戶端必須通過互聯網連接。因爲我有一個路由器來處理我的本地網絡,並且我不想將路由器上的端口引導至我的筆記本電腦,所以我需要遵循「internet-> router-> localNetwork-> mylaptop」的路徑。問題是我找到了一種同時使用Internet IP地址和本地IP地址的方法;然而,它拋出一個異常:"Exception in thread "main" java.net.BindException: Address already in use"
Java套接字綁定錯誤
我嘗試的代碼是:
InetAddress addr = InetAddress.getByName("XXX.XXX.XXX.XXX");
InetAddress local = InetAddress.getByName("YYY.YYY.YYY.YYY");
Socket socket = new Socket(addr, 1111, local, 1111); // The line I have got exception
憑藉領先的路由器端口到我的筆記本電腦,我可以運行類似用途此代碼:
Socket socket = new Socket("XXX.XXX.XXX.XXX", 1111);
* Xs代表互聯網IP地址
* Ys代表本地IP地址
*代碼是屬於代碼客戶端
好的,你已經明白了。但是,如果我不想在路由器上引導端口,該怎麼辦? –