2010-05-20 48 views
2

可以保持與客戶端的打開TCP連接,而客戶端的IP地址是外部更改的嗎? 例如,連接是針對地址X創建的,但有些連接打開時,客戶端用戶請求IP更新並獲取另一個IP地址。在這種情況下,連接可以保持活着嗎?雖然IP地址更改,但保持網絡連接

在此先感謝。

回答

3

不,它不能。

即使可以按摩本地端以瞭解連接突然在不同地址之間,遠程端也不會理解,並會拒絕使用它。

您需要重新添加舊IP地址才能繼續使用連接。


要做到這一點:

的Linux:ip addr add 172.16.10.20/22 dev bond0
的Windows:做一些尖尖的,clicky或**fill in command here**

+0

謝謝。 「你需要重新添加舊的IP地址才能繼續使用連接」是什麼意思?怎麼樣? – rkellerm 2010-05-20 13:38:05

0

這是possibe與TCP連接的V6發動機,如果你使用例如tunnelbrocker.net。每當您的IPv4地址發生變化時,您的IP4地址和tunnelbrocker的IP4地址之間的連接就會被丟棄然後重新建立,但是您的IP6地址是相同的,並且從您的IP6地址到目標IP6地址的所有TCP/IPv6連接仍然是這裏。

或者,如果你designinng兩個客戶端&服務器,你可以設計自己的協議,允許客戶以透明的方式重新..

+0

IPv6無法更改? – rkellerm 2010-05-23 10:37:48

+0

地址可以手動更改。 如果您只需切換到另一個ISP和/或移動到另一個大陸,則IP6地址不會改變:ISP目前僅提供IPv4連接。 – Soonts 2010-05-24 22:34:02

0

我所知道的是,使用UDP時,連接可仍然存在,我的應用程序之一是通過UDP更改遠程網絡適配器地址。

對於TCP,我同意Soonts,您應該設計您的服務器和客戶端應用程序以允許以透明方式重新連接。