2012-05-14 41 views
0

我有我目前正在測試一個應用程序監聽通過端口1025的網絡I任意選擇了這個端口的請求,這是容易改變,我關心的是我的應用程序將與其他碰撞系統進程在該端口上偵聽。我的兩個主要問題如下:端口以適應聽

  1. 是否有使用端口1025的常見系統進程可能與我的應用程序衝突?
  2. 假設對1)的答案是肯定的,我的應用程序可以安全使用的另一個不太常用的端口或端口範圍是什麼?
+0

嘗試搜索「1025/TCP」和「分配的端口號」谷歌 – Mat

回答

1

49152 – 65535範圍內的任何端口都不能被任何公司註冊,因此您更有可能不會遇到任何端口衝突問題。

註冊端口等的列表可以在此維基百科的鏈接here被發現。

如果你不喜歡維基百科,檢查this鏈接出來,從互聯網編號分配機構(IANA)。

+0

謝謝你的洞察力馬特,我會選擇在此範圍內的端口。 – kingrichard2005

0

這將在大多數情況下。如果您需要在同一IP地址上運行多個應用程序實例(偵聽器),例如,端口衝突仍然存在。爲了克服這種情況,您可以選擇將套接字綁定到端口0(=任何端口)以讓系統爲您分配端口號。然後,您可以使用getsockname()(BSD套接字API)或等價物來獲取系統爲套接字分配的實際端口號。它的缺點顯然是端口號每次都會改變。需要有一種方法可以(通過手動,編程或系統方式)告知連接器的監聽端口。事實上,許多VoIP /點對點應用程序都是以這種方式工作的,在「集合點」服務器的幫助下。