程序使用端口80,但它不应该

时间:2015-11-06 15:24:40

标签: c# wcf port

我正在创建简单的应用程序,它应该与托管服务进行通信。应用程序非常简单,您可以在任何WCF服务教程中找到它,并使用一个服务客户端连接到服务。我正在使用端点

  

http://localhost:6480/DentalDesktop/ServerAgentService

用于服务,因此,据我所知,应用程序应该只使用6480端口(在所有规则中都是打开的等)。 但是,一旦我尝试启动应用程序,它就会抛出异常,端口80已经被另一个应用程序使用了。一些调查显示,这是Skype使用80端口。

但是,我不知道,为什么我的应用程序根本使用端口80。我们使用另一个端口的唯一客户端服务。这是由WCF应用程序的某些默认连接引起的还是什么?

3 个答案:

答案 0 :(得分:0)

端口80是HTTP端口,供浏览器用于非安全流量。

您能否提供有关您正在创建的应用类型的更多详细信息。它是一个网站,WPF应用程序,服务等。

答案 1 :(得分:0)

以下是我使用iptables在VM上进行端口转发的方法。首先必须启用端口转发,然后为PREROUTING链设置规则:

sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000

如果您想重定向localhost流量,请改用:

sudo iptables -t nat -A OUTPUT -d localhost -p tcp --dport 80 -j REDIRECT --to-port 3000 

这些示例将流量从端口80路由到端口3000。

答案 2 :(得分:0)

嗯,我可以说...不要使用http或tcp从您自己的机器连接到您的服务器。 net.pipe工作正常,没有任何端口。