为什么不在Unix TCP/IP服务器上使用SO_REUSEADDR? [英] Why not using SO_REUSEADDR on Unix TCP/IP servers?

查看:306
本文介绍了为什么不在Unix TCP/IP服务器上使用SO_REUSEADDR?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我还没有看到任何重要的TCP/IP服务器不使用SO_REUSEADDR:

I have not seen any important TCP/IP server not use SO_REUSEADDR :

  • Apache HTTP Server SO_REUSEADDR usage
  • nginx SO_REUSEADDR usage
  • Very Secure FTPD SO_REUSEADDR usage
  • exim SO_REUSEADDR usage
  • Postfix SO_REUSEADDR usage
  • OpenSSH SO_REUSEADDR usage

是否存在在TCP/IP服务器上不使用SO_REUSEADDR的用例?

Is there any use case for not using SO_REUSEADDR on TCP/IP servers ?

我的意思是,要使操作系统始终使用SO_REUSEADDR会破坏任何不使用它的服务器吗?

I mean, would making the OS always use SO_REUSEADDR break any server that does not use it?

您知道出于某种原因未使用SO_REUSEADDR的TCP/IP服务器吗?

Do you know a TCP/IP server that not uses SO_REUSEADDR for a reason?

(当然,您可能不想在MSWindows上使用它,因为它允许在同一端口上运行两个服务器)

(of course you may not want to use it on MSWindows as it allows to run two servers on the same port)

推荐答案

联合国开发计划署(Stevens 2004)说:

Well, UNP (Stevens 2004) says:

SO_REUSEADDR允许侦听服务器启动并绑定其服务器 众所周知的端口,即使存在先前建立的连接, 将此端口用作其本地端口.

SO_REUSEADDR allows a listening server to start and bind its well-known port, even if previously established connections exist that use this port as their local port.

所有TCP服务器都应指定此套接字选项以允许该服务器 重新启动

All TCP servers should specify this socket option to allow the server to be restarted

这篇关于为什么不在Unix TCP/IP服务器上使用SO_REUSEADDR?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆