在Linux上使用UDP套接字的SO_REUSEADDR.有必要吗?

我的UDP套接字是bind()到端口53(DNS). UDP是否具有TIME_WAIT状态或在UDP套接字上使用SO_REUSEADDR无意义?

解决方法:

UDP没有连接,因此没有什么类似于TIME_WAIT.您不需要使用SO_REUSEADDR.

如果您正在侦听广播或多播地址,则可能需要使用SO_REUSEPORT,这样如果同一台计算机上有多个侦听器,则不会发生冲突.但是,据我所知,这在Linux上并不存在.

上一篇:linux – 什么时候调用setsockopt?在bind()和connect()之前?


下一篇:1019:浮点数向零舍入