Monthly Archives: January 2008

一个小测试

http://www.myheritage.com/collage

成都也飘雪

清晨、成都又飘起大雪。
一到办公室我就迫不及待的拿出相机,爬到房顶。

雪中的孵化园

栏杆上的雪

西门子手机的辐射值

在手机辐射峰值规定上,欧洲为2.0SAR,美国为1.6SAR,而中国一直没有定论,此前中国卫生部和国家环保总局已经提出1.0SAR为我国手机的标准,但是一直没有成为强制标准。据资料显示,卫生部曾表示只有手机辐射值低于1.0SAR才能保证对人体没有危害。在2005年9月份,来自欧盟7个国家的12个研究小组发布了历时3年才完成的“电磁场对人类细胞的影响”调查,这个研究机构是目前全球最大的手机辐射调查研究机构。据研究发现,如果手机对每公斤人体组织的辐射值大于1.3SAR,就会破坏人体DNA
M55 0.64
C65 0.73
M65 0.88
SK65 0.36
SL65 0.58
CX65 0.59
S65 0.48
C75 0.48
SL75 0.50
M75 0.46
ME75 0.53
CX75 [...]

dhcp option82包解析小记(之二)

接昨天的dhcp option82 包解析小记 (之一)
解析的原理很简单。
接到dhcp包以后,使用指针跳转到option82的value部分的地址,因为dhcp header是定长的,而option是变长的,因此此过程需要使用遍历,方法很多,不管使用什么方法,找到option82后,得到地址,然后使用强之类型转换转为我们预定义好的结构,然后取出我们所需要的值并传给处理函数。
option 82结构 (思科),参考文档:switch 2950 Configuring DHCP Features
struct dhcp_cisco_option82
{
u_int8_t subop1_type; /*sub option 1:type */
u_int8_t subop1_length; /*sub option 1: length*/
u_int8_t circuit_id;
u_int8_t circuit_length;
u_int16_t vlan;
u_int8_t module;
u_int8_t port;
u_int8_t subop21_type; /*sub option 2:type */
u_int8_t subop2_length; /*sub option 2: length*/
u_int8_t remote_id;
u_int8_t remote_length;
u_int8_t mac[6];
};
类型转换和取值:
char switchmac[20] = {0},vlan[8] = {0},port[12] = {0};
if(info->op82rai)
{
struct dhcp_cisco_option82 *op82 = (dhcp_cisco_option82 *)(info->op82rai);
format(op82->mac,switchmac,0 );
sprintf(vlan,”%u”,ntohs(op82->vlan));
sprintf(port,”%u/%u”,op82->module,(op82->port+1));
}
注:info->op82rai 是指向 [...]

dhcp option82包解析小记(之一)

已经忙了将近两个星期的dhcp 包解析,整个过程中option 82包的解析费掉的时间最多,因为我花了很久才抓到这个包,之前的开发过程没有写过日志,option82包的解析,我决定写点东西,一为备忘,二为纪念我的08年阳历年。
option82包是dhcp包option部分的一项,具体内容可以参考rfc3046。
这个包里面包括了交换机、dhcp客户端所在vlan以及端口号 ,这些信息对于某些应用是非常重要的。
本文的重点是如何让交换机启动填充option82。
1、交换机配置(2950)
configure terminal
ip dhcp snooping
ip dhcp snooping vlan 1
ip dhcp snooping information option
以上为交换机全局配置,接着配置dhcp server所连接的接口,这里是2
interface f0/2
设置该接口为信任接口
p dhcp snooping trust
ip dhcp snooping limit rate 1000
end
show running-config
copy running-config startup-config
show ip dhcp snooping
确保 dhcp客户端所连接接口是un trust的,否则交换机不会填充option82.
交换机上配置结束
2、配置dhcpd.
vim /etc/dhcpd.conf
看到内容如下:
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.sample
#

ok,我们来打开/usr/share/doc/dhcp*/dhcpd.conf.sample,内容是:

ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
# — default [...]

使用了feedsky

本站内容已经开始使用feedsky进行内容采集,因此可以访问feed.feedsky.com/laojun 来更加方便的阅读本站内容。