假設我們在個人計算機上託管並且服務器程序是用Java編寫的。靜態和動態IP地址問題
1.如果我們使用靜態IP地址託管服務器,那麼這是否意味着我們可以更換機器並將其替換爲其他機器,重新啓動機器多次,我們的客戶機仍然可以在系統之後與我們通信回來了? 2.如果我們使用動態IP地址託管服務器,那麼只需重新啓動機器,我們必須告訴每一個客戶端那個新的IP地址是這個IP地址? 3.即使我們不重啓機器,動態IP地址是否會改變?
假設我們在個人計算機上託管並且服務器程序是用Java編寫的。靜態和動態IP地址問題
1.如果我們使用靜態IP地址託管服務器,那麼這是否意味着我們可以更換機器並將其替換爲其他機器,重新啓動機器多次,我們的客戶機仍然可以在系統之後與我們通信回來了? 2.如果我們使用動態IP地址託管服務器,那麼只需重新啓動機器,我們必須告訴每一個客戶端那個新的IP地址是這個IP地址? 3.即使我們不重啓機器,動態IP地址是否會改變?
注意:不是一個非常友好的方式去。
僅僅因爲某些具有「動態」IP地址並不一定表示它每次都會更改。使用DHCP可以每次爲同一個MAC地址分配相同的IP地址。將IP地址硬編碼到機器是一種更好的方法。
另外,你真的不應該有你的客戶使用IP地址來連接。他們應該通過DNS中的名稱查找機器。您可以協調DNS查找到DHCP,因此機器不需要執行任何操作,只需解析主機名即可。但是,正如你的問題所述,如果一臺計算機使用DHCP並且每次都沒有收到相同的IP地址,並且你的客戶端通過IP地址連接,那麼在每個新的分配中,客戶端需要新的IP地址。
機器的IP地址即使不重新啓動也會更新是由DHCP服務器控制的策略。通常,IP地址有更新時間。如果不進行大量處理,DHCP對話期間的客戶端可能會請求相同的IP地址,但是由服務器決定是否提交相同的IP地址。相反,大多數服務器都是,只要DHCP緩存是最新的,配置爲將相同的IP地址分發給給定的MAC地址。這完全是一項政策決定。
然而,在一天結束時,您似乎試圖將客戶端綁定到服務器的IP地址,這不是一個好策略。使用DNS並讓客戶端解析主機名是一個更好的策略。如果我錯誤地推斷你的意圖,我很抱歉。
注意:我已經使用DHCP作爲發出動態IP地址的方式。你可能會使用其他策略,但我認爲這個概念是一樣的。
1:是的,如果服務器有一個靜態的IP客戶端總是能夠在該IP地址上的服務器上進行計數。
2:很可能,是的。在許多網絡中,DHCP服務器會將相同的IP返回給已重啓的機器,但您絕對不應該指望這一點。
3:是 - 動態分配的IP地址有一個「TTL」 - 生存時間。這可能需要很長時間(幾周或更長時間),但它們仍然可能會過期併發生變化。大多數情況下,機器會獲得相同的IP,但是,您不應該依賴這一點。
1.將動態IP地址分配或更新到智能手機或平板電腦時,是否遵循相同的程序?2. 3G/4G網絡中IP地址分配的區別是什麼? – Ali
1.是 - 每個tcp/ip設備根據其MAC獲取IP地址。有一些服務器提供IP地址,並且IP地址與MAC有關聯。無論是移動設備,IPv6設備,汽車還是手機,都有一些背景分配。我不是一個手機通訊的人,所以實際上我怎麼處理我不知道,但從概念上說它沒有什麼不同。但這些通常是客戶端,而不是服務器。 – KevinO
謝謝你的依賴! – Ali