我注意到,当我运行用于 Web 应用程序开发的本地 Web 服务器时,日志显示某些东西一直在尝试/socket.io
从端口 3000 上的 localhost 进行 GET。通常,我在 Docker 容器内运行 puma 作为 Rails 应用程序的本地服务器时会看到这种情况。但是,我尝试使用节点(http-server,一个页面)运行一个简单的本地服务器,日志显示相同的流量,因此它似乎不一定与 Docker 有关,它只是来自某个地方的持续流量。
重启机器后,流量不会立即显示出来,但最终流量又会再次出现。我尝试关闭后台应用程序,看看是否是其中之一,但无济于事。我的笔记本电脑的配置与我的台式机类似,包括 Docker 和 Hyper-V 等,笔记本电脑上不会发生这种情况。
显然,机器上运行着某些程序,导致出现这种情况,但我找不到它。我还能做什么来找出它的来源?
样品:
在 Rails 应用程序日志中:
Started GET "/socket.io/?X_LOCAL_SECURITY_COOKIE=&EIO=3&transport=polling&t=1560455293858-21046" for 172.18.0.1 at 2019-06-13 19:48:13 +0000 ActionController::RoutingError (No route matches [GET] "/socket.io"):
在一个简单的节点 http 服务器单页中:
[Thu Jun 13 2019 16:15:44 GMT-0400 (Eastern Daylight Time)] "GET /socket.io/?X_LOCAL_SECURITY_COOKIE=&EIO=3&transport=polling&t=1560456944267-21720" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.30 Safari/537.36 NVIDIACEFClient/rel_03_17/c6b7277 NVIDIAOSCClient/3.17.0.126" [Thu Jun 13 2019 16:15:44 GMT-0400 (Eastern Daylight Time)] "GET /socket.io/?X_LOCAL_SECURITY_COOKIE=&EIO=3&transport=polling&t=1560456944267-21720" Error (404): "Not found"
答案1
用户代理包含:
NVIDIACEF客户端/rel_03_17/c6b7277 NVIDIAOSC客户端/3.17.0.126
我遇到了同样的问题,我相信它来自 NVIDIA GeForce 工具,但我不知道如何阻止 GeForce 发送垃圾邮件 localhost:3000。
答案2
总结: 关闭游戏内叠加特色NVIDIA GeForce Experience. 如有必要,安装/重新安装最新的驱动程序。
因此,基于mtlynch 的观察,我启动了我的 docker 容器和 web 应用程序,并在摆弄 NVIDIA 东西的同时观察了流量。
我停止了 GeForce Experience 应用程序——没有明显的变化。
然后我开始通过以下方式结束 NVIDIA 进程任务管理器。我有几个:NVIDIA Container
,,,等等。停止进程(有三个)就解决了这个问题 - 当我重击最后一个进程时,不停的 ping 声NVIDIA Share
立即停止了。NVIDIA Webhelper
NVIDIA Share
socket.io
随后我用新关键词进行了一番搜索,结果本文:
如果您确实想禁用某些 NVIDIA 进程,在 GeForce Experience 中关闭“游戏内覆盖”是一种绝对安全的方法。这将删除 NVIDIA ShadowPlay Helper 进程和两个 NVIDIA Share 进程,直到您将其重新打开。同样,我们通常不建议从“服务”菜单中禁用服务 - 使用程序的内置选项通常是减少这些正在运行的进程的更安全的方法。
当我重新启动并尝试打开 GeForce Experience 进行测试时,出现了错误 - 我甚至无法打开该应用程序。也许这最终是问题的一部分,目前还无法确定。
我最终删除并安装了最新的 NVIDIA 驱动程序,此时我能够打开 GeForce Experience 并关闭游戏内叠加功能打开/关闭。果然,NVIDIA Share
当我关闭该功能时,进程停止了,当它们停止时,NVIDIA 不再对本地主机上的 socket.io 进行 ping 操作。