【问题标题】:Local Service Fabric with VPN on not working使用 VPN 的本地 Service Fabric 无法正常工作
【发布时间】:2021-11-28 18:38:45
【问题描述】:

我有一个带有 1 个节点的本地 Service Fabric 群集,在打开 VPN 时无法正常工作。我有一个问题 22,在调试模式下运行集群时,我需要 VPN 连接到外部服务。

如果我在没有VPN的情况下启动集群,它会工作,然后在集群启动后,打开VPN。这可以工作一段时间,但一旦我关闭集群(即当我需要重新编译/调试时)它就不会重新启动。

有没有办法打开 VPN,我可以像在任何其他正常的应用程序开发中一样启动/关闭集群?

【问题讨论】:

  • 您的 VPN 在运行时会改变您的 DNS 设置吗?
  • 我不确定。如果确实如此,那意味着什么?如果没有,应该吗?
  • Service Fabric 将自己设置为主 DNS。如果您的 VPN 也更改了您的 DNS 设置,Service Fabric 将无法解析内部名称。输入命令提示符:ipconfig /all 获取不使用vpn时的配置,连接VPN后对比。
  • 感谢您的信息。我会试试的。如果它确实改变了 DNS,我应该禁用它吗?
  • 我猜这就是 VPN 的目的

标签: c# vpn azure-service-fabric


【解决方案1】:

有 3 个选项。

  1. 禁用服务结构 DNS 服务,如果您不使用服务结构 dns,我建议这样做。
  2. 使用备用 DNS
  3. 连接到 VPN 后重置您的 DNS 设置,并在您的 hosts 文件中添加所有 DNS IP 映射。

选项 1

更改您的本地集群配置。您的 clusterconfig 位于:C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup

因此,如果您的开发集群是单节点不安全的,您可以更改:C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup\NonSecure\OneNode\ClusterManifestTemplate.json

在“addOnFeatures”标签中可以去掉“DnsService”例子:

"addOnFeatures": [
   "DnsService",
   "EventStoreService",
]

完成这些步骤后,您可以从系统托盘重置您的开发集群。 (右键单击服务结构图标 => 重置本地集群)

您可以验证是否在 Service Fabric Explorer 中禁用了 DNS 服务:

选项 2

  1. 打开当前连接的 TCP/IPv4 属性(通过控制面板\所有控制面板项\网络连接)
  2. 在连接 VPN 之前将首选 DNS 更改为正在使用的一种服务结构
  3. 将 VPN 的第一个 DNS 放入备用 DNS 服务器文本框中。

选项 3

  1. 连接到 VPN
  2. 找到您需要的 FQDN 的所有 IP 地址。 (您可以在命令行中使用 ping)
  3. 打开C:\Windows\System32\drivers\etc\hosts
  4. 添加所有 ip FQDN 映射(每行 1 个)。例如:1.1.1.1 your.company.com
  5. 将您的 DNS 设置更改为默认配置。

【讨论】:

    猜你喜欢
    • 2017-03-27
    • 2016-09-28
    • 2019-07-24
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    • 1970-01-01
    • 2021-10-24
    • 2013-07-30
    相关资源
    最近更新 更多