2003年左右,学习了一下CMPP,做了一个简单的CONNECT、发送、保持链接的C#代码,由于公司申请不到移动网关,也就搁浅了。 最近得知公司申请了联通网关,不禁又见猎心喜,通过经理弄到了共享,基本安装CMPP部分代码的模式改造了一个简单的登录,由于网关登录和IP绑定,所以还没有成功,不过收到回应 01:错误代码 非法登录,如登录名、口令出错、登录名与口令不符等。 对照看了一下两者的协议,发现联通的相对比较简单一些,聊且记录一下: 消息头的格式 联通的 8.3 消息头格式(Message Header) 移动的 我就不明白,为什么联通的流水号序列号居然要12个字节 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF,微软的计算器最多让我粘贴 FFFFFFFFFFFFFFFF 换算出来是 18446744073709551615,我不知道这个数字多大了。这样的话我估计这个软件死亡了这流水号还不一定能够用完。 呵呵,是我的错!!序列号分成三部分,每部分为一个32位整数,第一部分表示命令源节点的编号,第二部分表示命令产生的日期和时间(网关系统中的任何命令的保存时间都不应该超过一年),格式为十进制的mmddhhmmss,比如11月20日20时32分25秒产生的命令,其第二部分为十进制1120203225;第三部分由0开始,循环进位,直到进位满了之后再清零,重新开始计数。接收方在返回应答时,应答的序列号必须和相对应的命令的序列号相同。 字段 长度(字节) 类型 说明 字段名 字节数 属性 描述 移动的是有用MD5散序的,而联通的好像就是明文。如果联通是通过IP认证,不知道IP伪造是不是可以骗过?好像不可以,有人说:伪造IP只能用在UDP上,而且应为IP包前有目的机与发送机的MAC地址,故不可能真正隐藏发送机. 字体:大 中 小 |
![]() | 永久地址 http://www.shengfang.org/blog/p/sgipcmppdiff1msghead.php |
![]() | 引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1120048862 |
2005年6月29日20:41星期三 [Info资料]





