2012-08-12 51 views
0

我正在做我的客戶端開發在Windows和我的服務器端在Linux(我虛擬運行)。我的客戶端套接字設置爲連接到我的linux服務器的inet addr上(使用localhost從來沒有爲我工作,我猜是因爲我虛擬地運行了linux)。Ubuntu inet addr不斷變化

我的主要問題是,我INET地址不斷變化(通常加1),然後我要重建我的客戶端代碼並在將其傳送到這是很煩人的服務器。

反正是有手動設置我的INET地址或防止其變化?

在此先感謝。

+0

localhost不起作用,因爲您有兩個:一個用於Windows,一個用於Linux。兩者對於自己的環境都是本地的。 – 2012-08-13 07:52:19

回答

1

編輯/ etc /網絡/接口和定義是這樣的:

auto eth0 
iface eth0 inet static 
    address 10.0.0.10 
    netmask 255.255.255.0 
    gateway 10.0.0.1 

在這種情況下,假設你的網絡地址是10.0.0.0/24,網關(Windows機器)的Linux機器有10.0.0.1作爲接口。此外,這假定您要設置網絡接口eth0

然後:

$ sudo ifdown eth0 
$ sudo ifup eth0 

第一個是關閉的網絡接口,第二個是使用新的設置重新激活它。

+0

我試過這個,我的網絡停止工作。 – 2012-08-12 19:50:20

+0

我認爲缺少信息。例如,你在哪裏嘗試更改,是否使用虛擬機的橋接或NAT,如果是後者,哪些地址,以及如果使用GUI(網絡管理器)等。 – gpoo 2012-08-12 19:57:14

0

Josh,這是因爲你使用的是DHCP。確保設置一個固定的地址。假設你最簡單的方式運行RH或CentOS是運行:的system-config-網絡TUI

+0

他使用Ubuntu。 – gpoo 2012-08-12 18:49:43

0

看起來你正在使用DHCP並且正在使用橋接,讓您的虛擬機訪問網絡。 最簡單的方法來檢查這是通過比較Windows機器和Ubuntu機器內的IP地址:如果他們在相同的範圍內,你可能在橋接。

這意味着你的虛擬機是來自世界各地的本地子網中訪問。

您可以使用DHCP和DNS服務器(可能是你的路由器),以一個固定的IP地址分配給你的Ubuntu機器。

你也只是它的DNS名稱是指你的Ubuntu機器。