【问题标题】:Telnet Connectionstate QueryTelnet 连接状态查询
【发布时间】:2014-02-03 12:52:37
【问题描述】:

我想知道是否有任何方法可以通过编程方式查看是否已建立 telnet 连接。

我们使用 telnet 对我们域内的防火墙进行身份验证,在我们进行身份验证后,我们可以访问防火墙后面的主机。他们在 C# 中有什么方法可以在不使用第三方库的情况下查询此连接状态吗?

提前致谢,

凯文

更新:这些防火墙也有一个 url 登录网页,目前我们查询那些以查看我们是否已连接,但此过程远非一致。

  1. 我们只有 75% 的防火墙可以这样测试
  2. 此过程与导致应用程序挂起的超时有关

    ->C# - Testing Internet page - Waiting for timeout

【问题讨论】:

    标签: c# telnet


    【解决方案1】:

    根据我在类似环境中的实验,只有在提示最终用户输入其凭据以登录防火墙/服务器等时,Telnet 连接才会显示在 netstat 中。

    此连接将在 SSL 连接的 IP 和同一域上的防火墙/服务器的 IP 之间。

    此连接的状态在等待输入时显示为 ESTABLISHED,但一旦用户名和密码通过身份验证,此连接就不再列在主机的 netstat 输出中。

    但是,将显示来自 SSL 网关 IP 和主机的单独连接,其状态将为 TIME_WAIT

    因为您正在通过 SSL 连接,所以主机和目标之间没有直接连接。

    理想情况下,您需要能够以编程方式将 SSL 到防火墙的连接与创建的 SSL 到主机的连接链接起来。我建议在使用 C# 进行身份验证期间捕获 netstat 输出。

    【讨论】:

    • Paul - 连接确实只在协商防火墙凭据时出现。我将看看我是否确实可以捕获 netstat shell 输出。感谢您的意见。
    【解决方案2】:

    你能在 C# 中执行一些 netstat 函数并对此进行查询吗?

    应该会显示 Telnet 连接,对吗?

    【讨论】:

    • 嗯,这也是我们最初的想法,但是 telnet 连接是跨域的(在我最初的问题中小混杂,抱歉)(我们使用软件 vpn 连接到另一个域),因此是当我们做一个 netstat 时没有列出。事实上,如果我们远程登录到我们的家庭路由器并执行 netstat,它就会显示出来,但是我们的 vpn 适配器连接没有在 netstat 结果中列出。感谢回复
    【解决方案3】:

    C# - Socket to log on to Firewall

    --> 这以更快速、更优雅的方式解决了问题。

    -KL-

    【讨论】:

      猜你喜欢
      • 2016-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-17
      • 1970-01-01
      • 1970-01-01
      • 2020-11-10
      • 2019-06-26
      相关资源
      最近更新 更多