[英]Find IP/Name of client connected to WCF service?
你好
我在IIS7中托管了一个WCF服务,该服务使用WAS通过TCP进行通信。 在服务端,我已经实现了IParameterInspector来记录调用的服务操作,但我还需要客户端IP /名称。
我已经试过了:
OperationContext.Current.IncomingMessageProperties[RemoteEndpointMessageProperty.Name].Address
但这总会返回“ :: 1”吗? 如果我使用:
Dns.GetHostEntry(messageProperty.Address).HostName.Split('.').LastOrDefault()
该名称将始终是本地名称,即使客户端位于其他计算机上,该名称也将是服务名称?
最好的祝福
编辑1:如果我没有看对IP,就无法获得IP,所以问题是是否还有其他方法可以指定客户端,MABY某种GUID还是仅应使用会话ID?
您可能会收到一个IPv6地址(如此处所示)。 ::1
是等效于IPv4的127.0.0.1
的IPv6。
此外,并非所有IP地址都具有与之关联的主机名,并且某些IP地址可能没有任何句点(例如,如果您获得“ localhost”或其他本地LAN机器名称)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.