一个服务器上面配置多个IP ,实现指定IP的域名请求

//配置多个IP命名
using System.Net;

 

//***************************************************************************

 /// <summary>
        /// 通过设置这个属性,可以在发出连接的时候绑定客户端发出连接所使用的IP地址。
        /// </summary>
        /// <param name="servicePoint"></param>
        /// <param name="remoteEndPoint"></param>
        /// <param name="retryCount"></param>
        /// <returns></returns>
        public static IPEndPoint BindIPEndPointCallback(ServicePoint servicePoint, IPEndPoint remoteEndPoint, int retryCount)
        {
            return new IPEndPoint(IPAddress.Parse("192.168.1.1") , 0);//端口号
        }
        /// <summary>
        /// 一个服务器上面配置多个IP 固定出网IP
        /// </summary>
        public static void MakeRequest()
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.baidu.com");
            //设置本地的出口ip和端口
            request.ServicePoint.BindIPEndPointDelegate = new BindIPEndPoint(BindIPEndPointCallback);
            if (ServicePointManager.DefaultConnectionLimit < 10)
            {
                ServicePointManager.DefaultConnectionLimit = 10;
            }
            //req.ServicePoint.ConnectionLimit=int.Max;  //允许最大连接数 

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            response.ToString();
        }

 

HttpWebRequest的详细方法二:

 System.Net.HttpWebRequest myRequest = null;
            System.Net.HttpWebResponse myResponse = null;
            Stream reqStream = null;
            Stream resStream = null;
            string signkey = "", url = "";
            string sdateStr = DateTime.Now.AddDays(-6).ToString("yyyyMMdd") + "000001";
            try
            {
                signkey = XH_ChannelKey;//key
                url = XH_ChannelUrl;    //接口地址
                url += "fromDate=" + sdateStr;
                url += "&version=1.4";//版本号
                url += "&hmac=" + MD5Encrypt(signkey + sdateStr + "1.4");
                //想服务器端发送请求,获取订单信息
                myRequest = System.Net.WebRequest.Create(url) as System.Net.HttpWebRequest;
                //--------------------- c#中HttpWebRequest使用Proxy实现指定IP的域名请求 ---------------------------------
                //需要使用Proxy和其配置 (代理ip)
                ////System.Net.WebProxy proxy = new System.Net.WebProxy("115.238.128.138", 80);
                ////myRequest.Proxy = proxy;
                //------------------------------------------------------
                myRequest.Timeout = 1000 * 60 * 1;//1分钟超时  1 minutes timeout
                myRequest.Method = "POST";
                myResponse = myRequest.GetResponse() as System.Net.HttpWebResponse;
                Stream myResponseStream = myResponse.GetResponseStream();
                StreamReader myStreamReader;
                myStreamReader = new StreamReader(myResponseStream, System.Text.Encoding.GetEncoding("utf-8"));
                //post返回的数据
                string receiveData = myStreamReader.ReadToEnd();
                myStreamReader.Close();
                myResponseStream.Close();

            }
            catch (Exception ex)
            {
                string stacktrace = ex.StackTrace;//获得详细的错误位置
                string errpoint = stacktrace.Substring(stacktrace.IndexOf("位置"), stacktrace.Length - stacktrace.IndexOf("位置"));

                Common.WriteTextLog("Error","", ex.Message + Environment.NewLine + errpoint);
            }
            finally
            {
                if (resStream != null)
                {
                    resStream.Close();
                }
                if (reqStream != null)
                {
                    reqStream.Close();
                }
                if (myResponse != null)
                {
                    myResponse.Close();
                }
                if (myRequest != null)
                {
                    myRequest.Abort();
                }
                ////特别留意这句Sleep的调用!!
                System.Threading.Thread.Sleep(16);
            }             

 

时间: 2024-10-24 08:19:16

一个服务器上面配置多个IP ,实现指定IP的域名请求的相关文章

Nginx服务器中配置GeoIP模块来拦截指定国家IP_nginx

最近有一个网站项目需求:需要屏蔽国内的方问请求.花时间研究了一下这方面的资料.目前找到的最佳方法就是使用 Nginx 的 GeoIP 模块来实现地区的识别.然后配置相关国家的 ISO 名称,禁止访问即可.记录一下相关过程. 编译 GeoIP 组件 maxmind 提供的免费版数据库已经可以满足需求,在使用数据库前,需要先编译 GeoIP 组件: wget http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.8.tar.gz ./co

在Linux服务器中配置mongodb环境

1.到mongodb官网下载一个合适的linux环境安装包 如下图,放到本地的某个角落,要记得位置哦~ 2.然后你需要有一个服务器,并进入 ssh root@你的IP //回车输入密码  3.把下载好的安装包传到服务中 另开ssh窗口(command+n),如果是windows就打开新的cmd窗口,因为我们要操作本地文件,之前的窗口我们已经登了服务器了. 传的方法很多,我只演示其中一种啦. cd "安装包所在文件夹" // 去你刚才安装包放的位置 scp "本地文件"

腾达(Tenda)FS395设置固定IP(静态IP)上网图解

  直接将入户的网线接在路由器的WAN口,再找一根短网线,一头接电脑,一头接路由器1/2/3任意接口,接线方式如下图: 注意:路由器正常工作状态是指示灯SYS闪烁,WAN口常亮或闪烁,1/2/3口中与电脑相连的端口常亮或闪烁.   将电脑上的本地连接IP地址设置为"自动获得IP地址" 1.右键点击桌面上的"网上邻居",选择"属性":                 Win7系统自动获取IP请点击此链接                       

php简单实现屏蔽指定ip段用户的访问

  这里给大家分享的是一个简单的使用php实现的屏蔽指定IP段的代码,非常的实用,有需要的小伙伴可以参考下. 这段时间在统计工具里面总是看到一些未知浏览器.未知操作系统的用户的频繁请求而且ip都在一个段里面,使我产生了一些疑问,这些用户算是有效用户吗.网站访问没有浏览器没有操作系统的记录,我经过几天的分析确认这些访问不是人在访问而是一些机器或者是别人在采集我的站内的东西,萌生了一种屏蔽这个ip的想法. 把统计里面的没有浏览器记录的用户数据导出来看了下屏蔽ip已经不现实了ip不少一百多个,但是仔细

怎么给电脑指定ip地址 电脑IP怎么设置?

XP 系统指定ip地址:                 第一步:右键点击桌面上的"网上邻居",选择"属性" 第二步:右键点击"本地连接",选择"属性" 第三步:双击"Internet协议(TCP/IP)" 第四步:选择"使用下面的IP地址","使用下面的DNS服务器地址"确定即可   Windows 7 系统指定ip地址: 第一步:点击桌面右下角的网络图标,打开&q

Sql Server2012 使用IP地址登录服务器的配置图文教程

最近在使用NFineBase框架+c#做一个系统的时候,在使用sql server 2012 连接数据库的时候 ,遇到几个问题. 一. 就是在本地或者远程连接别人的数据库的时候,以ip地址作为服务器名称 以SQL Server 身份验证(即输入登录名和密码)的方式登录数据库 总会出现错误 比如说会提示一下错误: 用户 'sa' 登录失败,该用户与可信 SQL Server 连接无关联. 但是使用 计算机名\实例名 这种方式就可以登录 \ 最后发现还是数据库的配置问题,解决方案如下: 我使用的是w

serversocket-通过ServerSocket起一个服务器 如何让外网的ip访问我的服务器

问题描述 通过ServerSocket起一个服务器 如何让外网的ip访问我的服务器 可以通过java 将某个路由端口映射到我的这个服务器地址吗? 或者我要实现的这个功能通过代理服务器可以吗?

一个服务器挂载多个项目问题

问题描述 一个服务器挂载多个项目问题 10C 一个服务器挂载多个项目,域名解析的时候只能默认解析到80端口,ip也只有一个,怎么做到一个域名一个项目,并且在同一个服务器上,我用的是javaWeb+tomcat+windows server 解决方案 配置下主机头就可以了.http://blog.csdn.net/cai5/article/details/7411379 解决方案二: 不太确定,用二级域名呢? 解决方案三: nginx反向代理吧 解决方案四: 配置二级域名,然后在tomcat的co

个人SMTP邮件服务器简单配置

一.安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加. 1.安装POP3服务组件 以系统管理员身份登录Windows Server 2003 系统.依次进入"控制面板→添加或删除程序→添加/删除Windows组件",在弹出的"Windows组件向导"对话框中选中"电子邮件服务"选项,点击"详细信息"按钮,可以看到该选项包括两部分内容:PO