SO_REUSEADDR提供如下四個功能:
- SO_REUSEADDR允許啟動一個監聽伺服器并捆綁一個端口,即使以前建立的将此端口用做他們的本地端口的連接配接仍存在(TIME_WAIT)。這通常是重新開機監聽伺服器時出現,若不設定此選項,則bind時将出錯。
- SO_REUSEADDR允許在同一端口上啟動同一伺服器的多個執行個體,隻要每個執行個體捆綁一個不同的本地IP位址即可。
- SO_REUSEADDR允許單個程序捆綁同一端口到多個套接口上,隻要每個捆綁指定不同的本地IP位址即可。這一般不用于TCP伺服器。
- SO_REUSEADDR允許完全重複的捆綁:當一個IP位址和端口綁定到某個套接口上時,還允許此IP位址和端口捆綁到另一個套接口上。一般來說,這個特性僅在支援多點傳播的系統上才有,而且隻對UDP套接口而言(TCP不支援多點傳播)。