C#PingReply同时连接到WiFi和以太网时超时

C#PingReply同时连接到WiFi和以太网时超时

问题描述:

我有两台计算机,一台服务器(192.168.173.1)和一台客户机(192.168.173.2)通过以太网电缆连接并配置了静态ips。另一方面,它们都连接到同一个WiFi网络(动态IP)。C#PingReply同时连接到WiFi和以太网时超时

当我使用命令行(“ping 192.168.173.2”)从服务器ping客户端时,我得到即时回复。 但是,当使用该代码的代码下面坪

Ping pinger = new Ping(); 
PingReply reply = pinger.Send(ConfigurationManager.AppSettings["ClientTablet.Ip"]); 
     return (reply.Status == IPStatus.Success); 

我得到超时为reply.Status。

如果我从wifi断开服务器并再次运行c#pinger。我得到了正确的回应。

为什么在这种行为的结果wifi上?

+0

您正在使用的'Ping'类和'ping'命令可能都是“选择”绑定到哪个本地ip(比如通过'Socket.Bind()')。 'ping'类可以选择无线本地IP,'ping'命令可以选择以太网IP。根据绑定到的本地ip(其他构造函数/方法/参数),可以配置'Ping'类吗? – DWright

正如在using System.Net.NetworkInformation, is there a way to bind a ping to a specific interface?中所述,您应该检查您的路由表。您可以通过在控制台中键入

route print