【问题标题】:Port Conflict with IIS与 IIS 的端口冲突
【发布时间】:2012-05-19 16:24:53
【问题描述】:

我有一个 IIS 服务器运行一个使用端口 80 的网站,我还有一个应用程序通过端口 80 从另一台计算机进行通信。无论如何要在端口 80 上运行它们吗?

我的应用使用端口 80 监听 tcplistener 的唯一原因是端口 80 在客户端的防火墙上默认打开。

谢谢, 罗希特

【问题讨论】:

    标签: c# networking port communication


    【解决方案1】:

    您不能有多个进程在同一 IP 地址的同一端口上侦听。如果您的服务器有多个网络接口,您可以将 IIS 设置为侦听一个地址,并将您自己的应用程序设置为侦听另一个地址。

    如果您的服务器只有一个网络地址,您需要选择另一个端口。如果您的 IIS 实现不侦听 HTTPS 流量,443 是一个不错的选择。其他选项可能是 21 (FTP)、22 (SSH)、23 (telnet) 或 25 (SMTP)。

    【讨论】:

    • 如果我这样做:loadtestingtool.com/help/how-setup-ip.shtml 我可以以某种方式将端口 80 转发到路由器上的两个 IP 地址吗?现在,我已将其配置为仅使用 192.168.2.10 但如果我添加另一个 ip,我可以这样做吗?或者如果我只是在我的计算机上添加另一张卡,我还能这样做吗?
    • 您可以向服务器添加第二个网卡并为其分配不同的 IP 地址。然后,您可以将每个服务绑定到其中一张卡,这样每个服务都将在其自己的 IP 地址上侦听端口 80。您还可以为现有网卡分配第二个 IP 地址,但这可能受支持,也可能不受支持。
    【解决方案2】:

    您需要将计算机的 NIC 与两个 IP 地址绑定。然后,您的应用程序可以在一个 IP 地址上侦听端口 80,而 IIS 可以在另一个 IP 地址上侦听。 您必须配置 IIS 以绑定到特定的 IP 地址;而不是默认的“全部未分配”。

    但除此之外,每个侦听器的 IP:Port 绑定必须是唯一的。

    如需配置 IIS 7 站点绑定,请参阅 TechNet IIS Binding

    【讨论】:

    • 我不认为他的应用程序在 IIS 下运行,所以这不是将网络流量路由到正确的虚拟主机的问题;他需要将 2 种不同的协议路由到不同类型的服务器。
    • @Adam 我明白你的观点,应用程序与 IIS 误读是分开的。更新了我的答案。
    猜你喜欢
    • 2015-11-04
    • 2017-09-20
    • 1970-01-01
    • 2015-12-02
    • 2021-07-23
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多