我无法通过我的服务器上的netstat检测来自Nextcloud同步客户端的传入连接。
我的局域网中有一个服务器,在码头容器中使用MySQL运行Nextcloud。我使用多个Nextcloud客户机(Linux、macOS和iOS),一切正常。
我想检查客户端是否在主机级别连接到我的服务器。使用netstat,我能够看到客户机是否通过Nextcloud连接,但我不识别Nextcloud同步客户端的连接。
有人知道我缺少的netstat参数吗?任何暗示都欢迎。
布尔斯特凡
发布于 2018-08-26 01:05:16
连接可能是到容器的DNATed。这意味着主机现在充当“外部”和“容器”之间的路由器。netstat将不会显示这些连接。对于缺少的流,您将需要更多的工具。
其中一个工具是conntrack,它查询有关跟踪连接的连接。在选项-j中使用此命令:
conntrack -L -j将只显示NATed连接,从而显示容器和外部之间当前活动的已建立的流,并补充netstat的输出。
如果您想要一个类似于netstat的输出,您可以尝试使用多少依赖于相同机制的可用netstat-nat。
在循环中运行的另一种方法是查询Docker (直接在主机上使用docker )了解每个容器的主pid,并使用结果访问容器的网络,运行一个通常的netstat。这具有显示某些状态不再用连接轨迹显示的优点(比如CLOSE_WAIT,通常是应用程序问题的征兆)。
给定一个名为containername的正在运行的Docker容器,它应该得到它的所有网络连接,从它自己的角度来看,即使容器本身缺乏任何有用的命令:
nsenter --target $(docker inspect --format '{{.State.Pid}}' containername) --net netstat -utnhttps://unix.stackexchange.com/questions/464624
复制相似问题