摘要: 当用google搜索IP数据报首部校验和算法的时候,总是看到的是代码,没有看到其过程,于是就有了此文,如有错误请指正。文章省略一点,呵呵IP/ICMP/IGMP/TCP/UDP等协议的校验和算法都是相同的,算法如下:在发送数据时,为了计算数IP据报的校验和。应该按如下步骤:(1)把IP数据报的首部都置为0,包括校验和字段。(2)把首部看成以16位为单位的数字组成,依次进行二进制反码求和。(3)把得到的结果存入校验和字段中。在接收数据时,计算数据报的校验和相对简单,按如下步骤:(1)当接收IP包时,需要对报头进行确认,检查IP头是否有误,算法同上2、3步,然后判断取反的结果是否为0,是则正确,否 阅读全文
posted @ 2011-10-18 21:21 fhefh 阅读(34363) 评论(9) 推荐(5) 编辑
摘要: 今天来公司,发现无法上网,本以为是个别现象,但是过一段时间,几乎所有员工无法上网。可想而知,这是一次大型的网络故障。故障现象:公司所有网络都无法访问外网,但是内网可以ping通与访问。故障排除措施:1.ping公司域服务器(域服务器也为DNS服务器),可以ping通2.ping公司网关(公司的网关为ISA防火墙),有时候可以ping通,有时候无法ping通,掉包率很严重3.长ping公司网关-->ping ip地址 -t,掉包为100%通过检测方法,初步认为ISA网关有问题,于是重启网关服务器重启网关服务器之后,公司用户打开网页极慢,无法登陆QQ、邮箱。检测:1. 短ping网关,平均每 阅读全文
posted @ 2011-10-10 13:52 fhefh 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 文章转载至:http://tech.ccidnet.com/art/2583/20071030/1258885_1.html如果你对SUID、SGID仍有迷惑可以好好参考一下!Copyright by kevintz.由于用户在UNIX下经常会遇到SUID、SGID的概念,而且SUID和SGID涉及到系统安全,所以用户也比较关心这个问题。关于SUID、SGID的问题也经常有人提问,但回答的人一般答得不够详细,加上曾经回答过两个网友的问题,还查了一些资料,决定整理成本文,以供大家参考。限于本人的水平问题,文章中如果有不当之处,请广大网友指正。一、UNIX下关于文件权限的表示方法和解析SUID 是 阅读全文
posted @ 2011-09-20 10:12 fhefh 阅读(64066) 评论(4) 推荐(10) 编辑
摘要: 简而言之,linux系统启动过程如下:1 加载BIOS的硬件信息与进行自检,并依据设置取得第一个可启动设备2 读取并执行第一个启动设备内MBR的Boot Loader即:grub、spfdisk等程序3 依据Boot Loader的设置加载Kernel,Kernel会开始检测硬件与加载驱动程序4 在硬件驱动成功后,Kernel会主动调用init进程,而init会取得run-level信息 PS:执行顺序可以在/etc/inittab中查找5 init执行/etc/rc.d/rc.sysinit文件来准备软件执行的操作环境,如网络、时区6 init执行run-level的各个服务的启动7 in. 阅读全文
posted @ 2011-09-18 20:50 fhefh 阅读(735) 评论(0) 推荐(0) 编辑
摘要: 一、常见问题1.安装xampp4linux后,只能本机(http://localhost)访问,局域网内其他机器无法访问解答:在/opt/lampp/etc中修改httpd.conf,将Listen 80修改为Listen 本机ip地址:80 本机ip地址使用ifconfig 查看2.我按照1修改之后,局域网内的机器还是无法访问解答:将你的防火墙关闭即可,在终端下输入:chkconfig iptables off3.我无法远程连接mysql解答:在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改 阅读全文
posted @ 2011-09-18 10:37 fhefh 阅读(15455) 评论(0) 推荐(1) 编辑
摘要: <?php function total($dirname, &$dirnum, &$filenum){ $dir=opendir($dirname); readdir($dir)."<br>"; readdir($dir)."<br>"; while($filename=readdir($dir)){ echo $newfile=$dirname."/".$filename; if(is_dir($newfile)){ total($newfile, $dirnum, $filenum) 阅读全文
posted @ 2011-07-16 15:28 fhefh 阅读(613) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://lzhweo.blog.163.com/blog/static/59315758200891812624882/routeros防火墙功能非常灵活。routeros防火墙属于包过滤防火墙,你可以定义一系列的规则过滤掉发往routeros、从routeros发出、通过routeros转发的数据包。在routeros防火墙中定义了三个防火墙(过滤)链(即input、forward、output),你可以在这三个链当中定义你自己的规则。其中input意思是指发往routeros自己的数据(也就是目的ip是routeros接口中的一个ip地址);output意思是指从router 阅读全文
posted @ 2011-05-11 16:04 fhefh 阅读(4006) 评论(0) 推荐(0) 编辑
摘要: 安装过linux系统的朋友,有过这样的经历,安装Grub的时候,把硬盘的MBR修改了,但是删除LINUX的时候,却连原来的WINDOWS系统也启动不了,怎么办?写入MBR的方法,有两种比较简单第1种方法:就是将Windows的安装盘放入计算机以后,重启计算机,进入Windows安装程序,随后,进入恢复控制台,输入命令fixmbr即可。第2种方法是为没有Windows安装盘的朋友准备的,就是使用MBRFix工具进行修复。MBRFix工具修复MBR很方便,先进入cmd命令窗口,然后进入mbrfix工具所在的目录(用cd命令),然后输入命令MbrFix/drive0fixmbr,再确认一下即可。重启 阅读全文
posted @ 2011-05-01 18:43 fhefh 阅读(20771) 评论(1) 推荐(1) 编辑
摘要: 转载自:http://bbs.chinaunix.net/viewthread.php?tid=691456awk用法:awk ' pattern {action} 'awk的环境变量变量描述$n当前记录的第n个字段,字段间由FS分隔。$0完整的输入记录。ARGC命令行参数的数目。ARGIND命令行中当前文件的位置(从0开始算)。ARGV包含命令行参数的数组。CONVFMT数字转换格式(默认值为%.6g)ENVIRON环境变量关联数组。ERRNO最后一个系统错误的描述。FIELDWIDTHS字段宽度列表(用空格键分隔)。FILENAME当前文件名。FNR同NR,但相对于当前文件 阅读全文
posted @ 2011-04-28 20:45 fhefh 阅读(1655) 评论(0) 推荐(0) 编辑
摘要: declare或typeset内建命令(它们是完全相同的)可以用来限定变量的属性.这是在某些编程语言中使用的定义类型不严格的方式。命令declare是bash版本2之后才有的。命令typeset也可以在ksh脚本中运行。declare/typeset 选项-r只读 1declare -r var1(declare -r var1与readonly var1作用相同)这大致和C的const限定词相同.一个试图改变只读变量值的操作将会引起错误信息而失败.-i整数 1declare -i number 2# 脚本余下的部分会把"number"当作整数看待. 3 4number=3 阅读全文
posted @ 2011-04-22 13:55 fhefh 阅读(53547) 评论(4) 推荐(1) 编辑