我有一个WCF服务,配置为在netTcpBinding上运行高端口号(例如9000)。这一切都有效,但前提是客户端可以访问该端口上的数据。我们遇到过许多情况,企业防火墙不允许我们在这个端口上连接而没有太多痛苦。
有没有办法可以将其配置为在端口80上工作而不会影响当前在服务器上运行的Web应用程序,以便大多数企业环境不需要更改任何内容?我知道.net tcp port sharing,但是这不会允许端口80超过net.tcp。
如果无法通过端口80配置net.tcp,是否存在针对此类情况的“最佳做法”以最大限度地减少防火墙问题?
答案 0 :(得分:4)
我建议您可以尝试在大多数防火墙中允许的端口8080。 IIS 7.0目前不支持在不同的协议绑定之间共享相同的端口。 因此,同一端口上的HTTP + TCP将无法正常工作。
答案 1 :(得分:1)
您需要确保绑定到特定的ip。通常,当绑定WCF服务时,人们使用0.0.0.0来接受任何ip。如果您在端口80上执行此操作或未指定端口,它将覆盖IIS中的所有现有配置,从而有效地终止所有正在运行的站点。
执行此操作的唯一方法是使用可用于端口80绑定的单独IP,而其他站点不用于连接。