我正在编写一个.NET程序,它将在具有多个IP地址的计算机上运行.该程序向给定的Web地址发出HTTP请求.我想选择我使用的IP地址(因此我可以确定哪个IP地址将出现在另一台服务器的日志中).
建议?
解决方法
我相信您可以通过提供BindIPEndPointDelegate来强制本地端点,该端口提供要绑定的IP /端口.
string sendingIp = "192.168.0.1"; int sendingPort = 5000; Uri uri = new Uri("http://google.com"); HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(uri); ServicePoint sp = ServicePointManager.FindServicePoint(uri); sp.BindIPEndPointDelegate = (servicePoint,remoteEp,retryCount) => { return new IPEndPoint(IPAddress.Parse(sendingIp),sendingPort); }; var data = new StreamReader(wr.GetResponse().GetResponseStream()).ReadToEnd();
此代码不能正确处理.