Ubuntu 间歇性拒绝新网络连接问题排查求助
Ubuntu 间歇性拒绝新网络连接问题排查求助
问题描述
我有一台运行Ubuntu 22.10的台式机,开启了SSH连接,同时运行着Plex媒体服务器。平时系统运行都很正常,但偶尔会出现拒绝新连接的情况:SSH连接会提示Connection refused,新开Plex窗口也无法加载。不过网络并没有中断——正在播放的Plex视频不会停止,已经打开的SSH shell也能继续正常使用,只是没法建立新的连接。
想请教大家,有没有什么系统设置可以调整,比如增加入站连接数上限,或者确保服务端口始终可用,来解决这个问题?
补充日志信息
编辑补充:我查看了journalctl日志,没找到明显的异常信息。昨天问题多次出现,以下是当天NetworkManager的完整日志:
Mar 29 00:00:43 NetworkManager[864]: <info> [1680062443.3505] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 00:56:58 NetworkManager[864]: <info> [1680065818.2973] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 01:51:41 NetworkManager[864]: <info> [1680069101.3066] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 02:47:40 NetworkManager[864]: <info> [1680072460.2969] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 03:41:31 NetworkManager[864]: <info> [1680075691.3097] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 04:36:15 NetworkManager[864]: <info> [1680078975.3003] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 04:53:46 NetworkManager[864]: <info> [1680080026.3071] manager: NetworkManager state is now CONNECTED_SITE Mar 29 04:53:46 NetworkManager[864]: <info> [1680080026.4636] manager: NetworkManager state is now CONNECTED_GLOBAL Mar 29 05:31:29 NetworkManager[864]: <info> [1680082289.2930] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 06:24:14 NetworkManager[864]: <info> [1680085454.3034] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 07:19:56 NetworkManager[864]: <info> [1680088796.3271] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 08:04:06 NetworkManager[864]: <info> [1680091446.3069] manager: NetworkManager state is now CONNECTED_SITE Mar 29 08:04:07 NetworkManager[864]: <info> [1680091447.5300] manager: NetworkManager state is now CONNECTED_GLOBAL Mar 29 08:14:57 NetworkManager[864]: <info> [1680092097.3178] dhcp4 (enp1s0): state changed new lease, address=192.168.1.52 Mar 29 08:39:27 NetworkManager[864]: <info> [1680093567.3073] manager: NetworkManager state is now CONNECTED_SITE Mar 29 08:39:27 NetworkManager[864]: <info> [1680093567.5565] manager: NetworkManager state is now CONNECTED_GLOBAL
排查建议
从你的描述和日志来看,NetworkManager没有明显异常,问题更可能出在系统连接限制、服务自身状态或者TCP参数上,给你几个排查方向:
- 检查连接数与文件句柄限制:Ubuntu默认的进程文件句柄数可能不够用,尤其是当Plex有大量并发连接时。先执行
ulimit -n查看当前用户的文件句柄限制,如果数值较低(比如默认的1024),可以编辑/etc/security/limits.conf,添加以下两行来提高上限:
重启后生效,同时用* soft nofile 65535 * hard nofile 65535sudo ss -s查看系统整体的TCP连接统计,确认是否达到了连接数上限。 - 确认服务监听状态:当问题出现时,立刻执行
sudo ss -tulpn | grep -E "ssh|plex",检查SSH(默认22端口)和Plex的端口是否还处于监听状态。如果监听消失了,可能是服务进程出现了局部异常,但现有连接没断的话,更可能是服务的监听套接字出了问题。 - 排查TCP端口耗尽问题:大量处于
TIME_WAIT状态的连接会占用可用端口,导致新连接无法建立。执行sudo ss -s | grep TIME-WAIT查看这类连接的数量,如果数量特别多,可以编辑/etc/sysctl.conf添加以下参数优化:
执行net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_fin_timeout = 30sudo sysctl -p让参数立即生效。 - 查看服务专属日志:NetworkManager日志没问题,但SSH的日志(
/var/log/auth.log)和Plex的日志(通常在/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/)可能会记录拒绝连接的具体原因,比如认证失败、资源耗尽等。 - 尝试静态IP配置:虽然DHCP续租的是同一个IP,但续租过程中偶尔可能出现短暂的端口绑定异常。可以把网卡设置为静态IP,看看问题是否不再出现。
- 检查防火墙规则:执行
sudo ufw status或sudo iptables -L确认防火墙规则没有被意外修改,确保SSH和Plex的端口始终允许入站连接。
备注:内容来源于stack exchange,提问作者Feasoron
相关产品推荐
相关产品推荐

