当前位置: 首页 > news >正文

做家装网站客户来源多吗最好用的磁力搜索器

做家装网站客户来源多吗,最好用的磁力搜索器,收录提交入口网址,怎么做微信网站吗我们知道编程的时候使用代理服务器并不是一件爽心悦目的事情,可是很多时候又是迫不得已的。微软在.NET Framework得System.Net名称空间里给我们提供了一个WebProxy类,不过这是一个http代理,这种代理使用起来受限太多,很不方便。如…

    我们知道编程的时候使用代理服务器并不是一件爽心悦目的事情,可是很多时候又是迫不得已的emsad.gif。微软在.NET Framework得System.Net名称空间里给我们提供了一个WebProxy类,不过这是一个http代理,这种代理使用起来受限太多,很不方便。如果我们需要访问更多的网络服务,socks代理是一个理想的选择。下面是C#编写的一个匿名socks5代理使用示例:

ContractedBlock.gifExpandedBlockStart.gif连接匿名socks5服务器代码#region 连接匿名socks5服务器代码
InBlock.gif
private bool ConnectProxyServer(string strRemoteHost, int iRemotePort, Socket sProxyServer)
ExpandedSubBlockStart.gifContractedSubBlock.gif
dot.gif{
InBlock.gif    
//构造Socks5代理服务器第一连接头(无用户名密码)
InBlock.gif
    byte[] bySock5Send = new Byte[10];
InBlock.gif    bySock5Send[
0= 5;
InBlock.gif    bySock5Send[
1= 1;
InBlock.gif    bySock5Send[
2= 0;
InBlock.gif
InBlock.gif    
//发送Socks5代理第一次连接信息
InBlock.gif
    sProxyServer.Send(bySock5Send, 3, SocketFlags.None);
InBlock.gif
InBlock.gif    
byte[] bySock5Receive = new byte[10];
InBlock.gif    
int iRecCount = sProxyServer.Receive(bySock5Receive, bySock5Receive.Length, SocketFlags.None);
InBlock.gif
InBlock.gif    
if ( iRecCount<2 ) 
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        sProxyServer.Close();
InBlock.gif        
throw new Exception("不能获得代理服务器正确响应。");
ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    
if ( bySock5Receive[0]!=5 || ( bySock5Receive[1]!=0 && bySock5Receive[1]!=2 ) )
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        sProxyServer.Close(); 
InBlock.gif        
throw new Exception("代理服务其返回的响应错误。");
ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    
if ( bySock5Receive[1]==0 )
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        bySock5Send[
0= 5;
InBlock.gif        bySock5Send[
1= 1;
InBlock.gif        bySock5Send[
2= 0;
InBlock.gif        bySock5Send[
3= 1;
InBlock.gif
InBlock.gif        IPAddress ipAdd 
= Dns.Resolve(strRemoteHost).AddressList[0];
InBlock.gif        
string strIp = ipAdd.ToString();
ExpandedSubBlockStart.gifContractedSubBlock.gif        
string []strAryTemp = strIp.Split(new char[] dot.gif{'.'});
InBlock.gif        bySock5Send[
4= Convert.ToByte(strAryTemp[0]);
InBlock.gif        bySock5Send[
5= Convert.ToByte(strAryTemp[1]);
InBlock.gif        bySock5Send[
6= Convert.ToByte(strAryTemp[2]);
InBlock.gif        bySock5Send[
7= Convert.ToByte(strAryTemp[3]);
InBlock.gif
InBlock.gif        bySock5Send[
8= (byte)(iRemotePort/256);
InBlock.gif        bySock5Send[
9= (byte)(iRemotePort%256);
InBlock.gif
InBlock.gif        sProxyServer.Send(bySock5Send, bySock5Send.Length, SocketFlags.None);
InBlock.gif        iRecCount 
= sProxyServer.Receive(bySock5Receive, bySock5Receive.Length, SocketFlags.None);
InBlock.gif
InBlock.gif        
if ( bySock5Receive[0]!=5 || bySock5Receive[1]!=0 )
ExpandedSubBlockStart.gifContractedSubBlock.gif        
dot.gif{
InBlock.gif            sProxyServer.Close();
InBlock.gif            
throw new Exception("第二次连接Socks5代理返回数据出错。");
ExpandedSubBlockEnd.gif        }

InBlock.gif        return true ;
ExpandedSubBlockEnd.gif    }

InBlock.gif    
else
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        
if ( bySock5Receive[1]==2 ) 
InBlock.gif            
throw new Exception("代理服务器需要进行身份确认。");
InBlock.gif        
else return false ;
ExpandedSubBlockEnd.gif    }

ExpandedSubBlockEnd.gif}

ExpandedBlockEnd.gif
#endregion

   关于socks5代理的详细文档,可以参看RFC 1928。

   使用上面的代码需要有一个匿名的socks5代理服务器,然后调用:

None.gifprivate Socket GetSocket(string strIpAdd, int iPort)
ExpandedBlockStart.gifContractedBlock.gif
dot.gif{
InBlock.gif    IPAddress hostadd 
= Dns.Resolve(strIpAdd).AddressList[0];
InBlock.gif    IPEndPoint EPhost 
= new IPEndPoint(hostadd, iPort);
InBlock.gif    Socket s 
= new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
InBlock.gif    s.Connect(EPhost);
InBlock.gif    
return s ;
ExpandedBlockEnd.gif}

None.gif
None.gifsRemoteHost 
= GetSocket(proxyHost, proxyProt);
None.gifConnectProxyServer(
"61.135.134.24"80
, sRemoteHost);
None.gif

   如果您需要使用非匿名的socks5代理,把RFC 1928后面关于用户验证的部分实现就可以了,由于我使用的都是匿名的socks5代理,所以没有做这个部分得工作emembarrassed.gif

http://www.lbrq.cn/news/2689417.html

相关文章:

  • 编程 网站建设如何做一个网站
  • html5在线制作网站模板灰色推广
  • 怀化网站建设联系方式网络运营工作内容
  • 网络营销招聘岗位有哪些推广关键词优化公司
  • 廊坊高端网站制作3小时百度收录新站方法
  • 常见的网站结构有哪些竞价推广sem
  • 限制网站访问ip百度售后客服电话24小时
  • 青州网站建设百度广告一级代理
  • 深圳高端营销网站模板引擎网站
  • 网站定制开发合同营销推广策划
  • index 石家庄网站建设seo网站关键词优化方式
  • 东莞视频网站制作优化大师官网下载
  • 网页qq登陆保护网络seo哈尔滨
  • 政府网站建设团队网页生成器
  • 唐山哪个公司做网站如何在百度上推广业务
  • 汽车展示网站微信拓客的最新方法
  • 鲅鱼圈网站在哪做南京谷歌seo
  • 怎么自己做代刷网站网站快速排名优化报价
  • 小程序搭建是什么意思淘宝seo优化怎么做
  • 镇江方圆建设监理咨询有限公司网站对网络营销的认识
  • wordpress 目录权限管理指定关键词排名优化
  • 当地政府网站建设问卷调查自己做一个网站需要什么
  • 二级域名网站建设百度竞价代运营托管
  • 免费帮助建站营销网络是啥意思
  • 佛山网站设计建设网络营销策略概念
  • 网站快速收录软件云搜索网页版入口
  • 做网站帮外国人淘宝crm系统网站
  • 网站推广公司兴田德润在哪里上海最新疫情
  • 做网站服务器和域名2022黄页全国各行业
  • 90做网站整合营销传播名词解释
  • 【GESP】C++一级知识点之【集成开发环境】
  • 安卓主题定制实践:17.45MB轻量级主题引擎技术解析
  • 【AI生成+补充】高频 hql的面试问题 以及 具体sql
  • 《嵌入式Linux应用编程(四):Linux文件IO系统调用深度解析》
  • vue excel转json功能 xlsx
  • 面试经典150题[001]:合并两个有序数组(LeetCode 88)