⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 272.htm

📁 unix高级编程原吗
💻 HTM
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>CTerm非常精华下载</title>
</head>
<body bgcolor="#FFFFFF">
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="577">
<tr><td width="32%" rowspan="3" height="123"><img src="DDl_back.jpg" width="300" height="129" alt="DDl_back.jpg"></td><td width="30%" background="DDl_back2.jpg" height="35"><p align="center"><a href="http://apue.dhs.org"><font face="黑体"><big><big>apue</big></big></font></a></td></tr>
<tr>
<td width="68%" background="DDl_back2.jpg" height="44"><big><big><font face="黑体"><p align="center">               ● UNIX网络编程                       (BM: clown)                </font></big></big></td></tr>
<tr>
<td width="68%" height="44" bgcolor="#000000"><font face="黑体"><big><big><p   align="center"></big></big><a href="http://cterm.163.net"><img src="banner.gif" width="400" height="60" alt="banner.gif"border="0"></a></font></td>
</tr>
<tr><td width="100%" colspan="2" height="100" align="center" valign="top"><br><p align="center">[<a href="index.htm">回到开始</a>][<a href="192.htm">上一层</a>][<a href="273.htm">下一篇</a>]
<hr><p align="left"><small>发信人: scz (小四), 信区: Socket <br>

标  题: 以前看Netguy的文章时写的一篇 <br>

发信站: 华南网木棉站 (Mon Nov  8 11:11:31 1999), 转信 <br>

  <br>

标题:free proxy搜索和验证 <br>

  <br>

关于free proxy的搜索,在华南木棉socket编程版有Netguy给出的一个 <br>

freeproxyscan.c,看过就会明白,所谓的自由代理搜索完全是一种特殊 <br>

的端口扫描过程,只不过这次是针对特定一些端口组合,比如8080、8888 <br>

等等端口进行扫描,一旦发现有处在LISTENING状态的服务存在,就认为这 <br>

里存在proxy。那么这个结论科学不科学呢,显然不科学,代理服务可以指 <br>

定任意端口,而搜索程序为了大面积搜索IP,不可能对每个IP都进行很宽广 <br>

的端口扫描,只要对方不使用常规端口,扫描必定得不到理想的结果。所以 <br>

很多人搜索代理,是直接用端口扫描程序指定自己怀疑的端口进行扫描。 <br>

  <br>

扫描本身没有任何技术难度,验证倒是有点。Netguy在98.1给出一个 <br>

freeproxyverify.c,基本正常,存在一些网络编程的技巧性问题,但不是 <br>

很严重,我简单修改后转载过来,顺便谈谈那几个技巧性问题。验证过程 <br>

就是向proxy server发送http命令,去取一个特定的.html文件,然后判断 <br>

返回结果与预期的是否一致,如果一致表明代理是可用且自由的,因为没有 <br>

口令验证过程。从中可以看出,验证过程是要掏银子的! <br>

  <br>

Netguy为了提高效率,将这个验证过程丢到了后台,如果 <br>



是要做成daemon,企图与进程的控制终端脱离,需要二次fork才最终完成脱 <br>

离控制终端,否则当open tty的时候会主动要求得到一个控制终端。 <br>

第二个问题是设置socket为非阻塞模式,Netguy这样做的意图是因为他使用 <br>

了select判断写准备好,为了防止select报告写准备好但真正写的时候又发 <br>

生阻塞,必须设置该socket为非阻塞模式。 <br>

  <br>

为什么select报告写准备好却仍然有可能发生写阻塞呢?因为select报告写 <br>

准备好的时候,是说内核中写缓冲区有空闲,可是若企图写的内容大于内核 <br>

空闲写缓冲,就会发生阻塞,解决办法就是设置非阻塞模式socket。 <br>

  <br>

freeproxyscan.c就不转载了,因为没有更多意义,端口扫描。了解了 <br>

free proxy的搜索和验证过程,应该不再感到神秘,也应该不再困惑为什么 <br>

被扫描主机日志系统会记录到这种搜索,就相当于你到处telnet别人主机的 <br>

各个端口,不被记录才怪! <br>

  <br>

  <br>

-- <br>

  <br>

            也许有一天,他再从海上蓬蓬的雨点中升起, <br>

            飞向西来,再形成一道江流,再冲倒两旁的石壁, <br>

            再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <br>

</small><hr>
<p align="center">[<a href="index.htm">回到开始</a>][<a href="192.htm">上一层</a>][<a href="273.htm">下一篇</a>]
<p align="center"><a href="http://cterm.163.net">欢迎访问Cterm主页</a></p>
</table>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -