VMware中有三個Linux機器分别是crxy99(192.168.1.99),crxy100(192.168.1.100),crxy101(192.168.1.101),crxy101是通過crxy100克隆複制出來的.
通過SecureCRT或者XShell遠端SSH登入到這三台機器.
但是crxy100和crxy101總是掉線,但是有時候相當長一些時間是可以正常連接配接的.
XShell提示如下:
經過一番調查發現:crxy100和crxy101的網卡UUID在/etc/sysconfig/network-scripts/ifcfg-eth0檔案中對應的是一樣的.(最終調查發現其實和這個沒有關系....)
上網調查發現出現這個問題(提示Connection closed by foreign host)的情況的原因有如下:
解決方案是:
sudo vim /etc/ssh/sshd_config
添加兩行:
ClientAliveInterval 60
ClientAliveCountMax 3
然後
sudo /etc/init.d/sshd restart
我以第二種方式進行處理,但是仍不解決問題.
調查才發現這個原因是因為IP位址沖突造成的.
我給crxy100和crxy101設定的是靜态IP,而IP位址是192.168.1.100和192.168.1.101 (我所在的網絡環境是用的無線路由,屋裡的鄰居都連接配接這個路由器.)
先看一張無線路由器的設定界面:(不同的路由器設定界面不同,但是DHCP服務設定大同小異.)
關于DHCP(Dynamic Host Configuration Protocol,動态主機配置協定)是一個區域網路的網絡協定,使用UDP協定工作, 主要有兩個用途:給内部網絡或網絡服務供應商自動配置設定IP位址.
頁面中的DHCP的設定項中有兩個設定:①租約 ②起始IP和終止IP
預設是從2至254自動配置設定,1一般是預設給路由器使用,255是保留位址,不能配置設定的,192.168.1.0是網絡号,192.168.1.1是路由器位址(登陸這個可以針對路由器設定).192.168.1.255是廣播位址.這幾個位址是不會動态配置設定的.
至于随機配置設定還是順序配置設定,從檢視到的實際記錄來看,是順序配置設定的,即從低到高一個一個配置設定,先到先得,配置設定後把IP跟MAC位址關聯,下次配置設定則按關聯來配置設定,一般情況是這樣,隻能是大概,具體卻又不是每一次都絕對這樣配置設定.
但是動态配置設定的IP一般是從100(192.168.1.100)開始的.
是以問題就在這裡.屋裡的人都使用這個路由器,有很多的裝置,而且這些裝置是從192.168.1.100開始配置設定的.而我設定的Linux虛拟機的IP位址也是這個.
這樣就造成了IP位址沖突的問題. 這樣就解釋了XShell遠端連接配接Linux經常會出現斷開,并且提示"Connection closed by foreign host"的原因.
路由器中DHCP服務的租借周期是IP位址的租用時間,這個時間一到必須釋放,然後重新租用。
DHCP服務的租用過程是這樣的:電腦等用戶端發送DHCP請求資訊,DHCP伺服器相應用戶端的請求,最後DHCP用戶端确認。
在租用周期過一半的時候用戶端必須重新發出租用原來的IP位址請求,如果可以就繼續使用原來的IP位址,否則在期滿後必須放棄該IP位址。
寬帶路由器的DHCP租用周期最小是1分鐘,最大是2880分鐘(兩天),預設值為120分鐘。
是以在屋内另外一台裝置(占用1.100)租約期間内隻要它連接配接到了該無線區域網路中就永遠占用同一個IP192.168.1.100(這個IP位址的占用是和裝置的連入區域網路的順序是沒有必然的關系的)
除非屋内的這台裝置沒有連接配接到該無線區域網路中,我的Linux(1.100)才能正常的通過XShell遠端連接配接 .
隻有啟用DHCP服務才會涉及到“位址租期”。因為DHCP為客戶機配置設定ip位址是随機而且有期限的,期限到了就會收回再重新配置設定一個新的給你,這個時間就是“位址租期”了。内部通過路由器上網,計算機不算多,是以ip位址不緊張,租期可以相對設定的長一些.
解決這個問題最好的方法就是我要修改自己Linux系統的靜态IP位址. 在靜态設定IP位址之前最好要ping一下該IP位址是否被占用!
本文轉自SummerChill部落格園部落格,原文連結:http://www.cnblogs.com/DreamDrive/p/5494971.html,如需轉載請自行聯系原作者