C# 获取HttpWebRequest使用的IP地址

C# 获取HttpWebRequest使用的IP地址,c#,asp.net,.net,C#,Asp.net,.net,我正在尝试访问一个通过多个IP托管的域。当IP范围改变时,我们的防火墙将阻止任何请求,因为IP是不允许的 该应用程序将通知我们它无法建立连接,但它不会告诉我们它试图使用的IP地址 我使用HTTPWebRequest创建请求,使用HttpWebResponse接收响应 当使用URL实例化HttpWebRequest时,或者在发出请求之后,HttpWebRequest似乎在属性中没有IP地址 我很犹豫是否能从HTTPWebResponse中得到这个消息,因为我不知道如果防火墙阻止它,它是否会有ip地

我正在尝试访问一个通过多个IP托管的域。当IP范围改变时,我们的防火墙将阻止任何请求,因为IP是不允许的

该应用程序将通知我们它无法建立连接,但它不会告诉我们它试图使用的IP地址

我使用HTTPWebRequest创建请求,使用HttpWebResponse接收响应

当使用URL实例化HttpWebRequest时,或者在发出请求之后,HttpWebRequest似乎在属性中没有IP地址

我很犹豫是否能从HTTPWebResponse中得到这个消息,因为我不知道如果防火墙阻止它,它是否会有ip地址

前面提到的一个示例是将委托设置为:

static void Main(string[] args)
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://www.microsoft.com");
            req.ServicePoint.BindIPEndPointDelegate = new BindIPEndPoint(BindIPEndPoint1);

            Console.ReadKey();
        }

        public static IPEndPoint BindIPEndPoint1(ServicePoint servicePoint, IPEndPoint remoteEndPoint, int retryCount)
    {
        string IP = remoteEndPoint.ToString();
        return remoteEndPoint;
    }


这似乎可行,但我想看看是否有其他方法可以做到这一点,而不必设置委托。当我调试时,我注意到这个委托一直在运行,我不知道这是否是一个问题

您可以这样做来测试
Console.WriteLine(Server.HtmlEncode(Request.UserHostAddress))
查看这个
SO
Post@DJKraze我使用的是一个httpwebrequest对象,而不是httprequest。我可以试试类似的东西。我当时发现了这个,所以这个会有帮助@DJKRAZE谢谢。我将修改这个问题,“当我调试时,我注意到这个代理一直在运行”是什么意思?