今天使用telnet发现如果远程的主机的端口没有开的情况下,就出现了等待的很长时间的问题,在我的linux的机器测试的结果是要等超过3分钟。有人说是10秒,显然不是。
而telnet的参数列表中根本就没有一个可以指定timeout的时间。
google发现还有一个和telnet功能很类似,但是功能是telnet的超集,我目前喜欢的2点是
- 可以指定time
IT夜班车
今天使用telnet发现如果远程的主机的端口没有开的情况下,就出现了等待的很长时间的问题,在我的linux的机器测试的结果是要等超过3分钟。有人说是10秒,显然不是。
而telnet的参数列表中根本就没有一个可以指定timeout的时间。
google发现还有一个和telnet功能很类似,但是功能是telnet的超集,我目前喜欢的2点是
PPP协议
PPP = Point to Point Protocol
就是点对点协议,其实它确切的说不是一个协议,而是一个协议族
LCP = Link Control Protocol
PAP = PPP Authentication Procotol
MP = PPP Multilink Protcol
2个具象协议
PPPoE = PPP of Ethernet
PPPoA = PPP of ATM
主要用于机器之间通… 更多... “PPP协议”
raknet开源了
今天看新闻发现raknet开源了,真是特大喜讯啊。之前有用过这个库,确实很好用,就是太贵了,上万块钱的license费啊,没想到今天可以免费使用了。本来想自己写一个类似的库,来扩平台的数据交换,然后用在自己的产品中,现在不用了,直接用现成的。
本人去到raknet驻扎的github查看,发现已经开源一个月了。raknet被放在非常知名的开源部署平台githu… 更多... “raknet开源了”
这里介绍大端以及小端字节顺序,以及网络和主机字节顺序
不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序
最常见的有两种:
1. Little endian:将低序字节存储在起始地址
2. Big endian:将高序字节存储在起始地址
LE little-endian
最符合人的思维的字节序
地址低位存储值的低位
地址高位存储值的高位
怎么讲是最符合人的思维的字节序,是因为从人的第一观感来说
低
使用ldd命令发现有时一个程序会依赖gblic的多个版本,
1. 不知道是什么原因造成?
2. 怎么在同一系统下面部署多个GLIBC来满足这样的程序。
版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.
本篇文字旨在编写一个具备基本功能的网络嗅觉器,英文中有对应的词是sniffer,并且已经有一款商业软件名字就是sniffer,当然是收费的。
关于以第三方库来写网络嗅觉器,我会在后续的文章中提到。第三方库主要指的是pcap(linux版本)/WinPcap(windows版本)。
关于网络嗅觉器功能:
我们以linux为开发环境,使用… 更多... “不依赖任何第三方库写一个网络嗅觉器(sniffer)”
ping命令可以用来检测网络中的MTU的大小。但在windows下面和linux下面所使用的参数是不一样的。
其思想是发送一个非默认的大小的数据包,默认是56字节,并且指定不要进行分包。如果网络中传输的时候,需要分包就会通知调用者。
Windows
ping -f -l 1472 www.google.com
选项解释
-f: 表示不要分包
-l: 是小写的L,表示包的大小
Linux
MTU是Maximum Transmission Unit的缩写,中文对应解释为最大传输单元。就是网络中一次可以传输的最大包的大小。
在网络编程的过程中,大家经常会问这个值到底是多少?尤其是使用UDP(数据包方式)传输数据的时候,使用小于等于MTU大小,就可以避免发送出去的数据包被分包,这样避免了因分包导致的数据包的整个包的丢失。以TCP/IP的四层协议来看,MTU指的是那一层的参数呢?
答案是数据链路层… 更多... “MTU解读”
网卡如何发送数据包:
IP报文可以看作一个包。
利用pcap你可以截取你网卡的所有的包,创建你自己的网络嗅觉器(sniffer)
pcap是一个用C写的,基于BSD授权协议的,抓取网络包的工具。pcap代表是的packet capture,就是包截取。它有2个版本,unix-based的操作系统下面的libpcap和windows下面的winpcap。 有了这个包,你可以很轻松的截取你网卡的中所有数据包。像tcpdump, Wireshark, CA Ne… 更多... “使用PCAP创建你的sniffer”