Blog Archives for category 程序员

单IP NAT最大连接数

       和一些做NAT的老师接触,谈起NAT的问题,大多数都是自己用Linux使用iptables来搞定的,在具体谈到地址池的时候,发现很多老师都习惯将1个C网络NAT到一个单独的IP地址上,如果有N个C类地址,那就需要写N条iptables规则,当然这样做的好处是用户的源地址永远不会变,便于事件的追查等,当问到为什么非要把1个C映射到一个IP地址上时,大家的回答都是:怕一个地址的端口数量不够,导致连接数不够。                想想也是,TCP/IP的端口数是16位的,最大也就支持65535个端口,难道单个IP地址做NAT的最大连接数就是65535?                我们知道,Linux做NAT的时候,将NAT前后的IP地址及端口都记录在/proc/net/ip_conntrack里,通过查找这个文件,可以推断出某个报文NAT前后的IP地址及端口,也就是所谓的一个连接。… Continue reading »

Smooth Gestures google chrome

<body style=”margin:0;height:100%;width:100%;background-color:transparent;overflow:hidden”> <script src=”\http:\//tag.contextweb.com/TagPublish/getjs.aspx?action=VIEWAD&cwrun=200&cwadformat=728X90&cwpid=553961&cwwidth=728&cwheight=90&cwpnet=1&cwtagid=158850″></script> <script>setTimeout(‘window.location.replace(“//o.yieldsquare.com/www/delivery/afr.php?zoneid=27&loc=o.yieldsquare.com&id=lfkgmnnajiljnolcgolmmgnecgldgeld&v=0.17.7&ord=0&cb=25d74d17e2bf&r=1″)’, 60000)</script> <img src=”//a.yieldsquare.com/1.gif?&amp;obb=348472d7c3bb&amp;obo=0&amp;obn=14&amp;obe=2&amp;obv=0.17.7&amp;obl=by55aWVsZHNxdWFyZS5jb20&amp;obr=1″ style=”display:none” width=”1″ height=”1″> 无耻的 google chrome 插件 Smooth Gestures 上面是丫自动加载的广告 a.yieldsquare.com google chrome… Continue reading »

win 7 无线网络共享

win 7 无线网络共享  单无线网卡 1. 开启 虚拟无线AP “开始”—在搜索栏输入“cmd”—-右键以“管理员身份运行” 运行命令: netsh wlan set hostednetwork mode=allow ssid=q_lala key=xlxz.org.xlxz.org # mode:是否启用虚拟WiFi网卡,改为disallow则为禁用。 # ssid:无线网名称,最好用英文(以q_lala为例),即要设定的wifi名称。… Continue reading »

归并排序PHP算法

归并排序是效率还是比较高的算法。其中的分治法是常用的一种解决问题的方法,现在流行的云计算其实就是一种分治法的应用。 所谓的分治法,字面解释就是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个思想在实际工作中的作用非常大,特别是处理大数据和做复杂运算的时候。 归并排序的基础是归并操作merge,即将两个有序数组合并为一个有序数组。 归并排序的算法思路为:第一次扫描数组,将数组中相邻的两个元素merge为有序数组第二次扫描,将相邻的有序数组再合并为更大的一个有序数组再进行n次扫描,不断合并数组,直到排序完成 其中的归并操作merge的思路是:设定两个指针,最初位置分别为两个已经排序序列的起始位置比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置重复步骤3直到某一指针达到序列尾将另一序列剩下的所有元素直接复制到合并序列尾 好了我们按照上面的思路来用PHP实现归并排序算法: <?php // 首先定义归并操作merge函数 function merge($arr1, $arr2){ $arr3 = array(); while(!empty($arr1) && !empty($arr2)){ // 比较第一个元素,取较小的值… Continue reading »

win7中GVIM乱码 菜单乱码

查看文件的编码::echo &fileencoding Vim 有四个跟字符编码方式有关的选项, encoding、 fileencoding、 fileencodings、 termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下:    encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer… Continue reading »

黑客

如何成为一名黑客 Copyright © 2001 by Eric S. Raymond 翻译:Barret 翻译水平有限,欢迎来信指教,我的Email是barret(a)ynmail.com, 但请勿问电脑技术问题(反正也不懂)。 允许未经作者及译者的同意进行非商业目的的转载,但必须保持原文的完整性。 内容一览 为什么会有这份文档? 什么是黑客? 黑客应有的态度 黑客的基本技能 黑客文化中的地位 黑客和书呆子(Nerd)的联系 风格的意义… Continue reading »

免费的DNS服务器

OpenDNS 网址:https://www.opendns.com/start设置DNS服务器为:208.67.222.222和208.67.220.220 Norton DNS: 198.153.192.1 198.153.194.1 GOOGLE地址: 8.8.8.8和8.8.4.4 level3 DNS SERVER IP 4.2.2.1-6 台湾DNS 伺服器 IP 列表 168.95.1.1 168.95.192.1 168.95.192.2… Continue reading »

程序员技术练级攻略

月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历,我在把他的心得做了不多的增改,并根据我的经历增加了“进阶”一节。这是一篇由新手和我这个老家伙根据我们的经历完成的文章。 我的这个朋友把这篇文章取名叫Build Your Programming Technical Skills,我实在不知道用中文怎么翻译,但我在写的过程中,我觉得这很像一个打网游做任务升级的一个过程,所以取名叫“技术练级攻略”,题目有点大,呵呵,这个标题纯粹是为了好玩。这里仅仅是在分享Mailper和我个人的学习经历。(注:省去了我作为一个初学者曾经学习过的一些技术(今天明显过时了),如:Delphi/Power builder,也省去了我学过的一些我觉得没意思的技术Lotus Notes/ActiveX/COM/ADO/ATL/.NET ……)