命名启动时出错

命名启动时出错

我开始时看到以下几行named

Sep 19 17:50:52 mydomain named[xxx]: ../../../../lib/isc/unix/socket.c:5682: unexpected error:
Sep 19 17:50:52 mydomain named[xxx]: setsockopt(22, TCP_FASTOPEN) failed with Protocol not available

这是什么意思?我应该担心吗?如果是的话,该如何解决?

我不知道里面有什么socket.c。我运行locate scoket.cfind socket.c但是find ~/ -type f -name "socket.c",没有找到路径中的文件../../../../lib/isc/unix/socket.c

答案1

检查您的系统是否启用了 TCP_FastOpen。​​CentOS 出厂时已禁用它或仅可用于传出连接。您需要将其设置为 3(启用传入和传出)。您可以使用以下命令为当前会话(用于测试)设置它

sysctl -w net.ipv4.tcp_fastopen=3

或者

echo 3 >/proc/sys/net/ipv4/tcp_fastopen

如果这解决了你的问题并且你想永久设置它,那么使用

echo "net.ipv4.tcp_fastopen=3" > /etc/sysctl.d/30-tcp_fastopen.conf

相关内容