WCF和127.0.0.1与localhost的区别

5

使用127.0.0.1和localhost有什么不同吗?

我问这个问题是因为在定义WCF连接时,我注意到了一个区别。

<client>
  <endpoint binding="netTcpBinding" bindingConfiguration="netTcpNosecurity" contract="MyClass" name="MyName" behaviorConfiguration="megaGraphBehavior" address="net.tcp://localhost:8011/myname" />
</client>

在一些环境中,我注意到当使用本地主机时,服务器会突然开始抛出这个错误,而我只能通过使用127.0.0.1来使它工作。无法连接到net.tcp://localhost:8011/myname。连接尝试持续了00:00:02.2341176的时间跨度。TCP错误代码10061:由于目标计算机积极拒绝,因此无法建立连接127.0.0.1:8011。--->System.Net.Sockets.SocketException:由于目标计算机积极拒绝,因此无法建立连接127.0.0.1:8011。这是为什么呢?我是否应该总是使用127.0.0.1?
2个回答

2
默认情况下,localhost会引用IPv6启用机器上的IPv6地址。也许服务器端点只能通过IPv4访问?

0

我今天遇到了这个问题,但我随机地解决了它(我不明白为什么它们在这里)。

看看这个截图:

screenshot

  • 看到我勾选了自动分配端口,但没有勾选特定端口59816吗?
  • 看到消息框显示localhost:59816127.0.0.1:59816吗?

我通过勾选特定端口59816解决了我的问题。

这也许能解决你的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接